2017-09-15 1 views
2

Jenknsfile에서 CHANGE_AUTHOR, CHANGE_AUTHOR_EMAIL 및 몇 가지 변수를 확인하고 싶습니다. 하지만 실행할 때 null 값이 표시됩니다. Jenkinsfile 코드에서젠킨스 파이프 라인에서 일부 환경 변수는 null 값을 가지고 있습니다

코드 싹둑 :

[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

에코 쉬 ('ENV'returnStdout : : : 사실, 스크립트) 당신 젠킨스 인스턴스의이 페이지에 ENV 섹션을 참조하십시오 함께 일해. 물론 grep -> sh (returnStdout : true, script : 'env | grep CHANGE') – herm

+0

@herm에 파이프를 연결할 수는 있지만 성공적으로 실행합니다. - 1. Push 이벤트가 출력되지 않습니다. 2. 끌어 오기 요청 이벤트에서는 변경과 관련된 변수 (CHANGE_TITLE 및 CHANGE_ID) 만 인쇄합니다. 예상 변수 : CHANGE_URL, CHANGE_TITLE, CHANGE_AUTHOR, CHANGE_AUTHOR_DISPLAY_NAME, CHANGE_AUTHOR_EMAIL, CHANGE_TARGET – kishs1991

답변

0

멀티 브랜치 파이프 라인 작업을 사용하고 있습니까? 이러한 변수는 멀티 브랜드에서만 사용할 수 있습니다. 어쩌면 당신은 당신이 무엇을 볼 수 있습니다, 모든 ENV가 바르 인쇄해야

http://Jenkins.server.url/pipeline-syntax/globals

+0

예, Multibranch 파이프 라인 만 사용하고 있습니다. – kishs1991

관련 문제