Jenkinsfile 脚本:使用参数选择字典并设置全局变量
以下是一个使用 Jenkinsfile 脚本实现上述功能的示例:
def dict1 = [key1: 'value1', key2: 'value2']
def dict2 = [key3: 'value3', key4: 'value4']
pipeline {
agent any
parameters {
choice(name: 'dict_name', choices: ['dict1', 'dict2'], description: 'Choose a dictionary to use')
}
stages {
stage('Set global variables') {
steps {
script {
switch(params.dict_name) {
case 'dict1':
env.KEY1 = dict1.key1
env.KEY2 = dict1.key2
break
case 'dict2':
env.KEY1 = dict2.key3
env.KEY2 = dict2.key4
break
}
}
}
}
stage('Print global variables') {
steps {
echo 'KEY1: ${env.KEY1}'
echo 'KEY2: ${env.KEY2}'
}
}
}
}
在这个示例中,我们定义了两个字典dict1和dict2,每个字典中有两个key/value对。在 pipeline 代码块外定义这些字典,使它们成为全局变量。然后,我们使用parameters块来定义一个dict_name参数,该参数是一个可选项,允许用户选择要使用的字典。在Set global variables阶段中,我们使用script块来检查所选择的字典名称,并将相应的key/value对设置为全局变量。最后,在Print global variables阶段中,我们使用echo来输出所设置的全局变量。
原文地址: https://www.cveoy.top/t/topic/n96b 著作权归作者所有。请勿转载和采集!