Jenkins conditionalstep groovy脚本
我尝试使用这个条件多步骤插件并为DSL编写了grrovy脚本,但是当我使用此代码引导时,列出的步骤在条件块之前,我在这里做错了什么 参考: 代码: 所以创建的jenkins作业显示为Jenkins conditionalstep groovy脚本,jenkins,groovy,conditional,dsl,Jenkins,Groovy,Conditional,Dsl,我尝试使用这个条件多步骤插件并为DSL编写了grrovy脚本,但是当我使用此代码引导时,列出的步骤在条件块之前,我在这里做错了什么 参考: 代码: 所以创建的jenkins作业显示为 npm install mkdir buildArchive Conditional step 而不是 Conditional step { npm install mkdir buildArchive } 我在这里做错了什么?使用步骤配置生成作业时 作业('foobar'){ 台阶{ 条件步骤{
npm install
mkdir buildArchive
Conditional step
而不是
Conditional step
{
npm install
mkdir buildArchive
}
我在这里做错了什么?使用步骤配置生成作业时 作业('foobar'){ 台阶{ 条件步骤{ 状况{ stringsMatch('${BUILD_REQUIRED}',true',false) } 跑步者(“失败”) 台阶{ 环境变量{ 环境(FOO:'bar',TEST:'123') } 批处理文件('调用npm安装') 批处理文件('调用mkdir buildArchive') } } } } 结果似乎不错: 根据我的经验,当您对作业DSL语法及其结果有任何问题时,一个好方法是区分作业的config.xml:
- 根据需要手动配置作业,并保存config.xml
- 在本地生成作业并保存config.xml
- 区分这两个配置文件,并查看确切的XML标记顺序
- 然后反复尝试,看看在更改作业DSL脚本时发生了什么
当我在没有groovy经验的情况下开始使用作业DSL时(尤其是闭包;)-当我试图将作业配置块提取到像您案例中那样的方法中时,我遇到了很多类似的问题。这有助于我了解实际情况。什么是“……所列步骤在条件块之前……”意思?@tim_yates更新了上述描述。我看到的是条件步骤外部的命令,而不是其中的命令。
Conditional step
{
npm install
mkdir buildArchive
}