ビルド ツールとして 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>