-
Bug
-
Resolution: Unresolved
-
Critical
-
None
-
Jenkins 2.289.3, atlassian-jira-software-cloud-plugin 1.4.4
Build pipeline:
#!groovy env.DOCKER_HOST_IP = '172.17.0.1' node('jenkins-build-agent') { // This limits build concurrency to 1 per branch properties([disableConcurrentBuilds()]) env.JAVA_HOME = "${tool 'jdk8'}" timeout(10 /* minutes */) { ws("workspace/${env.JOB_NAME}") { try { stage('Checkout') { git branch: getBranchName(), credentialsId: 'github-token', url: 'https://....git' } stage('Build') { error("Build failed: test") } } finally { echo "sending jiraSendBuildInfo" jiraSendBuildInfo() echo "finished jiraSendBuildInfo" cleanWs() // clean up workspace } } } }
Actual result:
When a build fails this pipeline sends SUCCESS state into related Jira issue.
Expected result:
Jenkins should send FAILED status into related Jira issue.
[JENKINS-66266] Jenkins plugin sends SUCCESS status to Jira upon failed build in Jenkins pipeline script
Priority | Original: Minor [ 4 ] | New: Major [ 3 ] |
Description |
Original:
Build pipeline:
{code:java} #!groovy env.DOCKER_HOST_IP = '172.17.0.1' node('jenkins-build-agent') { // This limits build concurrency to 1 per branch properties([disableConcurrentBuilds()]) env.JAVA_HOME = "${tool 'jdk8'}" timeout(10 /* minutes */) { ws("workspace/${env.JOB_NAME}") { try { stage('Checkout') { git branch: getBranchName(), credentialsId: 'github-token', url: 'https://....git' } stage('Build') { error("Build failed: test") } } finally { echo "sending jiraSendBuildInfo" jiraSendBuildInfo() echo "finished jiraSendBuildInfo" cleanWs() // clean up workspace } } } }{code} *Actual result:* When a build fails this pipeline sends SUCCESS state into related Jira issue. *Expected result:* Jenkins should send FAILED status into related Jira issue. |
New:
Build pipeline:
{code:java} #!groovy env.DOCKER_HOST_IP = '172.17.0.1' node('jenkins-build-agent') { // This limits build concurrency to 1 per branch properties([disableConcurrentBuilds()]) env.JAVA_HOME = "${tool 'jdk8'}" timeout(10 /* minutes */) { ws("workspace/${env.JOB_NAME}") { try { stage('Checkout') { git branch: getBranchName(), credentialsId: 'github-token', url: 'https://....git' } stage('Build') { error("Build failed: test") } } finally { echo "sending jiraSendBuildInfo" jiraSendBuildInfo() echo "finished jiraSendBuildInfo" cleanWs() // clean up workspace } } } }{code} *Actual result:* When a build fails this pipeline sends SUCCESS state into related Jira issue. *Expected result:* Jenkins should send FAILED status into related Jira issue. |
Summary | Original: Jenkins plugin sends SUCCESS status to Jira upon failed build | New: Jenkins plugin sends SUCCESS status to Jira upon failed build in Jenkins pipeline script |
Priority | Original: Major [ 3 ] | New: Critical [ 2 ] |
Assignee | Original: Rafal Myslek [ rafalmyslek ] | New: Navya [ nsurendran ] |
Status | Original: Open [ 1 ] | New: In Progress [ 3 ] |
The issue is because Pipeline job depends on transitive dependency on Declarative:pipeline, which is giving currentBuild.currentResult as null. Default value inside atlassian-jira-software-cloud plugin if currentBuild.currentResult is null is "Success". Thats why success status being sent to jira for failure build. We are working on bumping the version of the dependency to make this feature work.