「Jenkins Pipeline」- 發送 HTTP 請求 @20210422


問題描述

在 Jenkins Pipeline 中,雖然可以使用 Java 類庫或者 Groovy 類庫發送 HTTP 請求,但是這不是 Jenkins 推薦的做法。

該筆記將記錄:在 Jenkins Pipelie 中,如何發送 HTTP 請求。

解決辦法

使用 Http Request 插件

插件地址:https://plugins.jenkins.io/http_request
步驟手冊:https://www.jenkins.io/doc/pipeline/steps/http_request/
倉庫地址:https://github.com/jenkinsci/http-request-plugin

發送普通 HTTP 請求

def response = httpRequest(
    url: 'http://localhost:8080/jenkins/api/json?pretty=true', // 請求地址
    quiet: true, // 不顯示請求日志
    validResponseCodes: "100:399,403" // 設置可接受的返回碼,其他狀態碼將返回異常
)

println(response.status)
println(response.content)

使用 Basic Auth 認證

第一步、創建用戶及密碼憑證

Credentials => Add Credentials => Username with password

第二步、在請求中引用憑證

def response = httpRequest(
    url: 'http://localhost:8080/jenkins/api/json?pretty=true',
    authentication: "<credentialsId>",
)

相關文章

「Jenkins Pipeline」- 常見問題處理
「Jenkins Pipeline」- 在首次掃描后,禁止自動構建
「Jenkins Pipeline」- 發送郵件
「Jenkins Pipeline」- 接受構建通知,並拉取代碼
「Jenkins Pipeline」- 配置多版本NodeJS構建環境
「Jenkins Pipeline」- 構建Docker鏡像
「Jenkins Pipeline」- 放棄當前構建

參考文獻

Pipeline Steps Reference/HTTP Request Plugin
validResponseCodes cannot be empty or null
How to pass a range of validResponseCodes for Jenkins pipeline httpRequest method
Basic Auth with Jenkins http-request-plugin



免責聲明!

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



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