Jenkins 다운 스트림 작업에서 업스트림 작업 매개 변수를 얻는 방법
3825 단어 Jenkins
갓 만든 호와 호야의 이미지를 사용하여 테스트 할 작업을 만들려고했고 하류 작업에서 상류 작업의 빌드 매개 변수를 얻는 방법을 조사했기 때문에 Kakiko
준비
스크립트
다음 행을 작업에 통합하면 환경 변수를 통해 업스트림 작업 매개 변수를 얻을 수 있습니다.
stage('Get Upstream Parameter') {
steps {
script {
upstreamBuilds = currentBuild.upstreamBuilds
if (upstreamBuilds.isEmpty()) {
// Job is run by manually -> Do nothing.
} else {
// Job is run by trigger of upstream success.
def upstream = upstreamBuilds[0].rawBuild
def upstreamEnv = upstream.environment
echo upstreamEnv["container_name"]
echo upstreamEnv["branch_name"]
}
}
}
}
방법 2: 업스트림 작업에서 매개변수가 있는 다운스트림 작업 실행
이쪽은 간단하고, 이하와 같이 쓰는 것만으로 OK.
build job: 'DownstreamJob', parameters: [
[$class: 'StringParameterValue', name: 'container_name', value: "${params.container_name}"]
]
다만, 상류측에 호출 처리를 실장하면,
이번 Docker image build와 같이 불특정 다수의 테스트 작업의 상류가 되는 경우,
테스트 작업이 늘어날 때마다 업스트림 스크립트가 업데이트되기 때문에,
「상류에서 하류로 파라미터 첨부로 작업을 실행한다」인가 「하류로부터 상류의 파라미터를 취하러 간다」인가는, 만들려고 하는 테스트로부터 생각하는 것이 좋을 것 같다
참고 자료
Jenkins의 사양을 다룬 자료는 적지 않지만 생각했지만, 찾아 보면 의외로 나오네요 (단지 공부 부족이었다 ..)
Reference
이 문제에 관하여(Jenkins 다운 스트림 작업에서 업스트림 작업 매개 변수를 얻는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/yusukeh0710/items/0e4a1204422329355e8e텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)