[英]Pass environment variables from parent job to child job Jenkins pipeline
我有兩個管道工作。
父作業:此作業包含 Gerrit 觸發器,並基於創建的每個補丁集構建。 構建此作業后,我可以在構建環境變量部分中看到 Gerrit 環境變量。
子作業:僅當 gerrit_branch 不等於 master 時才運行。
我想像父作業一樣將所有 gerrit 環境變量傳遞給這個作業。
有沒有辦法將所有 env 變量傳遞給子作業。
我已經完成了兩個管道作業: Pipeline1(父作業)和 pipelineB(子作業)
Pipeline1:我正在從存在 Jenkinsfile 的 github 進行 SCM 簽出,在 Jenkinsfile 中,我調用了 pipelineB(子作業),我在其中傳遞了父作業環境變量(GIT_BRANCH)。
Pipeline1的Jenkinsfile
pipeline {
agent any
stages
{
stage ('Build JobB')
{
steps {
sh 'env'
build job: 'pipelineB', parameters: [string(name: 'GITHUB_BRANCH', value: "${env.GIT_BRANCH}")]
}
}
}
}
GIT_BRANCH 是這里的環境變量。 ( https://plugins.jenkins.io/git/#environment-variables )
pipelineB :我使用了此構建選項參數化以捕獲父作業(即 Pipeline1)傳遞的環境值的值。 然后,在管道腳本中使用該變量。
請試一試。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.