繁体   English   中英

从詹金斯管道构建作业可变

[英]Build Job from Jenkins Pipeline with variable

我无法通过传递作业名称变量的jenkins管道来构建作业。 请在下面的代码段中找到。 如果我将$ {service}替换为'microservice',它将触发工作

service = 'microservice'
echo "TESSSSSSSSTTT ${service}"
build(job: "'${service}'", parameters: [string(name: 'ENVNAME', value: 'uat')])

面临的错误是:

[Pipeline] echo
TESSSSSSSSTTT microservice
[Pipeline] build
[Pipeline] End of Pipeline
ERROR: No item named 'microservice' found
Finished: FAILURE

我之所以使用这种方法,是因为我想为所有使用多行字符串参数传递名称的微服务命中一个构建命令,最后我想将此构建设置为循环。

我假设您的工作在詹金斯(Jenkins)中不是'microservice' ,而是microservice (没有滴答microservice )。

因此,将build行更改为在双引号后不包含单引号:

build(job: "${service}", parameters: [string(name: 'ENVNAME', value: 'uat')])

对我的jenkins实例进行了一些简单的测试,并能够通过将service变量设置为现有作业名称来调用作业。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM