2016-12-19 56 views
1

我正在使用Jenkins管道來使用GitHub組織插件來構建Pull請求分支。如何檢查是否從拉請求觸發管道

我可以建立它們,但我想避免一些步驟(如發佈工件)。由於在構建嘗試之前將PR分支合併到目標中,因此檢查git的當前分支會爲我提供PR的目標。

我該如何檢查構建是從PR發起還是從常規分支構建?

+0

PRs與常規分支有不同的envs。另外你可以檢查當前目錄。它的名字是PR,如果它是PR – Amityo

+0

所以我假設運行'sh'set''可能會給你一些指標.. – StephenKing

回答

3

至少在詹金斯2.16 env.BRANCH_NAME給源分支不是目標分支。你可以這樣做:

if (env.BRANCH_NAME == "master") { 
    sh "./publish.sh" 
} 

其他包膜增值經銷商,可能是有用的是CHANGE_*變量。但是,我找不到任何有關這些文件的文件,以便將來可能會改變。

CHANGE_AUTHOR='me' 
CHANGE_ID='6' 
CHANGE_TARGET='master' 
CHANGE_TITLE='Update README.md' 
CHANGE_URL='https://github.com/test-org/test-repo/pull/6' 
+2

我最終做了檢查,如果分支名稱是PR- \ d + – ESG

+1

你應該有post @ESG – Ordiel

相關問題