cheka.jp 超不定期で更新する写真達。お口直しにどうぞ。

JenkinsでPHPの継続的インテグレーションを体験する 重複チェック編

PHPCPDを利用してコードの重複をチェックすることが可能です。
結果をxmlに出力してjenkinsに連動させることで、他のジョブと連動したり自動化したりする事が可能になります。

ジョブの作成

インストールしたPHPCPDとDRY Pluginプラグイン連携させる為にジョブを作成する必要があります。
さっそくジョブを登録してみましょう。

新規登録

ジョブ名をphpcpdで新規登録します。
タイプは「フリースタイル・プロジェクトのビルド」を選択して下さい。

新規ジョブ作成

ビルド手順の追加でphpcpdを起動するスクリプトを追加します。

cd ${WORKSPACE} && sudo phpcpd --names *.php --log-pmd ./_report/cpd.xml --exclude assets/*,commands/*,config/*,runtime/*,tests/*,vendor/*,views/*,web/* . || id
ビルド手順の追加

ビルド完了後に./_report/cpd.xmlが出力されるので集計します。

_report/cpd.xml
ビルド後の処理の追加

ジョブの実行

設定が完了したらジョブを実行してみましょう。
ジョブのメニューからビルドを実行して下さい。

ビルド実行

実行中のプログレッシバーが表示されます。
しばらく待ちましょう。

実行中

レポートを確認しながらリファクタリングの参考にしてみてください。

ビルド結果

Add a Comment

メールアドレスが公開されることはありません。