Jenkinsfile 脚本:根据参数选择字典并设置全局变量
// 定义字典
def dict1 = [key1: 'value1', key2: 'value2']
def dict2 = [key3: 'value3', key4: 'value4']
// 定义参数
parameters {
choice(name: 'dictionary', choices: ['dict1', 'dict2'], description: 'Select a dictionary')
}
// 根据参数设置全局变量
def selectedDict = '${params.dictionary}'
def selectedKeys = [: ]
if (selectedDict == 'dict1') {
selectedKeys = dict1
} else if (selectedDict == 'dict2') {
selectedKeys = dict2
} else {
error 'Invalid dictionary selected'
}
// Pipeline 代码块
pipeline {
agent any
stages {
stage('Example') {
steps {
echo 'Selected dictionary: ${selectedDict}'
echo 'Selected keys: ${selectedKeys}'
// 其他步骤
}
}
}
}
该脚本定义了两个字典 dict1 和 dict2,并通过参数 dictionary 允许用户选择其中一个字典。根据选择的字典,脚本将对应的 key/value 设置为全局变量 selectedKeys,方便在 pipeline 代码块中使用。
使用方法:
- 将该脚本保存为 Jenkinsfile 文件。
- 在 Jenkins 中创建新的 pipeline 任务,选择使用 Jenkinsfile 文件。
- 运行 pipeline 任务,在参数页面选择所需的字典。
- 运行结束后,您可以在 pipeline 控制台查看选择的字典和对应的 key/value。
原文地址: https://www.cveoy.top/t/topic/n96z 著作权归作者所有。请勿转载和采集!