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

目標

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

Github上からRailsプロジェクト取ってくる。

1. Git/Github関連のプラグインインストール

Jenkinsの管理 > プラグインの管理 > 利用可能 タブから次のプラグインを探してインストールする。

  • Jenkins GIT plugin
  • GitHub plugin
  • GitHub API Plugin
2. ジョブの設定

ソースコード管理システム のとこからGitを選択して、
git://github.com/${github_user_name}/${repo_name}.git みたいに、GithubのURLを入れる。

あと今回は masterブランチだけ対象にするので "Branches to build" に masterを設定

f:id:shmztko:20130208151239p:plain

ビルドトリガ から SCMをポーリング を選択して5分間隔でGithubを見に行くようにする。

f:id:shmztko:20130208151247p:plain

※本当は、Github の hookを使用して、GithubにPushされたタイミングでビルドが走るようにしたかった。ただ、Github -> Jenkinsサーバのアクセスができず*1 hook を使用できなかったので、結果、5分お気にGithubをポーリングしてビルドするような設定に落ち着いた。

*1:Jenkinsサーバは社内LAN上にある