Jenkins を使ってRailsプロジェクトでゴニョゴニョするまでの道のり その4

目標

  1. Github上からRailsプロジェクト取ってくる。
  2. ビルド(bundle install/update とか、rake db:migrate)する。
  3. メトリクス計測する。(reek, roodi)
  4. RSpec実行
  5. テストレポート・カバレッジレポート生成
  6. ビルド結果を通知

メトリクス計測する。(reek, roodi)

1. Gemfile を編集して、メトリクス計測用のGemを入れるます。

group :test do
  gem 'ZenTest', '= 4.8.3'
  gem 'roodi', '~> 2.2.0'
  gem 'reek', '~> 1.2.13'
  gem 'flay'
  gem 'flog'
end

2. Rakeタスクを作る

参考 http://d.hatena.ne.jp/ytakamiya/20100313/1268480448
参考のURLの通りやるます。

3. ジョブの設定から、ビルドスクリプトにコマンド追加

export http_proxy='http://${proxy_user}:${proxy_pass}@${proxy_host}:${proxy_port}/'
bundle install --path vendor/bundler
rake db:migrate
rake quality

4. ハマった所

roodi の 2.2.x 系と、reek の1.3.x 系が同居できない。
依存するGem ruby_parser の必要バージョンに矛盾がでるみたい。

5. 諦めた所

flog は入れてはみたけども、Ruby1.9系でパースできないっていうエラーがでてるみたいで諦めた
flay は全体のスコアは 100 です。とはみたいにでるけど、どこ直していいのかJenkins上みてもログから読み取れないので使うのやめた。

6. これからやりたいこと

Shinya131/reek_viewer · GitHubなるものがあるので、それ使ってJenkins上でReekの結果を表示できるようにしたい。