Due to some maintenance issues, this service has been switched in read-only mode, you can find more information about the why

and how to migrate your plugin documentation in this blogpost

Skip to end of metadata
Go to start of metadata

I see only questions and no answers. Does anybody answers these questions? Otherwise what is the point to ask?


Plugin Information

View Jira Issue Updater on the plugin site for more information.

The current version of this plugin may not be safe to use. Please review the following warnings before use:

This is a Jenkins plugin which updates issues in Atlassian JIRA (by changing their status, adding a comment or updating fields) as part of a Jenkins job.

Jira-Issue-Updater-Plugin can search for issues to update using a flexible, user-definable JQL which can contain arbitrary variable values from the Jenkins Build, and update the contents of the JIRA.

The plugin can be called during a Post Build Step and/or as a Post Build Action.

Common Use Cases:

  • Update a JIRA when a build passes/fails, for example to keep an audit trail in JIRA
  • Update Fixed Versions in JIRA
  • Fail a build if a JIRA cannot be found 

What's new

Version 1.20

Version 1.19 failed due to using out of date build settings. Updated and re-released as Version 1.20.

Changes:

  • Added fixed versions
  • Use up to date build settings, deal with FindBugs and Javadoc issues

Version 1.18

Changes:

  • Added version management

Version 1.17

Changed to use the REST interface (SOAP has been deprecated and is being removed). The current functionality is:

  • JIRA selection using JQL
  • Add a JIRA comment (supports variable substitution)
  • Update a field with a value (supports variable substitution)
  • Set a workflow status

Note: "Fixed Versions" removed temporarily

Added "Post Build Action"

Version 1.3

Added support for build parameters and environment variables.

Use e.g

$BUILD_NUMBER

and not:

${BUILD_NUMBER}

and then they will get replaced for any of the below:

  • jira comment
  • jql
  • workflow action name

When to use it

  • in case you would like to announce or just log in Jira that the deployment of certain fixes / issues the acceptance server has completed (this makes sense if you already use Jenkins to deploy your applications to the acceptance web/app server).
  • in case you would like Jenkins to update multiple issues when a new version of one of your projects is released (this makes sense if you use the "maven release plugin" and you trigger it from Jenkins).
  • in case you would like to progress multiple Jira issues in the workflow (bulk changing the status of multiple Jira issues) and/or add a comment to issues after a Jenkins job has successfully completed.

How to use it

After installing this plugin you will find it:

  • under the 'Add build step' option (in case of a free-style or multi-configuration project build jobs) 
  • under the 'Add pre-build Step' & 'Add post-build step' options (in case of Maven project build jobs)

