忙しい人のためのまとめ
v1とv2で設定ファイルに互換性がないので注意すべし
経緯
この辺
GitLab Merge Request Builder plugin さん、v1.2.4からv2.0.0にアップデートしたのにリリースノート皆無かよ。。。
— sue445 (@sue445) 2016, 1月 3
https://t.co/4rcTTHjlb8 のPRをななめ読みしてアップデートしたら設定吹っ飛んだ。。。設定ファイルをdailyでバックアップとっておいて正解だった
— sue445 (@sue445) 2016, 1月 3
早く寝るつもりだったが怒り駆動でissue投げるに至った https://t.co/a21g6BEHO8
— sue445 (@sue445) 2016, 1月 3
本家にissue投げたんですが中の人からの反応はありません。
本家から回答出てからブログを公開しようと思ったけどなかなか反応がないので先にブログを公開します
僕がissue投げた後に中の人がコミットをpushしてるから気づいてないはずないんだけどなぁ。。。
v1とv2で設定の互換性がない理由
上記issueにも書いてますが、インスタンス変数をリネームしてるのが原因です
本人は軽いリファクタリングのつもりで _projectPath
を projectPath
にリネームしてるんだろうけど、Jenkinsはインスタンス変数を全部シリアライズしてxmlファイルで保存してるので、何も考えずにインスタンス変数を変えたりしたらプラグインアップデート直後に設定が全部吹っ飛びます(;´Д`)
やるのはいいんだけどせめてどっかに注意書きくらい書いてほしかった、というのが上記issueです。
あ、アップデートせずにv2.0.0からインストールする分には全く問題ないです
アップデート方法
アップデート前には Jenkins backup script でバックアップをとるなり、 JobConfigHistory Plugin から人力で設定を復旧する必要があります
v2.0.0の目玉機能
v2.0.0はcommit status APIに対応してるのでMR上にJenkinsのビルドの状態が出るという素晴らしい機能があるので使ってる人は早くアップデートした方がいいです