在生產環境中因為代碼倉庫遷移導致Jenkins設置的觸發器失效,在調試的過程gitlab觸發事件響應狀態碼為200,但是響應消息一直為{"status":"ok","data":{..."triggered":false,"url":""}}}} 。
此篇文章的描述主要針對該問題,且面向對Jenkins和Gitlab有一定經驗的小伙伴。
文章標簽:
Jenkins Optional filter{"status":"ok","data":{..."triggered":false,"url":""}}}}
截圖配置說明
debbuild-.*為分支名稱


關鍵的部分在於value filter和Optional filter 下的 Expression 的組合
- 兩者需要能夠組合成完整的分支名稱,即
refs/heads/branch 否則在gitlab的觸發事件返回詳情中,就會出現如下消息:
{"status":"ok","data":{..."triggered":false,"url":""}}}}"triggered":false表示觸發構建失敗,false為true是表示成功。
jenkins
-
的
console output
-
輸出有描述:
-
debbuild-.*為分支名稱 -
使用如上寫法的輸出:

-
使用完整寫法
^(refs/heads/debbuild-.*)$的輸出(ref,sourceBranch都為變量):
針對該問題已經解決完畢,其他相關配置不再贅述。
