及 Jenkins 和 gitlab 集成]
一、代碼流水線管理
Pipeline 名詞顧名思義就是流水線的意思,因?yàn)楣究赡軙?huì)有很多項(xiàng)目。
如果使用 jenkins 構(gòu)建完成后,開(kāi)發(fā)構(gòu)建項(xiàng)目需要一項(xiàng)一項(xiàng)點(diǎn)擊,比較麻煩。
所以出現(xiàn) pipeline 名詞。
代碼質(zhì)量檢查完畢之后,我們需要將代碼部署到測(cè)試環(huán)境上去,進(jìn)行自動(dòng)
化測(cè)試
88 gitlab-ctl start
89 /etc/init.d/jenkins start
新建部署代碼項(xiàng)目
點(diǎn)擊新建
sudo ssh 192.168.1.50 source /root/test.sh
溫馨提示: 執(zhí)行命令主要涉及的是權(quán)限問(wèn)題
測(cè)試機(jī)創(chuàng)建測(cè)試腳本并給予執(zhí)行權(quán)限
1.50
[root@localhost ~]# vim test.sh
#!/bin/bash
echo hello world
[root@localhost ~]# chmod x test.sh
[root@localhost ~]# source test.sh
hello world
Jenkins服務(wù)器做免密登陸ssh 1.40
我們做無(wú)秘鑰有 2 種分案:
1、使用 jenkins 用戶將秘鑰分發(fā)給 192.168.1.50 上
2、使用 root 用戶將秘鑰分發(fā)給 192.168.1.50 上,如果使用 root 用戶還要進(jìn)行 visudo 授權(quán)。因?yàn)?Web 上默認(rèn)執(zhí)行命令的用戶是 jenkins
(1)使用 jenkins 用戶將秘鑰分發(fā)給 192.168.1.50 上
[root@localhost ~]# ssh-copy-id root@192.168.1.50 復(fù)制用戶密鑰給測(cè)試機(jī)
[root@localhost ~]# ssh 192.168.1.50
[root@localhost ~]# ssh 192.168.1.50 source /root/test.sh
Jenkins上測(cè)試
(2)使用 root 用戶將秘鑰分發(fā)給 192.168.1.50 上,如果使用 root 用戶還要進(jìn)行 visudo 授權(quán)。因?yàn)?Web 上默認(rèn)執(zhí)行命令的用戶是 jenkins
授權(quán) jenkins 用戶,使用 visudo 或者編輯配置文件/etc/sudoers
[root@localhost ~]# vim /etc/sudoers
jenkins ALL=(ALL) NOPASSWD:/usr/bin/ssh #93
#jenkins 授權(quán)所有主機(jī),不需要密碼執(zhí)行 ssh。切記不要授權(quán) ALL
Jenkins測(cè)試構(gòu)建
現(xiàn)在我們要將代碼質(zhì)量管理和測(cè)試部署連接起來(lái)。
這時(shí)候就用到了 git 鉤子
我們需要安裝 jenkins 插件 parameterized
安裝插件
再次點(diǎn)擊項(xiàng)目設(shè)置的時(shí)候就會(huì)出現(xiàn) Trigger parameterized build on other
projects
最后點(diǎn)擊保存,點(diǎn)擊構(gòu)建。我們查看效果
、
現(xiàn)在可以看到他們兩個(gè)的構(gòu)建數(shù)是一起增長(zhǎng)的
下載 pipeline。這樣只需要構(gòu)建一個(gè)項(xiàng)目,就會(huì)幫我們完成所有相關(guān)項(xiàng)目 (剛剛已經(jīng)裝完了)
我們點(diǎn)擊首頁(yè) 號(hào),新建一個(gè)試圖
然后保存
pipeline 視圖如下:
點(diǎn)擊 Run
這樣就先代碼質(zhì)量進(jìn)行管理,然后就開(kāi)始部署了
構(gòu)建成功后:測(cè)試一下
實(shí)驗(yàn)完畢
更多關(guān)于云服務(wù)器,域名注冊(cè),虛擬主機(jī)的問(wèn)題,請(qǐng)?jiān)L問(wèn)西部數(shù)碼官網(wǎng):youyuetrip.com