すごい cron ? - Jenkins 試した

3,960 views
3,756 views

Published on

jenkins をローカルマシンにインストールして、 cron の代わりに利用してみたという話。
おまけは jenkins の rbenv plugin と ruby metrics plugin の話

https://github.com/hiroshimarb/hiroshimarb.github.com/wiki/2013%E5%B9%B47%E6%9C%88%E3%81%AE%E6%B4%BB%E5%8B%95

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

No Downloads
Views
Total views
3,960
On SlideShare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
11
Comments
0
Likes
13
Embeds 0
No embeds

No notes for slide

すごい cron ? - Jenkins 試した

  1. 1. すごい cron ? Jenkins を試した 2013-07-06 広島Ruby勉強会 #032
  2. 2. cron の代わりに jenkins を使うことにしてみた
  3. 3. cron の代わりに jenkins を使うことにしてみた そろそろJenkins力を上げたいし
  4. 4. cron って何? •決まった時間に •コンピュータに仕事をさせる
  5. 5. Jenkins って何? •継続的インテグレーションを行うための 支援ツール •ビルド -> テスト実行 -> デプロイ •全体の流れを自動化 •失敗したら通知
  6. 6. Jenkins •こんな時にジョブが動く •コミットした時 •毎日0時 のような決めた時間に
  7. 7. Cron の代わりにできる
  8. 8. Mac の cron の問題 •スリープ中の実行がどうなってるのかよ くわからない
  9. 9. とりあえず良い点 •いつ実行されたかわかりやすい •失敗したかどうかわかりやすい •失敗した時に再実行が楽 •定時処理以外にも コミットをきっかけ にできる
  10. 10. とりあえず良い点 •ジョブ終了後に別のジョブを開始できる •同時に実行できるジョブを制限できる •実行結果との関連付けされる
  11. 11. まだ試せてないけど •ジョブの分散が簡単にできるらしい •ジョブの実行を外部に任せられる •ローカルマシンでの実行が苦しくなっ たら外に
  12. 12. 起きてる問題点 •スリープ中に •毎10分に行うジョブが •1時間に1回しか走らない •遅延する •1分程度の ネットワーク通信が失敗す る
  13. 13. スリープ中 •よく失敗するので •先に書いた利点が意外と聞く •遅延は Mac のシステム環境設定で •特定時刻にスリープを解除することで なんとかなりそう •ただし、1日1回
  14. 14. 実際に試してること •パッケージの更新 •eix-sync •emerge -uD world •rails プロジェクトのテスト実行 •結果を残しておきたい
  15. 15. パッケージのアップデート •おおむね毎日やる •勝手にやって欲しい •vcs-head 利用してるのも自動化したい
  16. 16. ジョブ一覧
  17. 17. 実行結果
  18. 18. ジョブの連携
  19. 19. 毎時0分に実行
  20. 20. スリープ中も動いてる
  21. 21. セットアップ関連 •ログインユーザで実行したい •jenkins の実行ユーザを変更した •その代わり セキュリティ設定大事
  22. 22. 詳しい設定方法は そのうち blog で
  23. 23. おまけ •jenkins の ruby関連のpluginについて
  24. 24. 試したもの •rbenv plugin •ruby metrics plugin
  25. 25. rbenv •jenkinsの作業ディレクトリに新規にイ ンストールしてしまう •ディスクがないので •使わなかった •環境変数を設定して自分でインストー ルしたものを利用
  26. 26. ruby metrics •様々な情報を表示しつつ、統計がとれる •テスト結果 •TODO や FIXME といったマーク •コードの量 •テストのカバレッジ
  27. 27. テスト結果 •JUnitテスト結果の集計 •JUnitのテスト結果と同じ出力を用意 すれば使える •ci_reporter •失敗したテストなども見れる
  28. 28. テスト結果
  29. 29. テスト結果
  30. 30. TODO や FIXME といったマーク •Publish Rails Notes report •rake notes の出力を使う •コード中にいれた TODO の場所がわかる
  31. 31. Annotaions
  32. 32. コード量 •Publih Rails stats reports •rake stats の結果を利用 •コードの量やテストに対するコード量 の情報を表示
  33. 33. テストのカバレッジ •Publish Rcov report •テストを実行した際に •テストされてないコードがわかる •simplecov の実行結果を利用 •simpelcov-rcov を使う jenkinsが読め る出力を作成できる
  34. 34. 詳しいやり方は Blog にでも
  35. 35. ご清聴ありがとうございます

×