Rails開発でJenkinsを使ってみる

どうやら社内ではJenkinsというCIツールを使ってようですので、使うまでの設定をメモしておきます。
CIツールとは継続的インテグレーションツールのことらしく長い時間のかかるビルドやテストを自動で行ってくれるソフトです。
本来はJava用のソフトみたいですが、プラグインを導入することでRailsでも使えます。

RailsでSpecとカバレッジレポートを出すまでの例を書いてみます

プロジェクトの作成

rails new Jenkins

Gemfileを編集して以下を追記

 gem 'rspec-rails'
 gem 'simplecov'
 gem 'simplecov-rcov'

インストールと適当なテストを生成

bundle install
rails generate scaffold Project name
rails generate rspec:install
rake db:migrate

spec/spec_helper.rbを編集して先頭に以下を追記

require 'simplecov'
require 'simplecov-rcov'
SimpleCov.formatter = SimpleCov::Formatter::RcovFormatter
SimpleCov.start 'rails'

ここまでできたら実行してみます

rake spec

coverage/rcovにカバレッジレポートのHTMLが吐き出されていれば成功です
あとはこれをJenkinsに実行させます

公式サイトから「Java Web Archive (.war)」をダウンロードしてきます

起動します

java -jar jenkins.war

ヘルプは上記コマンドの後に–helpをつけると見れます

実行後はブラウザから8080にアクセスします

http://(サーバーのアドレス):8080/

Jenkinsの管理→プラグインの管理へ

Jenkins Rake plugin,Jenkins ruby metrics pluginをインストールします

新規ジョブの作成→フリースタイル・プロジェクトのビルド

以下のようにビルドとビルド後の処理を設定します

ビルドを実行し、ビルドが終わると
こんな感じでビルド結果とカバレッジレポートが参照できるようになります


他にもリポジトリに更新があったら自動的にビルドを走らせたりできますので、是非使ってみてください

Ruby on RailsによるWEBシステム開発、Android/iPhoneアプリ開発、電子書籍配信のことならお任せください この記事を書いた人と働こう! Ruby on Rails の開発なら実績豊富なBPS

この記事の著者

yamasita

東京電機大学工学部→3年間某SIerにて銀行システムの開発→bpsに入社

yamasitaの書いた記事

インフラ
現場で使うansible

2014年12月25日

インフラ
検証環境の作り方

2014年08月14日

週刊Railsウォッチ

インフラ

Rubyスタイルガイドを読む

BigBinary記事より

ActiveSupport探訪シリーズ