Jenkins API介紹
Jenkins 提供了遠(yuǎn)程訪問 API。目前它有三種格式:
-
XML
-
JSON
-
Python
遠(yuǎn)程訪問 API 形式為"…/api/"
例如, Jenkins 安裝位于https://ci.jenkins.io,則訪問https://ci.jenkins.io/api/將僅顯示可用的頂級 API 功能 – 主要是Jenkins 實例的已配置作業(yè)的列表 。
Jenkins API 可用于執(zhí)行以下操作:
-
從 Jenkins 檢索信息以進(jìn)行編程使用。
-
觸發(fā)新的構(gòu)建
-
創(chuàng)建/復(fù)制作業(yè)
提交作業(yè)
不帶參數(shù)的作業(yè)
只需要執(zhí)行 HTTP POST JENKINS_URL/job/JOBNAME/build。
帶參數(shù)的作業(yè)
例如 - 包含“字符串參數(shù)”:
curl JENKINS_URL/job/JOB_NAME/buildWithParameters \
--user USER:TOKEN \
--data id=123 --data verbosity=high
另一個包含“文件參數(shù)”的例子 - :
curl JENKINS_URL/job/JOB_NAME/buildWithParameters \
--user USER:PASSWORD \
--form FILE_LOCATION_AS_SET_IN_JENKINS=@PATH_TO_FILE
在此示例中,符號“@”很重要。另外,文件的路徑是絕對路徑。為了使此命令起作用,您需要將 Jenkins 作業(yè)配置為采用文件參數(shù),并將Jenkins 作業(yè)配置中的文件位置–form字段與選項中的鍵相匹配。
API 令牌
早期版本的 Jenkins 要求指定真實密碼,目前版本不建議這樣做,因為存在泄露密碼的風(fēng)險,建議使用API 令牌
API 令牌可在個人配置頁面中找到。在每個頁面的右上角單擊您的姓名,然后單擊“配置”以查看您的 API 令牌。文章來源:http://www.zghlxwxcb.cn/news/detail-725473.html
Shell調(diào)用代碼
實現(xiàn)調(diào)用API構(gòu)建,且成功后釘釘通知文章來源地址http://www.zghlxwxcb.cn/news/detail-725473.html
webhook=https://xxx.dingding.com
project=test-app
app_env=test
jenkins_url=http://xxxx.com/job/${project}/buildWithParameters?type=${app_env}
http_status_code=`curl -o /dev/null -s -w %{http_code} -X POST ${jenkins_url} --user xxxx:xxxxx`
if [[ $http_status_code -eq 000 ]] || [[ $http_status_code -ge 304 ]];then
echo "http_status_code is" $http_status_code
exit 1
else
echo "service status ok\n"$http_content
curl "${webhook}" -H 'Content-Type: application/json' -d "
{
\"msgtype\": \"markdown\",
\"markdown\": {
\"title\":\"Jenkins通知\",
\"text\": \"#### 項目:${project}\n> 環(huán)境:${app_env}\n\n> 開始執(zhí)行構(gòu)建\n \n\"
},
}
到了這里,關(guān)于【Jenkins】調(diào)用API構(gòu)建并釘釘通知的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!