参数化的Jenkins管道属性:无法在属性部分使用参数

问题描述

我正在尝试按作业的真实名称设置属性

我的管道标题如下:

def jobs_actual_name = [
       choice(name: 'var',choices: ['choice1','choice2','choice3']),]

properties([
    parameters(jobs_actual_name)
])

上部管道工作正常,但我想使用参数而不是直接给出名称。 喜欢:

def jobs_actual_name = [
       choice(name: 'var',]
def another_jobs_actual_name = [
       choice(name: 'var',]

properties([
    parameters("${env.JOB_BASE_NAME}")
])

我该怎么做?预先感谢。

解决方法

您可以在设置属性之前执行一些逻辑:

def actualParameters = (env.JOB_BASE_NAME == 'jobs_actual_name' ? jobs_actual_name : another_jobs_actual_name)

properties([
    parameters(actualParameters)
])