jenkins - 如何在 Jenkins 工作中包含并行条件
问题描述
例如,我有以下工作,我想使用 when 设置条件,现在它不允许我将 when 放入并行中,我只想在 bool 为真时运行 testusers
dir("abc") {
parallel (users: {
sh "add_user users.json"
},
when{ ${TEST_USERS} == "true" }
testusers: {
sh "add_user testusers.json"
})
}
}
}
解决方案
when
块仅在阶段上运行,因此类似于:
parallel {
stage('testusers') {
when {
environment name: 'TEST_USERS', value: 'true'
}
steps {
sh "add_user testusers.json"
}
stage('users') {
steps {
sh "add_user users.json"
}
}
}
在脚本中,您只需使用一个if
块。这看起来像:
parallel ([
'users': {
sh 'add_user users.json'
},
'testusers': {
if (TEST_USERS == 'true') {
sh 'add_user testusers.json'
}
}
])
推荐阅读
- php - for 循环 if else 中断 php
- function - node.js:如何将参数从 ejs 传递给全局函数?
- reactjs - 如何使用 Ant Design 创建问卷类型的表单?
- react-native - Reat Native - 绝对位置不显示在视图顶部
- vba - 基于两个参数导出 Excel 表格的单元格值
- haskell - Instance Eq 在 Haskell 中不起作用
- python - 转置卷积如何在张量流中使用相同的填充
- reactjs - 如何使用 yarn 在 vsts 中创建反应构建管道。找不到 package.json
- amazon-web-services - 如何定义过滤器表达式以根据 aws app 同步查询过滤器中的对象键值过滤嵌套的 json 数组?
- reactjs - react-sortable-hoc 在第一次使用 edgeOffset 移动后停止