1

ビルド ツールとして Phing を使用して Jenkins のセットアップを開始したところです。以前に Jenkins を使用したことがありますが、Phing は初めてです。

Mercurial リポジトリのセットアップと Phing Build ステップを持つ Jenkins でプロジェクトをセットアップしています。build.xml ファイルは、単に既存のファイルをアーカイブし、それらを削除して、新しいファイルをリポジトリからコピーします。

ターミナルから ping を実行しましたが、すべてが計画どおりに機能します。ただし、Jenkins 内から実行すると、コンソール出力に次のように表示されます。

[workspace] $ /usr/local/pear/bin/phing -buildfile /Users/Shared/Jenkins/Home/jobs/Project/workspace/build.xml "-Dwebroot=/Volumes/Websites/Project/ -Dcheckoutroot=/Users/Shared/Jenkins/Home/jobs/Project/workspace -Drevision=5" -logger phing.listener.DefaultLogger

/usr/local/pear/bin/phing: fork: Resource temporarily unavailable
Build step 'Invoke Phing targets' marked build as failure

私の最初の考えは、パーミッションに関連していたのですが、手動で Phing を実行したのと同じユーザーとして Jenkins を実行するように変更しましたが、それでも同じ問題が発生しました。

何が問題を引き起こしているのかについて考えている人はいますか? Cygwinに関係のないこのエラーに関連するものはどこにも見つかりません...

システムは、Jenkins 1.518 および Phing 2.5.1 を搭載した OS X 10.7.5 で実行されています。

build.xml ファイルは次のようになります。

<?xml version="1.0" encoding="UTF-8"?>
<project name="Project" default="dist">
    <property name="revision" value="old" />
    <property name="webroot" value="/Volumes/Websites/${phing.project.name}" />
    <property name="checkoutroot" value="./" />

    <target name="clean">
        <echo msg="Backing up old site to ${phing.project.name}-${revision}..." />
        <tar destfile="${webroot}/../${phing.project.name}-${revision}.tar.gz" basedir="${webroot}" compression="gzip" />

        <echo msg="Deleting site from ${webroot}..." />
        <delete>
            <fileset dir="${webroot}" />
        </delete>
    </target>

    <target name="dist" depends="clean">
        <echo msg="Copying files to website at ${webroot}..." />

        <copy todir="${webroot}">
            <fileset dir="${checkoutroot}/Website">
                <exclude name="**/.hg/**" />
            </fileset>
        </copy>
    </target>
</project>
4

1 に答える 1

0

Jenkins 内の Phing 構成セクションにあるすべてのパスの詳細を削除することで、この問題を解決することができました。

Phingのインストールは間違いなく1つしかないため、これらの詳細がないと機能する理由について、これはまったく意味がありません。

ただし、Jenkins プロジェクト構成の Phing セクションで何も指定しないことで、デフォルト パス、デフォルト ビルド ターゲットなどが選択され、これは現在問題なく機能しています。

于 2013-08-07T16:09:33.340 に答える