我有一个文本参数如下:string1(name:'docker_images', defaultValue:',description:'输入图像列表')。这是在jenkins管道中名为Parameters的阶段中。在下一阶段,我需要调用这个参数(在#CODE2下面)。我已经尝试使用stash参数,但不接受字符串值。我不知道如何调用这个文本参数。
parameters {
text(name:'docker_images', defaultValue: NA, description:'Enter the list of images')
}
stages {
stage(docker_image_movement){
steps{
container('tools'){
#CODE1
script{
sh'''
#CODE2
for docker_image in 'echo $docker_images'
do
#DOCKER COMMANDS
'''
}
您需要将shell块放入双引号以进行字符串插值。
sh"""
#CODE2
for docker_image in $docker_images
do
#DOCKER COMMANDS
"""
您也可以像下面这样循环遍历输入。
pipeline {
agent any
parameters { text(name: 'docker_images', defaultValue: 'OnenTwonThreen', description: '') }
stages {
stage("Check") {
steps {
script {
for(def img in params.docker_images.split('n')){
sh "echo $img"
}
}
}
}
}
}