2017-09-15 104 views
2

在Jenknsfile中,我想檢查CHANGE_AUTHOR,CHANGE_AUTHOR_EMAIL和其他一些變量。但是當我運行它顯示空值。從Jenkinsfile 代碼在Jenkins管道中,一些環境變量具有空值

代碼剪斷:

[Pipeline] echo 
CHANGE_ID : 69 
[Pipeline] echo 
CHANGE_URL : null 
[Pipeline] echo 
CHANGE_TITLE : Generic jenkinsfile 
[Pipeline] echo 
CHANGE_AUTHOR : null 
[Pipeline] echo 
CHANGE_AUTHOR_DISPLAY_NAME : null 
[Pipeline] echo 
CHANGE_AUTHOR_EMAIL : null 
[Pipeline] echo 
CHANGE_TARGET : null 
[Pipeline] echo 
BRANCH_NAME : PR-69 

我怎樣才能獲得變量值,顯示爲空:

if (env.CHANGE_ID){ 
echo "CHANGE_ID : ${env.CHANGE_ID}" 
echo "CHANGE_URL : ${env.CHANGE_URL}" 
echo "CHANGE_TITLE : ${env.CHANGE_TITLE}" 
echo "CHANGE_AUTHOR : ${env.CHANGE_AUTHOR}" 
echo "CHANGE_AUTHOR_DISPLAY_NAME : ${env.CHANGE_AUTHOR_DISPLAY_NAME}" 
echo "CHANGE_AUTHOR_EMAIL : ${env.CHANGE_AUTHOR_EMAIL}" 
echo "CHANGE_TARGET : ${env.CHANGE_TARGET}" 
echo "BRANCH_NAME : ${env.BRANCH_NAME}" 
... 
... 

管道的輸出?

+0

回聲SH(returnStdout:真,劇本:「ENV」)應該打印所有的env瓦爾,也許可以幫助你看到你是什麼與...合作。當然,您可以將它管理爲grep - > sh(returnStdout:true,腳本:'env | grep CHANGE') – herm

+0

@herm它成功執行,但是 - 1.在Push事件中不打印任何與變量相關的變量。 2.在Pull Request事件中,它僅打印(CHANGE_TITLE和CHANGE_ID)與變更相關的變量。預期變量: CHANGE_URL,CHANGE_TITLE,CHANGE_AUTHOR,CHANGE_AUTHOR_DISPLAY_NAME,CHANGE_AUTHOR_EMAIL,CHANGE_TARGET。 – kishs1991

回答