說(shuō)明:從一個(gè)Jenkins服務(wù)器A將現(xiàn)有job遷移到另外一個(gè)Jenkins服務(wù)器B。
方法:You?can?copy?or?move?build?jobs?between?instances?of?projects?simply?enough?by?copying?or?moving?the
build?job?directories?to?the?new?Jenkins?instance.
具體步驟如下:
1、首先確認(rèn)Jenkins的job存放目錄。
以管理員賬號(hào)登錄Jenkins,點(diǎn)擊“系統(tǒng)管理/系統(tǒng)設(shè)置”,確認(rèn)jenkins工作目錄。
本例中Jenkins A的工作目錄為/home/.jenkins,Jenkins B的工作目錄為/root/.jenkins。
2、接下來(lái),遷移jobs目錄。
登錄Jenkins A服務(wù)器,進(jìn)入工作目錄,壓縮jobs目錄,并復(fù)制到B:
cd/home/.jenkins
tar-czvf jobs.tar.gz jobs
scp-f jobs.tar root@BIP:/root/.jenkins/
3、接著,在B上解壓jobs.tar到j(luò)obs目錄,并重啟Jenkins服務(wù)器B。注意:重啟不是必須的。
1)通過(guò)重啟hudson來(lái)加載新遷移的job:
cd/root/.jenkins
tar-zxvf jobs.tar
本例通過(guò)重啟tomcat服務(wù)來(lái)重啟Jenkins,其他通過(guò)jar運(yùn)行Jenkins的重啟進(jìn)程即可。
cd/opt/tomcat/tomcat7/bin/
./shutdown.sh
./startup.sh
2)不需要重啟:
just?go?to?the?Manage?Jenkins?screen?and?click?on?Reload?Configuration?From
Disk.?This?will?load?the?new?jobs?and?make?them?immediately?visible?on?the?Jenkins?dashboard.
點(diǎn)擊上述紅框中的“讀取設(shè)置”按鈕后,顯示如下信息:
4、最后,驗(yàn)證B上是否已經(jīng)加載了遷移進(jìn)來(lái)的新job,同時(shí)需要對(duì)job進(jìn)行配置。
1)登錄到Jenkins B后,發(fā)現(xiàn)A上的jobs已經(jīng)正確遷移進(jìn)來(lái)。如下:
5、注意事項(xiàng)
1)修改job的配置:
由于之前job設(shè)置是在Jenkins A的某個(gè)節(jié)點(diǎn)上執(zhí)行,所以如果想讓它在Jenkins B的某個(gè)節(jié)點(diǎn)上執(zhí)行,則需要檢查job的配置“Restrict where this project can be run”,設(shè)置job運(yùn)行的節(jié)點(diǎn)。
2)插件:如果Jenkins A上安裝了插件,而B(niǎo)沒(méi)有,則遷移過(guò)來(lái)的任務(wù)可能也需要安裝A上的插件。
There?are?a?few?gotchas,?however.?If?you?are?migrating?your?jobs?to?a?brand?new?Jenkins?configuration,
remember?to?install,?or?migrate,?the?plugins?from?your?original?server.?The?plugins?can?be?found?in
thepluginsdirectory,?so?you?can?simply?copy?everything?from?this?directory?to?the?corresponding
directory?in?your?new?instance.