普段GitとJenkinsを使っていて,開発中でもテスト落ちたらすぐ気付けるように,開発中のブランチもJenkinsに登録するようにしてる.
これまでは,このブランチが最近活発っぽいと思ったらJenkinsのウェブのUIから追加してたけど,ブランチたくさんあって,毎回手で追加するのめんどうだった.
コマンド1つでJenkinsにブランチを登録できるようにした.
使い方
いま見てるブランチをhttp://jenkins.example.com/job/Project1というジョブに追加
jenkins_register_branch.rb http://jenkins.example.com/job/Project1
stagingブランチをhttp://jenkins.example.com/job/Project1というジョブに追加
jenkins_register_branch.rb http://jenkins.example.com/job/Project1 staging
すでに追加されていたら何もしない,重複されないようになってる.
config.xmlというURLをGETするとジョブの設定のXMLをもらえて,同じURLに書き換えたXMLをPOSTするとジョブの設定を変えられる.けっこうワイルドな感じがする.
APIはJSONがクールみたいなイメージがあったけど,XMLはXPath使えて便利だった.こういう名前があったらくださいみたいに書けて,手っ取り早い感じがする.
ついでに,指定したURLのビルドを実行するコマンドも作った.こっちは大したことはしてない.
最初はgem jenkinsを使ったほうが簡単かと思ってたけど,なんかまともに動かなかったから,普通にAPI使って書いた.中でAPI呼ぶだけのライブラリあまり意味ない感じがする.
追記
ブランチにorigin/**って書くと全ブランチテストできる.
hitode909の日記