簡體   English   中英

如何在合並的 bitbucket 拉取請求上觸發詹金斯構建

[英]How to trigger jenkins build upon bitbucket pull request merged

我查看了所有其他相關的問題和答案,沒有找到任何可靠的東西,因此我打開一個新問題來尋求你的幫助,我整天都在努力,我能得到的任何幫助都是高度贊賞。

這是我的環境:

  • 安裝了 git 和 bitbucket 插件的自托管 jenkins 服務器(Jenkins 版本 1.651.3)。
  • https://bitbucket.org (我沒有自托管的 bitbucket 服務器)

我想做的事:觸發詹金斯根據拉取請求構建從功能分支合並到主分支。

我嘗試過的不同設置組合:

    • jenkins:“在將更改推送到 BitBucket 時構建”已選中。
    • bitbucket:網絡掛鈎觸發器:已選中“存儲庫推送”。

結果:提交到 master 分支后成功觸發了構建,但這不是我想要的,但至少我知道我的 jenkins 服務器和 bitbucket 之間的通信很好。

    • jenkins:“在將更改推送到 BitBucket 時構建”已選中。
    • bitbucket: web hooks trigger: 'Repository push' 被選中,並且 Pull Request - 'Merged' 被選中。

結果:jenkins 不響應拉取請求合並操作。 我認為它會起作用,因為我在 web hooks 觸發器設置中檢查了 Pull Requst - 'Merged',我確實看到請求是由 bitbucket 發送到我的 jenkins 服務器的,它從我的 jenkins 服務器返回了 200 個狀態代碼,但是,仍然沒有任何反應。

    • jenkins:“在將更改推送到 BitBucket 時構建”已選中。 除此之外,我還安裝了另一個名為 bitbucket-pullrequest-builder-plugin 的插件,並按照說明進行了配置。
    • bitbucket: web hooks trigger: 'Repository push' 被選中,並且 Pull Request - 'Merged' 被選中。

結果:在 bitbucket-pullrequest-builder-plugin 的幫助下,確實在創建拉取請求時觸發了構建。 但是詹金斯服務器不斷地輪詢bitbucket存儲庫,我沒有找到阻止這種情況的方法,也沒有辦法在合並時觸發構建......

我聽說有人說你需要在 bitbucket 服務器上安裝一個 post-hook 插件才能做我想做的事情,但問題是我沒有托管 bitbucket ......

根據一些研究,截至 2017 年 11 月 12 日,您可以有幾個選擇:

  • 使用支持拉取請求觸發器的通用post webhooks 插件 從 jenkins 使用通用 webhooks 插件來獲取它,然后可能從 jenkins 做一個輔助觸發器。

  • 將 bitbucket 服務器和 webhooks 升級到 jenkins 插件。 服務器 4.13 不適用於后來的 webhooks 到 jenkins 插件。 該插件的付費版本可能是您的最佳選擇。

  • 或者試試帶有“plan banches”功能的竹子。

當您配置 GIT - push、commit... 等鈎子時,請務必檢查 JENKINS git 選擇,並將 BRANCH 設置為檢查(** 指定所有分支),最重要的是,

使用 localtunnel.me 或類似工具將您的 JENKINS 設置為在線,否則將無法正常工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM