持續集成 Jenkins +Gitlab + SSH 自動發布 HTML 代碼


一、整體流程

二、Jenkins 配置

2.1、首先安裝插件

  • Gitlab Hook Plugin
  • GitLab Plugin
  • Publish Over SSH

2.2、配置目標服務器

系統管理 ---> 系統設置 ---> Publish over SSH

如果不想使用密鑰認證登陸,也可以使用 賬戶密碼登陸。

2.3、創建 job

我們創建一個自由風格的 job,配置好 git 源,這里也可以配置無密鑰登陸,我這里使用賬戶密碼。

創建觸發器,用於自動構建,我們需要把其中的 url 添加到我們的 gitlab 上面,提交代碼,可以觸發構建,稍后演示。

填寫構建內容。

2.4、配置 gitlab 觸發

gitlab 的 webhooks url 是根據 jenkins 構建權限連接設置的,如果必須登錄才能構建就必須獲取 jenkins 的用戶名及token,可以在jenkins用戶--->設置里面查看到 ,url格式:

http://<username>:<api-token>@<jenkins-server>/

首先去生成 token。

然后我的觸發URL如下:

http://user:11016e608eae8623253ec9113ca8e345b3@jenkins.xxxxxx.net/jenkins/project/banana.xxxxxx.net

最后測試一下,看看是不是正確。

如果沒有添加用戶信息認證,可能會報下面的錯誤:

三、改進

既然我們是純靜態的文件,不需要構建,為啥不直接傳遞命令,在服務器上面 git 的呢,這樣速度更快,之前還需要把代碼從源倉庫拉下來,然后整個傳到相應的目錄下面,過程比較慢。

我們調整 Job 去掉源,然后把構建項目修改為如下:

如果大家使用 http 協議的 git 拉取代碼,會每次讓輸入賬號密碼,我們可以使用下面命令對認證信息進行保存:

git config --global credential.helper store


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM