pipeline { agent any stages { stage('Git-checout') { steps { echo "Checkout from git repo" } } stage('Compile') { steps { echo "Compilation was a success!!!" } } stage('JUnit') { steps { echo "JUnit passed!!" } } stage('Quality-gate') { steps { echo "Sonaqube static code analysis passed!!" sh 'return 0' // change to 1 for teting a failure } } stage('Deploy') { steps { echo "Deployment successful!!" } } } post { always { echo "This will always run" } success { echo "This will run only upon success" } failure { echo "This will run/show only if failed" } unstable { echo "This will show only if the was marked as unstable!" } changed { echo "This will run only if the state of the pipeline has changed." echo "For example, if the pipeline was previously failing but it's now successful." } } }