Jenkins勉強会に行ってきた
2015.05.30に行われた「Jenkins勉強会 第1回 Jenkins初期構築と運用について」に行ってきた。
jenkins-ug-okinawa.doorkeeper.jp
今更感満載だが、じっくり触れていなかったので
ゴニョゴニョできて良かった。
実際の導入話も聴けたし、(主に懇親会でw)情報交換もできたので、楽しいひと時を過ごせたなと。
次回はSeleniumをがっつり回せるようにしたい。
イベント自体の流れなどは、こちらのエントリの方が詳しいです。
以下、自分メモ。
途中までしかできてない & ほぼSelenium・・
13:00 〜 とあるプロジェクトにおけるJenkinsの導入実績
- 精神論より仕組み
- 週1でレビューしようではなく、JenkinsでOKじゃないとだめという風にする
- 実際のケース
- リリース手順が多くて大変
- リリースに丸二日・・
- ハインリッヒの法則
- 1:29:300
- Jenkins導入後 -> 0.5日に短縮
- 導入するのはどのぐらいかかったんだろう?
- ステージングが全く同じ環境があったので、3営業日で検証終了
- 導入するのはどのぐらいかかったんだろう?
- リリース手順が多くて大変
- 自動化出来る作業は計算機に委任する
- Jenkinsをアップデートする動機は?
- 新しいPluginが対応してないとか
- Jenkinsのバックアップはディレクトリごとtarで固めてとか、PluginとかでOK
- グリーとかはJenkins用にリソース結構割いてる
- Jenkinsが落ちても大丈夫な構成は要検討
オススメ書籍
- Jenkins実践入門
- Jenkins(オライリー)
13:30〜 Jenkins初期構築ハンズオン
cf. 今更始めるJenkins勉強会 チートシート一覧 - Qiita
もくもく
Jenkins + Selenium
cf. CentOS6.4 + Selenium の環境作成 - Qiita
cf. Ruby - CentOS上にてRSpec+Turnip+Capybara+Selenium Webdriver+Headlessでスクリーンショットを撮るまで - Qiita
$ sudo yum install xorg-x11-server-Xvfb $ sudo yum install ImageMagick $ sudo yum groupinstall "Japanese Support" $ curl -L https://get.rvm.io | bash -s stable $ source /home/vagrant/.rvm/scripts/rvm $ rvm install 1.9.3 $ mkdir selenium $ cd selenium $ bundle init $ vi Gemfile
Gemfile
# A sample Gemfile source "https://rubygems.org" # gem "rails" gem "headless" gem "selenium-webdriver" gem "rspec"
$ bundle install $ vi ~/.bash_profile # 追加 export DISPLAY=:99 $ source ~/.bash_profile # テスト $ Xvfb :99 -screen 0 1024x768x24 & $ firefox &
Audio関係のエラーがでるけど、使わないので無視
cf. ImageMagickとlibreofficeを使ったOffice->PDF->PNG変換について(コマンドライン編) - Qiita
The XKEYBOARD keymap compiler (xkbcomp) reports: > Internal error: Could not resolve keysym XF86AudioMicMute Errors from xkbcomp are not fatal to the X server
Selenium試す
cf. Linux CUI環境でruby + selenium-webdriver - Qiita
エラー・・
nable to obtain stable firefox connection in 60 seconds (127.0.0.1:7055) (Selenium::WebDriver::Error::WebDriverError)
firefoxバージョンアップ?
$ firefox -v Mozilla Firefox 38.0.1 $ gem list selenium-webdriver (2.45.0)
Googleのキャプチャ取ってみる
cf. XvfbとFirefoxを使ってWebサイトのSSを撮る - 私の昆布
$ Xvfb :99 -screen 0 1024x768x24 & $ firefox http://google.com/ & $ import -window root test.png $ ls test.png
firefoxのたたき方間違ってたorz
cf. Xvfb+Firefoxで"Error: No running window found"となってハマりかけた話 - Qiita
# NG $ Xvfb :1 & $ DISPLAY=:1 firefox -remote "openURL(http://www.google.co.jp/)" & # OK $ Xvfb :1 & $ firefox http://google.com/ &
Rubyのエラーorz
$ ruby test.rb test.rb:33:in `block in <main>': undefined method `pp' for main:Object (NoMethodError) from /home/vagrant/.rvm/gems/ruby-1.9.3-p551/gems/nokogiri-1.6.6.2/lib/nokogiri/xml/node_set.rb:187:in `block in each' from /home/vagrant/.rvm/gems/ruby-1.9.3-p551/gems/nokogiri-1.6.6.2/lib/nokogiri/xml/node_set.rb:186:in `upto' from /home/vagrant/.rvm/gems/ruby-1.9.3-p551/gems/nokogiri-1.6.6.2/lib/nokogiri/xml/node_set.rb:186:in `each' from test.rb:32:in `<main>'
ppコマンドが無いみたいなので、pに変更すると・・
$ ruby test.rb "http://ja.wikipedia.org/wiki/FIFA%E3%83%AF%E3%83%BC%E3%83%AB%E3%83%89%E3%82%AB%E3%83%83%E3%83%97" "http://www.jfa.jp/nadeshikojapan/worldcup2015/" "http://www.jfa.jp/nadeshikojapan/worldcup2015/schedule_result/" "http://members.jcom.home.ne.jp/wcp/" "http://blog.livedoor.jp/sekaiminzoku/archives/44234655.html" "http://www.asahi.com/worldcup/" "http://matome.naver.jp/topic/1LvDt" "http://www.soccer-king.jp/news/wc" "http://www.fujitv.co.jp/sports/vabonet/wcv/"
キタワァ・゚゚・:.。..。.:・゚(n‘∀‘)η゚・:.。..。.:・゚゚・ !!!!!
15:30 〜 Jenkins運用についてのブレインストーミング
お題
- 開発で導入したいこと
- クラウドでJenkinsを導入するメリット
- 社内でJenkinsを導入するには
- 導入障壁って何だろう?
- 次回以降やっていきたいこと
その他: 雑感
- インストールは -y オプションあってもいいかな
- 軽いBGMあってもいいかも
- Jenkinsで軽いテスト(?)みたいなものをやってもいいかな
- 放り出された感がしたかなと(^^;)
- 次回は「#jenkinsug」を事前告知してみよう