HudsonをJenkinsにupgradeしてみた。
下調べ
Jenkins公式サイトのドキュメントに詳しく載っている。
-
Upgrading from Hudson to Jenkins
https://wiki.jenkins-ci.org/display/JENKINS/Upgrading+from+Hudson+to+JenkinsWhen you do “apt-get install jenkins”, it will uninstall the hudson package, transfer your /var/lib/hudson to /var/lib/jenkins.
-
Jenkins Debian packages
http://pkg.jenkins-ci.org/debian/
Jenkinsは公式のDebianサポートが手厚いので助かる。ただし不具合報告も あったらしいので注意。バックアップを取っておくこと。
sudo cp -pR /var/lib/hudson /var/lib/hudson.bak
セットアップ
wget http://pkg.jenkins-ci.org/debian/binary/jenkins_X.Y_all.deb
sudo dpkg -i jenkins_X.Y_all.deb
w3m 'http://example.org:8080/' &
Debianパッケージをインストールすると自動的に移行作業をやってくれて、 /var/lib/hudsonは/var/lib/jenkinsになり、Unix user/groupも設定される。
ファイル名や設定の記述にhudsonの名前が一部残るが、そのままでちゃんと動 くので気にしなくてよいらしい(むしろ変にいじると動かなくなる)。
Jenkinsが起動して操作可能になるまで数分かかるので気長に待つ。
後始末
しばらく使ってみて不具合がなければバックアップを削除。
sudo rm -fr /var/lib/hudson.bak
key
apt-get updateのたびにkeyがないとか言われるので追加。
wget -q -O - http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key \
| sudo apt-key add -
備考
-
必ずバックアップを取っておくこと。はまったら
sudo -u jenkins diff -u /var/lib/{hudson.bak,jenkins}/config.xml
とかすればたいてい解決する。
-
custom workspaceを設定しているプロジェクトでは、パスに含まれるhudson をjenkinsに直す必要があった。とはいえ、今回手動で変更する必要があった のはここだけ。
-
ログインできないときは、$JENKINS_HOME/config.xmlのuseSecurityをtrueか らfalseに変更してセキュリティなしで再起動して、適当に設定し直す。
- Disable security
https://wiki.jenkins-ci.org/display/JENKINS/Disable+security
- Disable security
-
remove時に–purgeしなければ、/etc/apt/sources.list.d/jenkins.list あたりのファイルは残るので注意。
Other Articles
- 13 Oct 2017: 『テスト駆動開発』
- 19 Oct 2016: 『新装版 達人プログラマー 職人から名匠への道』
- 19 Aug 2016: 『プログラミングElixir』
- 20 Oct 2015: Migrating from git-media to git-lfs
- 04 Oct 2015: Git Large File Storageクライアントのインストール
- 12 Aug 2015: isbn.rb
- 22 Apr 2015: 「なるのか、なすのか?」(To Be Or To Do?)