天天看點

Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建

接口自動化持續內建

  • 本地接口持續內建
    • 一、下載下傳Jenkins用戶端
    • 二、登入jenkins建立項目
    • 三、配置robot檔案
    • 四、手動建構
    • 五、優化:設定定時觸發
    • 六、擴充:加入釘釘機器人發送消息腳本
  • 遠端倉庫接口持續內建
    • 一、 将本地與遠端倉庫建立連接配接
    • 二、Jenkins安裝git插件(預設已安裝git)
    • 三、配置git
    • 四、jenkins倉庫與gitlab倉庫連接配接

本地接口持續內建

首先,來講一下本地RF+Jenkins+釘釘的持續內建,因為這個配置稍微簡單。

一、下載下傳Jenkins用戶端

https://www.cnblogs.com/longpizi/p/10690781.html

根據上面一步步安裝

二、登入jenkins建立項目

Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建
Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建

三、配置robot檔案

Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建

call是bat中的指令,調用robot.bat,讓robot.bat執行robot檔案

exit 0 注意看這是“0”,不是括号。表示正常運作結束就退出程式

Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建

四、手動建構

點選Bulid Now 建構,運作接口腳本

Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建

還可以通過open report.html檢視輸出的報告

五、優化:設定定時觸發

上面這個是手動建構,也可以設定自動觸發建構。

具體通過什麼形式觸發,可以自行設定,代碼觸發,定時觸發等

我用一個定時觸發作為一個執行個體吧

Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建

我這個表示每天9點和17點觸發建構一次。(具體定時觸發文法可以到baidu.com)

六、擴充:加入釘釘機器人發送消息腳本

然後通過我寫的腳本,發送通知到釘釘群,回報測試結果

Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建

最後一步設定,設定門檻值

Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建
Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建

遠端倉庫接口持續內建

一、 将本地與遠端倉庫建立連接配接

下載下傳Git : https://git-scm.com/

并配置連接配接好倉庫,推robot檔案到gitlab

遇到的問題:

代碼怎麼推都是報request 500

解決:

要生成公鑰與gitlab連接配接

ssh-keygen -t rsa -C “郵箱”

一路回車

Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建

将公鑰複制到gitlab對應的倉庫中

生成的公鑰路徑如下

Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建

從setting到ssh密鑰

Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建

以上就解決500的問題了

問題2:
Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建
出現錯誤的主要原因是github中的README.md檔案不在本地代碼目錄中

解決辦法:

可以通過如下指令進行代碼合并

git pull --rebase origin master
           

至此,終于将本地代碼推到遠端倉庫了

Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建

二、Jenkins安裝git插件(預設已安裝git)

Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建

查詢一下是否存在git插件

Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建

若不存在就在此下載下傳:(因為我已經安裝過了,是以在可選插件找不到)

Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建

三、配置git

進入配置中

Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建

将git路徑放到git配置中,點選儲存

Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建
Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建

四、jenkins倉庫與gitlab倉庫連接配接

進入配置中

Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建

git的URL是放robot腳本的路徑

Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建
Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建
Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建
Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建
Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建
Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建
Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建

之後的操作與本地運作建構的操作一緻,設定觸發建構…釘釘通知…等

到這,基本也結束了。

最後還有一個問題是:

生成的測試報告打開報錯

如下錯誤

Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建
Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建

解決辦法:

Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建

往下拉到最後

Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建
Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建

在jenkins中執行Groovy腳本執行:(系統管理-腳本指令行執行如下腳本)

System.setProperty("hudson.model.DirectoryBrowserSupport.CSP","sandbox allow-scripts; default-src 'none'; img-src 'self' data: ; style-src 'self' 'unsafe-inline' data: ; script-src 'self' 'unsafe-inline' 'unsafe-eval' ;")

再去檢視測試報告,完美收場。

😁

Jenkins+RF+Git+釘釘通知 接口自動化持續內建本地接口持續內建遠端倉庫接口持續內建

這才我認為所謂完整的自動化,随時随地即可觸發運作。