January 6, 2013

FuelPHPとGitLabとJenkinsで継続的インテグレーションする雛形を考えてみた 2

2013/01/06 GitHubに最新のメモを追加しました。
https://github.com/mp-php/fuel-myapp/blob/master/jenkins.md

--

以下の続きです。

FuelPHPとGitLabとJenkinsで継続的インテグレーションする雛形を考えてみた
http://madroom-project.blogspot.jp/2013/01/fuelphpgitlabjenkins.html

Template for Jenkins Jobs for PHP Projects ( http://jenkins-php.org/ ) を参考にして、Checkstyle(PHP_CodeSniffer)/JDepend(PHP_Depend)/Plot(phploc)を追加してみました。内容を把握しきれていないものもありますが、とりあえず入れておくことにします。尚、phpcsコマンド、pdependコマンド、phplocコマンドは依存関係から既にインストールされていました。

build.xmlについては、以下を参考にして頂ければと思います。
https://github.com/mp-php/fuel-myapp/blob/master/build.xml
(相変わらずコマンド直書きですみません。。。)


▼Checkstyle(PHP_CodeSniffer)
(1) PHP_CodeSniffer Fuel PHP Standardをインストール
$ cd ~/tmp
$ wget https://github.com/eviweb/fuelphp-phpcs/archive/master.zip
$ unzip master.zip
$ cd fuelphp-phpcs-master/Standards/
$ sudo mv FuelPHP/ /usr/local/php/latest/lib/php/PHP/CodeSniffer/Standards/
$ phpcs -i
The installed coding standards are PEAR, FuelPHP, Zend, PSR2, MySource, PHPCS, PSR1 and Squiz
"FuelPHP"が表示されていればOKと思います。

(2) phpcsのコマンド例
phpcs --standard=FuelPHP --report-checkstyle=checkstyle.xml fuel/app/

(3) Jenkinsの設定
Checkstyle Pluginをインストールして、ジョブの設定からpost-build actionにPublish Checkstyle analysis resultsを追加。
Checkstyle resultsに出力ファイルを指定。

(4) build.xmlを編集してビルドして結果の確認
ジョブの画面に"Checkstyle Warnings"が表示されます。


▼JDepend(PHP_Depend)
(1) pdependのコマンド例
pdepend --jdepend-xml=jdepend.xml fuel/app/

(2) Jenkinsの設定
JDepend Pluginをインストールして、ジョブの設定からpost-build actionにReport JDependを追加。
Pre-generated JDepend Fileに出力ファイルを指定。

(3) build.xmlを編集してビルドして結果の確認
ビルドの画面に"JDepend"が表示されます。


▼Plot(phploc)
(1) phplocのコマンド例
phploc --log-csv plot.csv fuel/app/

(2) Jenkinsの設定
Plot Pluginをインストールして、ジョブの設定からpost-build actionにPlot build dataを追加。
Plot groupに任意なグループ名を入力。
Data series fileに出力ファイル名を指定。
Load data from csv fileを選択。

(3) build.xmlを編集してビルドして結果の確認
ジョブの画面に"Plots"が表示されます。

No comments:

Post a Comment