Inputs

  • the Jira SOAP URL (e.g. http://something.com/rpc/soap/jirasoapservice-v2)
  • the Jira username and password to be used to connect to Jira
  • a JQL query selecting the issues to be updated (e.g. project="JENKINS" and status="Pending deploy")
  • the name of the workflow action to be executed (not mandatory)
  • the message to be added to each issue (not mandatory)

Example plugin configuration

Usage

23 Comments

  1. Unknown User (jhansche)

    FWIW, I've opened an issue for the jira-plugin to consider adding a similar behavior to the main JIRA plugin: JENKINS-13652. I've started work on the feature already, and the benefit is that the first 3 fields (wsdl URL, username, password) will be managed on a global configuration level, and therefore it won't have to be entered on every job (instead, only needs to select which JIRA site to work with in the job configuration).

    At that point, I believe this plugin would become deprecated.

  2. Unknown User (jhansche)

    FYI: the functionality provided by this plugin is now integrated into the JIRA Plugin, as of version 1.33 (with a small workaround-available bug fixed in 1.34). That integration then makes it possible to keep the JIRA server/user configuration out of the individual job configurations.

    1. Unknown User (laszlomiklosik)

      Hi Joe,

      if it works already in the 'other' JIRA plugin than it indeed makes sense to mark this plugin as deprecated. Initially there was a discussion on the mailing list and it seemed not logical to integrate the 2 plugins at that moment.

      Any idea how can I mark the plugin as deprecated?

      Regards

      1. Unknown User (intel352)

        The Jira Plugin has some specific ideas about when/how you can update Jira (what section of build, what actions can be executed, etc). As this plugin still adds functionality not wholly replaced by the Jira Plugin, I'd suggest instead that you update your plugin to check for the existence of Jira Plugin, and if it exists, use the globally specified Jira, rather than forcing Jira configuration per job.

    2. Unknown User (slavd)

      My biggest issue with the Jira Plugin is that it does not let me enter a custom comment for linked issues. This particular plugin does! Even though it's on a per-job level, at least I can populate the comment with what I need, as opposed to "integrated in build blah"

  3. Unknown User (jeremieg_sintec)

    For a build:

    1. is there a way to apply the workflow action on the issues that participated in the build only ?
    2. is there also a way to define different workflow action depending on the success (or failure) of the build ?

    Thanks

  4. Unknown User (godisone)

    Hi ,

    I am using this (Jenkins-JIRA issue updater) plug in to update JIARs after build is complete. and getting below error message in Jenkins log. Don't understand what is wrong. Any suggestions please !!

    Tried to access JIRA url with same credentials outside Jenkins and it worked fine. So seems like issue is on Jenkins side.

    org.kohsuke.stapler.RequestImpl$TypePair convertJSON

    WARNING: 'stapler-class' is deprecated: info.bluefloyd.jenkins.IssueUpdatesBuilder

    info.bluefloyd.jenkins.SOAPSession <init>

    {_}INFO: SOAP Session service endpoint at http://JIRA_SOAP_URL/_

    info.bluefloyd.jenkins.SOAPSession connect

    INFO: Connnecting via SOAP as : $USER_NAME

    info.bluefloyd.jenkins.SOAPClient authenticateSoapSession

    SEVERE: Could not connect to Jira via SOAP.

    AxisFault

     faultCode:

    Unknown macro: {http}

    Server.userException

     faultSubcode: 

     faultString: org.xml.sax.SAXException: Processing instructions are not allowed within SOAP messages

     faultActor: 

     faultNode: 

     faultDetail: 

       

    Unknown macro: {http}

    stackTrace:org.xml.sax.SAXException: Processing instructions are not allowed within SOAP messages

        at org.apache.axis.encoding.DeserializationContext.startDTD(DeserializationContext.java:1161)

        at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.doctypeDecl(Unknown Source)

        at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.doctypeDecl(Unknown Source)

        at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.scanDoctypeDecl(Unknown Source)

        at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(Unknown Source)

        at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(Unknown Source)

        at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(Unknown Source)

        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)

        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)

        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)

        at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source)

        at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source)

        at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)

        at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(Unknown Source)

        at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)

        at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)

        at org.apache.axis.Message.getSOAPEnvelope(Message.java:435)

        at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62)

        at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206)

        at org.apache.axis.client.Call.invokeEngine(Call.java:2784)

        at org.apache.axis.client.Call.invoke(Call.java:2767)

        at org.apache.axis.client.Call.invoke(Call.java:2443)

        at org.apache.axis.client.Call.invoke(Call.java:2366)

        at org.apache.axis.client.Call.invoke(Call.java:1812)

        at com.atlassian.jira.rpc.soap.client.JirasoapserviceV2SoapBindingStub.login(JirasoapserviceV2SoapBindingStub.java:3790)

        at info.bluefloyd.jenkins.SOAPSession.connect(SOAPSession.java:47)

        at info.bluefloyd.jenkins.SOAPClient.authenticateSoapSession(SOAPClient.java:46)

        at info.bluefloyd.jenkins.SOAPClient.connect(SOAPClient.java:40)

        at info.bluefloyd.jenkins.IssueUpdatesBuilder.perform(IssueUpdatesBuilder.java:168)

        at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)

        at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:770)

        at hudson.model.Build$BuildExecution.build(Build.java:199)

        at hudson.model.Build$BuildExecution.doRun(Build.java:160)

        at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:533)

        at hudson.model.Run.execute(Run.java:1759)

        at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)

        at hudson.model.ResourceController.execute(ResourceController.java:89)

        at hudson.model.Executor.run(Executor.java:240)

    Unknown macro: {http}

    hostname:My_Computer_name

    org.xml.sax.SAXException: Processing instructions are not allowed within SOAP messages

        at org.apache.axis.AxisFault.makeFault(AxisFault.java:101)

        at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:701)

        at org.apache.axis.Message.getSOAPEnvelope(Message.java:435)

        at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62)

        at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206)

        at org.apache.axis.client.Call.invokeEngine(Call.java:2784)

        at org.apache.axis.client.Call.invoke(Call.java:2767)

        at org.apache.axis.client.Call.invoke(Call.java:2443)

        at org.apache.axis.client.Call.invoke(Call.java:2366)

        at org.apache.axis.client.Call.invoke(Call.java:1812)

        at com.atlassian.jira.rpc.soap.client.JirasoapserviceV2SoapBindingStub.login(JirasoapserviceV2SoapBindingStub.java:3790)

        at info.bluefloyd.jenkins.SOAPSession.connect(SOAPSession.java:47)

        at info.bluefloyd.jenkins.SOAPClient.authenticateSoapSession(SOAPClient.java:46)

        at info.bluefloyd.jenkins.SOAPClient.connect(SOAPClient.java:40)

        at info.bluefloyd.jenkins.IssueUpdatesBuilder.perform(IssueUpdatesBuilder.java:168)

        at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)

        at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:770)

        at hudson.model.Build$BuildExecution.build(Build.java:199)

        at hudson.model.Build$BuildExecution.doRun(Build.java:160)

        at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:533)

        at hudson.model.Run.execute(Run.java:1759)

        at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)

        at hudson.model.ResourceController.execute(ResourceController.java:89)

        at hudson.model.Executor.run(Executor.java:240)

    Caused by: org.xml.sax.SAXException: Processing instructions are not allowed within SOAP messages

        at org.apache.axis.encoding.DeserializationContext.startDTD(DeserializationContext.java:1161)

        at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.doctypeDecl(Unknown Source)

        at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.doctypeDecl(Unknown Source)

        at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.scanDoctypeDecl(Unknown Source)

        at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(Unknown Source)

        at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(Unknown Source)

        at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(Unknown Source)

        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)

        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)

        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)

  5. Unknown User (godisone)

    HI, 

    I am trying to put list of JIRA tickets into email sent after Jenkins-Jira-issue-updater plugin update JIRA.

    For email i am using email ext plug in, To inject list of updated JIRA tickets i am using below jelly script. Seems like method i calling is not correct but i do not know which method i need to use.

    Please help.

  6. Unknown User (pruthvi223)

    I am not able to update the jira issue using this plugin. when i run the jenkins job, it is connecting to jira  and authenticating is done successfully but it was not able to get any issues matching my JQL. I was getting the following error message"Your JQL, 'key ="PAS-624"' did not return any issues. No issues will be updated during this build"

    I had tried with many JQL's, which were giving me results when i tried to execute it in jira(advanced search) directly.

    Thanks in advance.

  7. Unknown User (lavr32)

    What workflow action should I choose if I want to update status from "Resolved" to "Integrated"?
    I tried with workflow actions - "Integrated" and "Integrate issue" - but it does not work.
    Thanks in advance.

  8. Unknown User (girishmc)

    Hi,

    I want to update Jira issue with Build Log after every build on Jenkins. I tried Jira Issue Updater Plugin but the ‘Jira comment to be added’ input field doesn't accept tokens such as $BUILD_LOG. Do any of you have done this using any plugin? I would greatly appreciate any help or pointers.

    Thanks,
    Girish

  9. Unknown User (ashu3112)

    Hi,

    I am getting the below error when Jenkins is trying to update issues in JIRA:

    JIRA Update Build Step

    -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -

    Unable to parse JSON result: {

    "expand": "names,schema",

    "startAt": 0,

    "maxResults": 1000,

    "total": 1,

    "issues": [{

    "expand": "operations,versionedRepresentations,editmeta,changelog,transitions,renderedFields",

    "id": "289777",

    "self": "https://url/rest/api/2/issue/11111",

    "key": "TE-ABCDE",

    "fields": {

    "summary": "A summary.",

    "versions": [{

    "self": "https://url/rest/api/2/issue/11111",

    "id": "11111",

    "description": "Rel 5.0",

    "name": "Rel 5.0",

    "archived": false,

    "released": true,

    "releaseDate": "2015-08-03"

    }]

    }

    }]

    }

    com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field "releaseDate" (class info.bluefloyd.jira.model.VersionSummary), not marked as ignorable(6 known properties: "archived", "id", "description", "released", "name", "self"])

    at[Source: {

    "expand": "names,schema",

    "startAt": 0,

    "maxResults": 1000,

    "total": 1,

    "issues": [{

    "expand": "operations,versionedRepresentations,editmeta,changelog,transitions,renderedFields",

    "id": "11111",

    "self": "url/rest/api/2/issue/11111",

    "key": "TE-ABCDE",

    "fields": {

    "summary": "Summary",

    "versions": [{

    "self": "url/rest/api/2/version/11111",

    "id": "11111",

    "description": "Rel 5.0",

    "name": "Rel 5.0",

    "archived": false,

    "released": true,

    "releaseDate": "2015-08-03"

    }]

    }

    }]

    }; line: 1, column: 603](through reference chain: info.bluefloyd.jira.model.IssueSummaryList["issues"] - > java.util.ArrayList[0] - > info.bluefloyd.jira.model.IssueSummary["fields"] - > info.bluefloyd.jira.model.FieldSummary["versions"] - > java.util.ArrayList[0] - > info.bluefloyd.jira.model.VersionSummary["releaseDate"])

    Seems like there is an issue with the releaseDate attribute in the Affects Version field of JIRA
    Kindly suggest a solution.

  10. Unknown User (ashu3112)

    Any progress on this

  11. Unknown User (rohitjen)

    Using jiraresultsreporter, I am able to create issues in Jira from Jenkins when a test case fails in a build. I want to update the created issues in jira from Jenkins when a build gets succeeded. Can this scenario be done with this plugin??. Jira is running on localhost:8090 . When i use this, I am getting an exception. Thanks in Advance.

  12. Unknown User (calvinmichel)

    In searching for the functionality to append a value to a custom field using this plugin, I found this request - JENKINS-28140

    From the comments in GitHub, it looks to have been implemented, but has a new version with this functionality been released?

     

  13. Unknown User (klr)

    Does this plugin support Jenkins Pipeline?

  14. Unknown User (rajbuddha)

    Hi Team,

     

    I am trying integrate jenkins and JIRA for my devOps life cycle. When I am using this plugin for updating JIRA issues using restapi I am getting 401 not authorized. I think it could be my password has special characters ( for ex: !password*) 

     

    can someone tel me how to escape in the screen of this plugin OR is there anyway to use Basic auth token so that this pwd can be sent as token. 

     

    Thanks in advance.

  15. Unknown User (chiccat)

    Hi,

    getting this error:

    Unable to connect to REST service
    java.io.IOException: Server returned HTTP response code: 400 for URL:


    jql: project="PROJECT" AND status="TRIAGE" and issue="PROJECT-123"


    Query works just fine

    Thanks

  16. Unknown User (jmeridth)

    Has anyone gotten the following error:


    java.lang.IllegalArgumentException: Illegal character(s) in message header value: Basic [REDACTED]
    	at sun.net.www.protocol.http.HttpURLConnection.checkMessageHeader(HttpURLConnection.java:541)
    	at sun.net.www.protocol.http.HttpURLConnection.isExternalMessageHeaderAllowed(HttpURLConnection.java:492)
    	at sun.net.www.protocol.http.HttpURLConnection.setRequestProperty(HttpURLConnection.java:3126)
    	at sun.net.www.protocol.https.HttpsURLConnectionImpl.setRequestProperty(HttpsURLConnectionImpl.java:325)
    	at info.bluefloyd.jenkins.RESTClient.doPost(RESTClient.java:412)
    	at info.bluefloyd.jenkins.RESTClient.findIssuesByJQL(RESTClient.java:92)
    	at info.bluefloyd.jenkins.IssueUpdaterResultsRecorder.perform(IssueUpdaterResultsRecorder.java:146)
    	at hudson.tasks.BuildStepMonitor$3.perform(BuildStepMonitor.java:45)
    	at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:744)
    	at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:690)
    	at hudson.model.Build$BuildExecution.post2(Build.java:186)
    	at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:635)
    	at hudson.model.Run.execute(Run.java:1835)
    	at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
    	at hudson.model.ResourceController.execute(ResourceController.java:97)
    	at hudson.model.Executor.run(Executor.java:429)


    I've confirmed through curl that my username and password work against the Jira API (v2 and v3).  Wondering if I'm missing something else.

  17. Unknown User (gudlyf)

    Using the plugin. I'm able to change an issue's status (even though it says it failed) but something's not working right when trying to add a comment. Instead I get the following. Not sure if it has anything to do with the "commentFinished" being mashed up together like that. But if I visit that URL (without the Finished added), I can see the ticket contents fine.

    -------------------------------------------------------
    JIRA Update Build Step
    -------------------------------------------------------
    Updating TEST-769  	Test 20 Ignore
    Could not update status for issue: TEST-769 (204) 
    Unable to connect to REST service to add comment
    java.io.IOException: Server returned HTTP response code: 400 for URL: https://jira-beta.internaldomain.com/rest/api/2/issue/TEST-769/commentFinished: SUCCESS
  18. Unknown User (lubap)

    Does anybody answers these questions? I see only questions that people post for a few years... no answers?

  19. Unknown User (lubap)

    Hi. I started to configure Jira Issue Updater. The first line you have to enter is "Jira REST Base URL" but in the information about the plugin the line that is shown is: "Jira SOAP URL".

    It is two different urls!!! What SHOULD be entered?


  20. Unknown User (tianci86)

    Hi development team,


    There was a security vulnerability released by Jenkins - Jira Issue Updater Plugin stores credentials in plain text. Will there be a patch released to fix this?


    https://jenkins.io/security/advisory/2019-04-03/#SECURITY-837


    Thanks.