簡體   English   中英

詹金斯管道同時建立所有分支機構

[英]Jenkins Pipeline building all branches simultaneously

我設置了一個簡單的Jenkinsfile,它僅回顯了幾步。 我在Bitbucket(git)上建立了一個新的倉庫,並在兩個分支上分別稱為master和develop。

當我提交一些要掌握的東西時,兩個分支都將結帳並建立jenkins。 在開發分支上的行為相同。

一旦提交了master分支,是否可以只限制master在Jenkins中構建? 發展類似的行為?

我認為您可以使用一個臨時文本文件來保存每個分支的上次成功構建SHA($ LAST_SUCCESSFUL_BUILD_SHA)。 然后,當來自倉庫的新提交時,我們將檢查該提交來自哪個分支。

CURRENT_SHA=$(git rev-parse HEAD)

if [ $FORCE_REBUILD = true ] || [ $CURRENT_SHA != $LAST_SUCCESSFUL_BUILD_SHA ]; then
    echo "New commits available OR it was forced to build."
else 
    echo "Already up-to-date. Skip build."
    curl -v -X POST --data "description=no changes, skip." ${JENKINS_BUILD_URL}submitDescription --user <username>:<password>
    curl -v -X POST ${BUILD_URL}stop --user <username>:<password>
    echo "Waiting for abort to take effect :D"
fi

如果新提交來自另一個分支,那么最好使用Jenkins開放API跳過構建。

我已將其應用於我的自由式工作,但尚未嘗試使用Jenkinsfile。

暫無
暫無

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

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