I am creating a sample jenkins pipeline, here is the code.
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' } } } } this pipeline fails with following error logs
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') { ^ But when i execute the following example from this url, it executes successfully and print the else part.
node { stage('Example') { if (env.BRANCH_NAME == 'master') { echo 'I only execute on the master branch' } else { echo 'I execute elsewhere' } } } The only difference i can see is that in the working example there is no stages but in my case it has.
What is wrong here, can anyone please suggest?