如何呼叫Jenkins的API實現構建

2021-09-03 01:45:28 字數 1899 閱讀 2497

我呼叫的方式是curl 前提是本地已搭建好jenkins,並且已經建好了要構建的任務,(當然也可以自己在呼叫的時候新增引數,)因為一些原因不樂意點滑鼠實現構建, 所以就寫了乙個指令碼,通過呼叫jenkins的api實現構建功能,

就一條關鍵命令

#user : 使用者名稱,password: 密碼 (建立jenkins時的使用者名稱密碼)

# ip ,port: jenkins所在主機的ip 以及埠

# project : 專案名字下面時我的指令碼:

#!/bin/sh

jenkins_path=""

#需要構建的專案名稱(jenkins稱為job)

#jobpage這個位址可以直接訪問到你的job路徑

#把這個專案的頁面資訊存到build.tmp檔案中

curl -s -o /root/build.tmp $

#對頁面資訊進行提取最後一次構建序號

lastbuild=$(grep -oe "last build \(\#[0-9]*" \/root\/build.tmp | grep -oe "[0-9]*")

#接下來要構建序號

newbuild=$[lastbuild+1]

#觸發構建(-u後面引數說明:chenwx為jenkins上的登入名,123456為密碼)

curl -u zhangsan:123456 -s -d build -d delay=0sec $build?delay=0sec

echo -n "building..."

sleep 5

#訪問最新構建結果資訊放到build.tmp2檔案中

#http://ip:port/job/test/buildhistory/ajax --header n:$ num存放想檢視具體某次的構建結果資訊

#下面為檢視最新構建(剛剛觸發的構建)的結果。

curl -o build.tmp2 -s --header n:$ $buildhistory/ajax

#判斷結果檔案中是否包含 in progress(排隊中)|pending(構建中),是的話每三秒去重新獲取結果進行判斷

while grep -oe "in progress|pending" build.tmp2;

do echo -n "."

sleep 3

curl -o build.tmp2 -s --header n:$ $buildhistory/ajax

done

echo

#包含success單詞為構建成功

if grep -oe "success" build.tmp2 ;then

echo "build success"

#包含unstable單詞為構建有警告但是構建成功

elif grep -oe "unstable" build.tmp2 ;then

echo "build success, but is a unstable build"

#包含failed或者

aborted單詞為構建失敗

elif grep -qe "failed|aborted" build.tmp2 ;then

echo "build failed"

echo "#open link: $$/console see details"

rm -rf build.tmp*

exit 1

fi#執行過程中產生的檔案刪除

rm -rf build.tmp*

#下面部署你已經構建好的包 或者時檔案。

python 操作jenkins 常用api

繼續尋找,然後我在jenkins官網上找到了python jenkins api,仔細閱讀後發現,它幾乎涵蓋了大部分jenkins的操作,大大方便了我們在後台進行對jenkins的一些列操作。python jenkins官網 python jenkins doc 下面簡單介紹下如何使用python ...

Python如何呼叫新浪api介面的問題

第一步 按這個做就行 api測試工具開啟 先搭建好python開發環境,具體參考 這個介面的介紹是 如下 coding utf 8 from weibo import apiclient import webbrowser import mysqldb callback url callback u...

閘道器2 閘道器如何呼叫API

api 官方解釋 應用程式設計介面。首先,它是乙個介面,其次它基於應用,並且它是可程式設計的。1 設計 方法名 入參 出參 名字 可以解釋介面功能,見文知意 入參 不要公開不合理的引數 出參 錯誤碼明確 2 構建 編寫內部邏輯 注意,進入方法先判參 3 文件 介面的注釋和介面文件寫清楚 4 測試 測...