我正在创建一个样本詹金斯管道,这里是代码。詹金斯管道如果还没有工作
pipeline {
agent any
stages {
stage('test') {
steps {
sh 'echo hello'
}
}
stage('test1') {
steps {
sh 'echo $TEST'
}
}
stage('test3') {
if (env.BRANCH_NAME == 'master') {
echo 'I only execute on the master branch'
} else {
echo 'I execute elsewhere'
}
}
}
}
这条管道失败,下面的错误日志
Started by user admin
org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
WorkflowScript: 15: Not a valid stage section definition: "if (env.BRANCH_NAME == 'master') {
echo 'I only execute on the master branch'
} else {
echo 'I execute elsewhere'
}". Some extra configuration is required. @ line 15, column 9.
stage('test3') {
^
WorkflowScript: 15: Nothing to execute within stage "test3" @ line 15, column 9.
stage('test3') {
^
但是,当我执行下面的例子from this url,它成功地执行并打印else部分。
node {
stage('Example') {
if (env.BRANCH_NAME == 'master') {
echo 'I only execute on the master branch'
} else {
echo 'I execute elsewhere'
}
}
}
唯一的区别我可以看到的是,在工作示例没有stages
但对我来说是这样。
这里有什么错,任何人都可以请建议?
谢谢你这么多,一为答案,+1声明管线和脚本管道,一为REST API的建议。实际上,我需要如果和其他这就是为什么我使用它。 – Shahzeb