我有一个管道,可以并行运行一系列不同的测试。有时其中一个测试失败,我只想重新启动该测试。在使用管道之前,我使用了Matrix Reloaded插件来实现这一目标。我想用管道实现同样的目标,我相信实现这一目标的一种方法是通过构建参数。
我有以下管道:
pipeline {
agent any
parameters {
booleanParam(name: 'RUBY_LINUX', defaultValue: true, description: 'Ruby unit tests on Linux')
booleanParam(name: 'RUBY_MACOS', defaultValue: true, description: 'Ruby unit tests on macOS')
}
stages {
stage('test') {
steps {
parallel(
'Ruby unit tests on Linux': {
node('linux') {
if (params.RUBY_LINUX) {
echo 'Ran test.'
} else {
echo 'Skipped test.'
}
}
},
'Ruby unit tests on macOS': {
node('macos') {
if (params.RUBY_MACOS) {
echo 'Ran test.'
} else {
echo 'Skipped test.'
}
}
}
)
}
}
}
}
但这给了我一个错误:
org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
WorkflowScript: 24: Expected a step @ line 24, column 13.
if (params.RUBY_LINUX) {
^
WorkflowScript: 41: Expected a step @ line 41, column 13.
if (params.RUBY_MACOS) {
^
我该如何解决这个问题?