0
恋するJenkins 2012.11.22 ナカオヒロシ
自己紹介• ナカオヒロシ• フリーランスのプログラマ• 最近は RoR とか WebGL とか• 美容室の立ちあげとか
みなさん恋してますか?
超越している        5%   してる             30% してない  65%恋してますか?
ボクは恋してます
このお方、Jenkinsに
と、いうことで• 今日はJenkinsについて、お話します。
CI/Jenkinsってなーに?
CI• 継続的インテグレーション Coutinuous Integration• ビルド、テストなどを継続的に実行• 問題の早期発見 品質の維持
Jenkins• CIツール• GUIでラクラク• プラグインが豊富なので、 色々なシーンで活用!
活用シーン• 自動ビルドでの品質維持• デプロイの自動化• 夜間バッチ処理 実行結果も画面で確認 ジョブのチェーンも可能
Installing Jenkins!!
Macでインスコ# Homebrew でインストールできます$ brew install jenkins# Jenkins のバージョン、起動方法などを確認$ brew info jenkinsjenkins: stable 1.486, HEAD
起動してみる# brew info jenkins コマンドで起動方法を確認できます。# 手動起動する場合(今回はコレで)$ java -jar /usr/local/Cellar/jenkins/1.490/libexec/jenkins.w...
localhost:8080
Mac 以外• http://jenkins-ci.org• インストールパッケージも置いてるよ (コッチ使ったほうがラク?)
Rails + Github + Jenkins!!
やること• Git に Rails アプリがあるよ (今回はGithubにサンプルを作成)• Jenkins で clone して、 RSpec のテストを実行!• テストに失敗したら、 メールでお知らせ!
今回の前提• Git インストール済み• Ruby(RVM, rb-env), sqlite3 などの Rails実行に必要な環境も• Rails アプリに RSpec で テストが書かれている
まずは準備
プラグイン• Jenkins には色々なプラグインが あります• プロジェクトに必要なプラグインを インストールします
プラグインの管理
今回使うもの• Git• ruby-runtime, ruby metrics, Rake,  (Rvm or rb-env)• インストール後は、  要再起動
システムの設定
今回使うもの• Git, Git plugin  GitのPATHとか設定とか• Rake  Rvm を使っている場合はココに PATH• E-mail 通知  (Gmail とかお好みで)
プロジェクトの追加
プロジェクト• トップ画面から「新規ジョブ作成」• ジョブ名は適当に• 「フリースタイル・プロジェクトのビ ルド」を選択
新規ジョブ作成
プロジェクトの設定• トップ画面から「新規ジョブ作成」• ジョブ名は適当に• 「フリースタイル・プロジェクトのビ ルド」を選択
ジョブの設定
ジョブの設定#1• ソースコード管理システム • Git  ↓サンプル  git@github.com:hiroshinakao/  jenkins_sandbox.git  ブランチは develop
ジョブの設定#2• ビルドトリガ • 「定期的に実行」 • スケジュール(cron書式  30分毎に実行する場合は  */30 * * * *
ジョブの設定#3• ビルド環境 • rbenv  rubyのバージョンを指定 • rvm   #{バージョン}@#{gemset名}   1.9.3-p286@jenkins_sandbox
ジョブの設定#4• ビルド • ビルド手順の追加  「シェルの実行」
ジョブの設定#4bundle install --without=productionbundle exec rake db:migrate:resetbundle exec rake spec# 必要なgemをインスコして# スキーマを作って...
ジョブの設定#5• ビルド後の処理 • Publish Rcov report   ディレクトリ: ./coverage/rcov • E-mail 通知   宛先は適当に
ジョブの設定#6• 「保存」をクリックして準備終了!!
実行してみよー
手動実行• 「ビルドの実行」をクリック!! ジョブが開始されます• 「コンソール出力」で 実行中の出力を確認できます
ジョブ画面
コンソール出力
実行結果• 青いアイコンが表示 => 成功!!• 赤いアイコンが表示 => 失敗…orz => メール送信されます
カバレッジの確認
カバレッジの確認• 「Rcov report」をクリック!! カバレッジが表形式で表示されます
前提• RSpec のテストがあること• rcov 形式でテスト結果を出力設定 simplecov, simplecov-rcov• 詳しくはgitの履歴見て
カバレッジ表
カバレッジ詳細
Jenkins + Rails• Rails Best Practices• DRY 検査 => コピペの検出• RDoc生成• Capistrano でデプロイ• まぁ、色々できますw
もっと詳しく
jenkins-ci.org
本があるよ
Q and A
素敵な恋をしてください
おしまい
Upcoming SlideShare
Loading in...5
×

恋するJenkins

1,784

Published on

