設定前半
プロジェクト名を入れる
古いビルドの破棄にチェック
Log Rotation を選んで保存日数を30日に
ソースコード管理でGitを選択
Repository URL
にはアルミニウムのリポジトリのパスを入れる。
例)/var/opt/alminium/git/myprojectブランチのところは
*/develop
かな・・。ビルドトリガは「定期的に実行」でスケジュールが
H 1 * * 1-5
ビルド設定
まず、ソナー
cd ${WORKSPACE}
/usr/local/bin/sonar-runner-2.3/bin/sonar-runner
リポジトリからパス ${WORKSPACE}
に展開される。
例)/var/lib/jenkins/jobs/PHP/workspace
直下にsonar-project.properties
が置かれている。その場所でsonar-runnerを走らせる、という意味。
つまりソナーランナーもあらかじめこのサーバーにインストールしてある
次、コードスニッファー
cd ${WORKSPACE} && /usr/bin/phpcs --report=checkstyle --report-checkstyle=${WORKSPACE}/reports/checkstyle.xml --standard=CakePHP \
--extensions=php --ignore=app/Vendor/*,app/Test/*,app/Plugin/*,app/Config/* ./app || id
workspace直下のreportsというディレクトリ内にcheckstyle.xml
という結果のファイルを出力せよ、という意味。
つまりworkspace直下にreportsというディレクトリをあらかじめ作っておく。
これもあらかじめphpcsがサーバーにインストールしてあるイメージ。
phpunitの実施
cd ${WORKSPACE}/app && Console/cake test app All \
--stderr \
--log-junit ${WORKSPACE}/reports/junit.xml \
--coverage-html ${WORKSPACE}/reports/clover_html/ \
--coverage-clover ${WORKSPACE}/reports/clover.xml
こちらも結果をreports以下に出力している。
Console/cake test app All
ここはcakeのコマンドそのまま。DB接続がなくても動くのかどうかは不明。
ビルド後の処理
「Checkstyle警告の集計」を選んで設定。
ファイルで上記のreports/checkstyle.xml
を設定。workspaceからの相対パスでいい同じくCloverPHPカバレッジレポート集計
reports/clover.xml
CloverHTMLレポートを公開するにチェック
reports/clover_html/
JUnitテスト結果の集計にreports/junit.xml