我有一个monorepo设置,尝试从根Jenkinsfile发送服务JenkinsFile,结构如下所示:
Monorepo
- Jenkinsfile (at root)
- services
- Jenkinsfile (services Jenkinsfile)
- Service A
- src/
- Service B
- src/服务Jenkinsfile是从root Jenkinsfile触发的。
这些env变量在根jenkinsfile中运行良好,但它们在service jenkinsfile中提供空值。
stage('Echo env') {
echo "Branch_name=${env.BRANCH_NAME}, PR_Branch_change=${env.CHANGE_BRANCH}, PR_Key=${env.CHANGE_ID}, PR_Base=${env.CHANGE_TARGET}, Key=$CHANGE_ID, branch=$CHANGE_BRANCH, base=$CHANGE_TARGET"
} // Stage is same in both the jenkinsfile

在服务jenkinsfile中,要么出现错误:

或打印Null值

是否有任何方法从另一个(root) Jenkinsfile导入或引用env变量?
发布于 2022-03-30 11:52:44
最后,我能够获得从父jenkinsfile打印到子jenkinsfile的env变量值。
这是我通过的帖子,不知怎么的,它帮助我得到了最终的结果。
Pass environment variables from parent job to child job Jenkins pipeline
https://stackoverflow.com/questions/71673585
复制相似问题