2012/11/22 勉強会資料

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,784
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
6
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Transcript of "恋するJenkins"

  1. 1. 恋するJenkins 2012.11.22 ナカオヒロシ
  2. 2. 自己紹介• ナカオヒロシ• フリーランスのプログラマ• 最近は RoR とか WebGL とか• 美容室の立ちあげとか
  3. 3. みなさん恋してますか?
  4. 4. 超越している 5% してる 30% してない 65%恋してますか?
  5. 5. ボクは恋してます
  6. 6. このお方、Jenkinsに
  7. 7. と、いうことで• 今日はJenkinsについて、お話します。
  8. 8. CI/Jenkinsってなーに?
  9. 9. CI• 継続的インテグレーション Coutinuous Integration• ビルド、テストなどを継続的に実行• 問題の早期発見 品質の維持
  10. 10. Jenkins• CIツール• GUIでラクラク• プラグインが豊富なので、 色々なシーンで活用!
  11. 11. 活用シーン• 自動ビルドでの品質維持• デプロイの自動化• 夜間バッチ処理 実行結果も画面で確認 ジョブのチェーンも可能
  12. 12. Installing Jenkins!!
  13. 13. Macでインスコ# Homebrew でインストールできます$ brew install jenkins# Jenkins のバージョン、起動方法などを確認$ brew info jenkinsjenkins: stable 1.486, HEAD
  14. 14. 起動してみる# brew info jenkins コマンドで起動方法を確認できます。# 手動起動する場合(今回はコレで)$ java -jar /usr/local/Cellar/jenkins/1.490/libexec/jenkins.war# Mac起動時に自動起動させる場合$ mkdir -p /Library/LaunchAgents$ ln -nfs /usr/local/Cellar/jenkins/1.490/homebrew.mxcl.jenkins.plist /Library/LaunchAgents/$ launchctl load -w /Library/LaunchAgents/homebrew.mxcl.jenkins.plist# 常に起動させるならサーバでやったほうがいいっすね。
  15. 15. localhost:8080
  16. 16. Mac 以外• http://jenkins-ci.org• インストールパッケージも置いてるよ (コッチ使ったほうがラク?)
  17. 17. Rails + Github + Jenkins!!
  18. 18. やること• Git に Rails アプリがあるよ (今回はGithubにサンプルを作成)• Jenkins で clone して、 RSpec のテストを実行!• テストに失敗したら、 メールでお知らせ!
  19. 19. 今回の前提• Git インストール済み• Ruby(RVM, rb-env), sqlite3 などの Rails実行に必要な環境も• Rails アプリに RSpec で テストが書かれている
  20. 20. まずは準備
  21. 21. プラグイン• Jenkins には色々なプラグインが あります• プロジェクトに必要なプラグインを インストールします
  22. 22. プラグインの管理
  23. 23. 今回使うもの• Git• ruby-runtime, ruby metrics, Rake, (Rvm or rb-env)• インストール後は、 要再起動
  24. 24. システムの設定
  25. 25. 今回使うもの• Git, Git plugin GitのPATHとか設定とか• Rake Rvm を使っている場合はココに PATH• E-mail 通知 (Gmail とかお好みで)
  26. 26. プロジェクトの追加
  27. 27. プロジェクト• トップ画面から「新規ジョブ作成」• ジョブ名は適当に• 「フリースタイル・プロジェクトのビ ルド」を選択
  28. 28. 新規ジョブ作成
  29. 29. プロジェクトの設定• トップ画面から「新規ジョブ作成」• ジョブ名は適当に• 「フリースタイル・プロジェクトのビ ルド」を選択
  30. 30. ジョブの設定
  31. 31. ジョブの設定#1• ソースコード管理システム • Git ↓サンプル git@github.com:hiroshinakao/ jenkins_sandbox.git ブランチは develop
  32. 32. ジョブの設定#2• ビルドトリガ • 「定期的に実行」 • スケジュール(cron書式 30分毎に実行する場合は */30 * * * *
  33. 33. ジョブの設定#3• ビルド環境 • rbenv rubyのバージョンを指定 • rvm #{バージョン}@#{gemset名} 1.9.3-p286@jenkins_sandbox
  34. 34. ジョブの設定#4• ビルド • ビルド手順の追加 「シェルの実行」
  35. 35. ジョブの設定#4bundle install --without=productionbundle exec rake db:migrate:resetbundle exec rake spec# 必要なgemをインスコして# スキーマを作って# テストを実行している# だけだね
  36. 36. ジョブの設定#5• ビルド後の処理 • Publish Rcov report ディレクトリ: ./coverage/rcov • E-mail 通知 宛先は適当に
  37. 37. ジョブの設定#6• 「保存」をクリックして準備終了!!
  38. 38. 実行してみよー
  39. 39. 手動実行• 「ビルドの実行」をクリック!! ジョブが開始されます• 「コンソール出力」で 実行中の出力を確認できます
  40. 40. ジョブ画面
  41. 41. コンソール出力
  42. 42. 実行結果• 青いアイコンが表示 => 成功!!• 赤いアイコンが表示 => 失敗…orz => メール送信されます
  43. 43. カバレッジの確認
  44. 44. カバレッジの確認• 「Rcov report」をクリック!! カバレッジが表形式で表示されます
  45. 45. 前提• RSpec のテストがあること• rcov 形式でテスト結果を出力設定 simplecov, simplecov-rcov• 詳しくはgitの履歴見て
  46. 46. カバレッジ表
  47. 47. カバレッジ詳細
  48. 48. Jenkins + Rails• Rails Best Practices• DRY 検査 => コピペの検出• RDoc生成• Capistrano でデプロイ• まぁ、色々できますw
  49. 49. もっと詳しく
  50. 50. jenkins-ci.org
  51. 51. 本があるよ
  52. 52. Q and A
  53. 53. 素敵な恋をしてください
  54. 54. おしまい
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×