管道配置部分中的Jenkins管道配置

管道配置部分中的Jenkins管道配置,jenkins,groovy,environment-variables,jenkins-pipeline,Jenkins,Groovy,Environment Variables,Jenkins Pipeline,我正在尝试设置“通用”构建系统,并使用Docker和Jenkins使用管道构建和运行测试 我使用包含docker需要的大部分内容的包装器脚本(从repo中提取)。唯一改变的是图像的标签 如何在构建配置中将该标记定义为环境变量或类似的变量,然后将其传递给实际的管道脚本 简体字: pipeline { stages { stage("Build test image") { dockerImage = docker.build("...", "--build-arg MYBR

我正在尝试设置“通用”构建系统,并使用Docker和Jenkins使用管道构建和运行测试

我使用包含docker需要的大部分内容的包装器脚本(从repo中提取)。唯一改变的是图像的标签

如何在构建配置中将该标记定义为环境变量或类似的变量,然后将其传递给实际的管道脚本

简体字:

pipeline {
  stages {
    stage("Build test image") {
      dockerImage = docker.build("...", "--build-arg MYBRANCH=${SOMEVAR}")
    }
  }
}
那么如何设置(每个构建配置)
SOMEVAR


我可以有每个自定义的Jenkinsfile分支,但最终只会以维护噩梦结束(我现在已经有7个分支要构建)

它可以通过环境中的静态或参数中的动态来定义。如果是参数,则在通过接口或api运行构建时应提供值

pipeline {
    environment {
        SOMEVAR = "123"
    }
    parameters {
        choice(name: 'CHOICE_VAR', choices: ['1', '2', '3'], description: 'Type...')
        string(name: 'STRING_VAR', defaultValue: '', description: 'Type...')
    }
    stages {
        stage("Build test image") {
            dockerImage = docker.build("...", "--build-arg MYBRANCH=${env.SOMEVAR}")

            dockerImage = docker.build("...", "--build-arg MYBRANCH=${params.CHOICE_VAR}")
            dockerImage = docker.build("...", "--build-arg MYBRANCH=${params.STRING_VAR}")
        }
    }
}