Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-49178

Comment trigger is no longer supported in JIRA Cloud

    Details

    • Type: Bug
    • Status: Resolved (View Workflow)
    • Priority: Major
    • Resolution: Fixed
    • Component/s: jira-trigger-plugin
    • Labels:
      None
    • Environment:
    • Similar Issues:

      Description

      Originally reported by Patrick Ng at JENKINS-49085 with all of the details from his comment.

      Commenting on a JIRA ticket with a specific phrase does not seem to be sending a POST request to the jira-trigger-plugin webhook in Jenkins anymore. According to the plugin README, it says to only set event to issue_updated but creating a comment does not seem to trigger an issue_updated event POST to the webhook. This seems to be the reason why I can no longer trigger a job from a matching comment.

      Root cause: https://developer.atlassian.com/cloud/jira/platform/change-notice-removal-of-comments-from-issue-webhooks/

      Logs and example webhook event:

      Webhook event body:
      Jan 23, 2018 5:14:04 PM FINEST com.ceilfors.jenkins.plugins.jiratrigger.webhook.JiraWebhook
      {
          "timestamp": 1516745644071,
          "webhookEvent": "comment_created",
          "comment": {
              "self": "https://sportsrecruits.atlassian.net/rest/api/2/issue/38747/comment/43735",
              "id": "43735",
              "author": {
                  "self": "https://sportsrecruits.atlassian.net/rest/api/2/user?username=alex",
                  "name": "alex",
                  "key": "alex",
                  "accountId": "557058:93f71831-7090-4c70-ab8e-c9a5c9aa2d8e",
                  "avatarUrls": {
                      "48x48": "https://avatar-cdn.atlassian.com/07be219aa1f894b95a868f2eef9d4e17?s=48&d=https%3A%2F%2Fsecure.gravatar.com%2Favatar%2F07be219aa1f894b95a868f2eef9d4e17%3Fd%3Dmm%26s%3D48%26noRedirect%3Dtrue",
                      "24x24": "https://avatar-cdn.atlassian.com/07be219aa1f894b95a868f2eef9d4e17?s=24&d=https%3A%2F%2Fsecure.gravatar.com%2Favatar%2F07be219aa1f894b95a868f2eef9d4e17%3Fd%3Dmm%26s%3D24%26noRedirect%3Dtrue",
                      "16x16": "https://avatar-cdn.atlassian.com/07be219aa1f894b95a868f2eef9d4e17?s=16&d=https%3A%2F%2Fsecure.gravatar.com%2Favatar%2F07be219aa1f894b95a868f2eef9d4e17%3Fd%3Dmm%26s%3D16%26noRedirect%3Dtrue",
                      "32x32": "https://avatar-cdn.atlassian.com/07be219aa1f894b95a868f2eef9d4e17?s=32&d=https%3A%2F%2Fsecure.gravatar.com%2Favatar%2F07be219aa1f894b95a868f2eef9d4e17%3Fd%3Dmm%26s%3D32%26noRedirect%3Dtrue"
                  },
                  "displayName": "Alex Figueroa ",
                  "active": true,
                  "timeZone": "America/New_York"
              },
              "body": "Jenkins go home",
              "updateAuthor": {
                  "self": "https://sportsrecruits.atlassian.net/rest/api/2/user?username=alex",
                  "name": "alex",
                  "key": "alex",
                  "accountId": "557058:93f71831-7090-4c70-ab8e-c9a5c9aa2d8e",
                  "avatarUrls": {
                      "48x48": "https://avatar-cdn.atlassian.com/07be219aa1f894b95a868f2eef9d4e17?s=48&d=https%3A%2F%2Fsecure.gravatar.com%2Favatar%2F07be219aa1f894b95a868f2eef9d4e17%3Fd%3Dmm%26s%3D48%26noRedirect%3Dtrue",
                      "24x24": "https://avatar-cdn.atlassian.com/07be219aa1f894b95a868f2eef9d4e17?s=24&d=https%3A%2F%2Fsecure.gravatar.com%2Favatar%2F07be219aa1f894b95a868f2eef9d4e17%3Fd%3Dmm%26s%3D24%26noRedirect%3Dtrue",
                      "16x16": "https://avatar-cdn.atlassian.com/07be219aa1f894b95a868f2eef9d4e17?s=16&d=https%3A%2F%2Fsecure.gravatar.com%2Favatar%2F07be219aa1f894b95a868f2eef9d4e17%3Fd%3Dmm%26s%3D16%26noRedirect%3Dtrue",
                      "32x32": "https://avatar-cdn.atlassian.com/07be219aa1f894b95a868f2eef9d4e17?s=32&d=https%3A%2F%2Fsecure.gravatar.com%2Favatar%2F07be219aa1f894b95a868f2eef9d4e17%3Fd%3Dmm%26s%3D32%26noRedirect%3Dtrue"
                  },
                  "displayName": "Alex Figueroa ",
                  "active": true,
                  "timeZone": "America/New_York"
              },
              "created": "2018-01-23T17:14:04.071-0500",
              "updated": "2018-01-23T17:14:04.071-0500"
          },
          "issue": {
              "id": "38747",
              "self": "https://sportsrecruits.atlassian.net/rest/api/2/issue/38747",
              "key": "SR-4186",
              "fields": {
                  "summary": "Identify and fix email address entry points to strip white space",
                  "issuetype": {
                      "self": "https://sportsrecruits.atlassian.net/rest/api/2/issuetype/3",
                      "id": "3",
                      "description": "A task that needs to be done.",
                      "iconUrl": "https://sportsrecruits.atlassian.net/secure/viewavatar?size=xsmall&avatarId=10318&avatarType=issuetype",
                      "name": "Task",
                      "subtask": false,
                      "avatarId": 10318
                  },
                  "project": {
                      "self": "https://sportsrecruits.atlassian.net/rest/api/2/project/10000",
                      "id": "10000",
                      "key": "SR",
                      "name": "Sports Recruits",
                      "projectTypeKey": "software",
                      "avatarUrls": {
                          "48x48": "https://sportsrecruits.atlassian.net/secure/projectavatar?pid=10000&avatarId=11300",
                          "24x24": "https://sportsrecruits.atlassian.net/secure/projectavatar?size=small&pid=10000&avatarId=11300",
                          "16x16": "https://sportsrecruits.atlassian.net/secure/projectavatar?size=xsmall&pid=10000&avatarId=11300",
                          "32x32": "https://sportsrecruits.atlassian.net/secure/projectavatar?size=medium&pid=10000&avatarId=11300"
                      }
                  },
                  "assignee": {
                      "self": "https://sportsrecruits.atlassian.net/rest/api/2/user?username=Paul",
                      "name": "Paul",
                      "key": "paul",
                      "accountId": "5a43c904b66c2f374530f7b7",
                      "emailAddress": "paul@sportsrecruits.com",
                      "avatarUrls": {
                          "48x48": "https://avatar-cdn.atlassian.com/d7a71cabea4d48b35a499dd3a68a5fcb?s=48&d=https%3A%2F%2Fsecure.gravatar.com%2Favatar%2Fd7a71cabea4d48b35a499dd3a68a5fcb%3Fd%3Dmm%26s%3D48%26noRedirect%3Dtrue",
                          "24x24": "https://avatar-cdn.atlassian.com/d7a71cabea4d48b35a499dd3a68a5fcb?s=24&d=https%3A%2F%2Fsecure.gravatar.com%2Favatar%2Fd7a71cabea4d48b35a499dd3a68a5fcb%3Fd%3Dmm%26s%3D24%26noRedirect%3Dtrue",
                          "16x16": "https://avatar-cdn.atlassian.com/d7a71cabea4d48b35a499dd3a68a5fcb?s=16&d=https%3A%2F%2Fsecure.gravatar.com%2Favatar%2Fd7a71cabea4d48b35a499dd3a68a5fcb%3Fd%3Dmm%26s%3D16%26noRedirect%3Dtrue",
                          "32x32": "https://avatar-cdn.atlassian.com/d7a71cabea4d48b35a499dd3a68a5fcb?s=32&d=https%3A%2F%2Fsecure.gravatar.com%2Favatar%2Fd7a71cabea4d48b35a499dd3a68a5fcb%3Fd%3Dmm%26s%3D32%26noRedirect%3Dtrue"
                      },
                      "displayName": "Paul Cox",
                      "active": true,
                      "timeZone": "America/New_York"
                  },
                  "priority": {
                      "self": "https://sportsrecruits.atlassian.net/rest/api/2/priority/3",
                      "iconUrl": "https://sportsrecruits.atlassian.net/images/icons/priorities/major.svg",
                      "name": "Major",
                      "id": "3"
                  },
                  "status": {
                      "self": "https://sportsrecruits.atlassian.net/rest/api/2/status/10500",
                      "description": "This is managed by JIRA",
                      "iconUrl": "https://sportsrecruits.atlassian.net/images/icons/statuses/generic.png",
                      "name": "QA on stage",
                      "id": "10500",
                      "statusCategory": {
                          "self": "https://sportsrecruits.atlassian.net/rest/api/2/statuscategory/4",
                          "id": 4,
                          "key": "indeterminate",
                          "colorName": "yellow",
                          "name": "In Progress"
                      }
                  }
              }
          }
      }
      Jan 23, 2018 5:14:04 PM WARNING java_util_logging_Logger$warning$1 call
      Received Webhook callback with an invalid event type or a body without comment/changelog. Event type: comment_created. Event body contains: [timestamp, webhookEvent, comment, issue].
      

        Attachments

          Issue Links

            Activity

            ceilfors Wisen Tanasa created issue -
            ceilfors Wisen Tanasa made changes -
            Field Original Value New Value
            Description This plugin was working fine until today. One of our workflow statuses hits the JIRA trigger webhook and is causing an error as revealed by Jenkins logs, which does not trigger the build.

            This is the workflow we have in JIRA:

            !Screenshot 2018-01-22 20.57.02.png!

            At either "QA on dev" and "QA on stage", we trigger a build in our pipeline. Since we set this up a year ago, both statuses would trigger the build but today, only "QA on dev" triggers the build successfully. When we reach "QA on stage", the Jenkins log returns us an error:
            {code:java}
            Error while serving http://redacted-url/jira-trigger-webhook-receiver/
            org.codehaus.jettison.json.JSONException: JSONObject["description"] not found.
            at org.codehaus.jettison.json.JSONObject.get(JSONObject.java:360)
            at org.codehaus.jettison.json.JSONObject.getString(JSONObject.java:487)
            at com.atlassian.jira.rest.client.internal.json.StatusJsonParser.parse(StatusJsonParser.java:31)
            at com.atlassian.jira.rest.client.internal.json.IssueJsonParser.parse(IssueJsonParser.java:244)
            at com.atlassian.jira.rest.client.internal.json.IssueJsonParser$parse.call(Unknown Source)
            at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:48)
            at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:113)
            at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:125)
            at com.ceilfors.jenkins.plugins.jiratrigger.webhook.WebhookCommentEventJsonParser.parse(WebhookCommentEventJsonParser.groovy:23)
            at com.ceilfors.jenkins.plugins.jiratrigger.webhook.WebhookCommentEventJsonParser$parse.call(Unknown Source)
            at com.ceilfors.jenkins.plugins.jiratrigger.webhook.JiraWebhook.processEvent(JiraWebhook.groovy:70)
            at com.ceilfors.jenkins.plugins.jiratrigger.webhook.JiraWebhook$processEvent.callCurrent(Unknown Source)
            at com.ceilfors.jenkins.plugins.jiratrigger.webhook.JiraWebhook.doIndex(JiraWebhook.groovy:50)
            at java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:627)
            at org.kohsuke.stapler.Function$MethodFunction.invoke(Function.java:343)
            Caused: java.lang.reflect.InvocationTargetException
            at org.kohsuke.stapler.Function$MethodFunction.invoke(Function.java:347)
            at org.kohsuke.stapler.interceptor.RequirePOST$Processor.invoke(RequirePOST.java:52)
            at org.kohsuke.stapler.PreInvokeInterceptedFunction.invoke(PreInvokeInterceptedFunction.java:26)
            at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:184)
            at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:117)
            at org.kohsuke.stapler.IndexDispatcher.dispatch(IndexDispatcher.java:26)
            at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:715)
            at org.kohsuke.stapler.Stapler.invoke(Stapler.java:845)
            at org.kohsuke.stapler.MetaClass$10.dispatch(MetaClass.java:374)
            at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:715)
            at org.kohsuke.stapler.Stapler.invoke(Stapler.java:845)
            at org.kohsuke.stapler.Stapler.invoke(Stapler.java:649)
            at org.kohsuke.stapler.Stapler.service(Stapler.java:238)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
            at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:841)
            at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1650)
            at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:135)
            at org.jenkinsci.plugins.ssegateway.Endpoint$SSEListenChannelFilter.doFilter(Endpoint.java:225)
            at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:132)
            at io.jenkins.blueocean.ResourceCacheControl.doFilter(ResourceCacheControl.java:134)
            at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:132)
            at io.jenkins.blueocean.auth.jwt.impl.JwtAuthenticationFilter.doFilter(JwtAuthenticationFilter.java:61)
            at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:132)
            at javax.servlet.FilterChain$doFilter.call(Unknown Source)
            at com.ceilfors.jenkins.plugins.jiratrigger.ExceptionLoggingFilter.doFilter(ExceptionLoggingFilter.groovy:29)
            at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:132)
            at jenkins.metrics.impl.MetricsFilter.doFilter(MetricsFilter.java:125)
            at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:132)
            at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:138)
            at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1637)
            at javax.servlet.FilterChain$doFilter$0.call(Unknown Source)
            at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:48)
            at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:113)
            at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:133)
            at com.ceilfors.jenkins.plugins.jiratrigger.webhook.JiraWebhookCrumbExclusion.process(JiraWebhookCrumbExclusion.groovy:22)
            at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:59)
            at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1637)
            at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
            at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51)
            at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
            at jenkins.security.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:117)
            at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
            at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
            at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
            at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:135)
            at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
            at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
            at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
            at jenkins.security.BasicHeaderProcessor.doFilter(BasicHeaderProcessor.java:93)
            at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
            at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
            at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:67)
            at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
            at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:90)
            at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:171)
            at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1637)
            at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:49)
            at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1637)
            at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:82)
            at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1637)
            at org.kohsuke.stapler.DiagnosticThreadNameFilter.doFilter(DiagnosticThreadNameFilter.java:30)
            at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1637)
            at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:533)
            at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
            at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:524)
            at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
            at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:190)
            at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1595)
            at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:188)
            at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1253)
            at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:168)
            at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:473)
            at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1564)
            at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:166)
            at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1155)
            at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
            at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
            at org.eclipse.jetty.server.Server.handle(Server.java:564)
            at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:317)
            at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:251)
            at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:279)
            at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:110)
            at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:124)
            at org.eclipse.jetty.util.thread.Invocable.invokePreferred(Invocable.java:128)
            at org.eclipse.jetty.util.thread.Invocable$InvocableExecutor.invoke(Invocable.java:222)
            at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:294)
            at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:199)
            at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77)
            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
            at java.lang.Thread.run(Thread.java:748)
            {code}
            Is it possible that Atlassian changed their API all of a sudden? This is causing our workflow to break and we can't move our tickets forward.
            Originally reported by [~patrickng] at JENKINS-49085 with all of the details from his comment.

            {quote}
            Commenting on a JIRA ticket with a specific phrase does not seem to be sending a POST request to the jira-trigger-plugin webhook in Jenkins anymore. According to the plugin README, it says to only set event to issue_updated but creating a comment does not seem to trigger an issue_updated event POST to the webhook. This seems to be the reason why I can no longer trigger a job from a matching comment.
            {quote}

            Root cause: https://developer.atlassian.com/cloud/jira/platform/change-notice-removal-of-comments-from-issue-webhooks/

            Logs and example webhook event:
            {code}
            Webhook event body:
            Jan 23, 2018 5:14:04 PM FINEST com.ceilfors.jenkins.plugins.jiratrigger.webhook.JiraWebhook
            {
                "timestamp": 1516745644071,
                "webhookEvent": "comment_created",
                "comment": {
                    "self": "https://sportsrecruits.atlassian.net/rest/api/2/issue/38747/comment/43735",
                    "id": "43735",
                    "author": {
                        "self": "https://sportsrecruits.atlassian.net/rest/api/2/user?username=alex",
                        "name": "alex",
                        "key": "alex",
                        "accountId": "557058:93f71831-7090-4c70-ab8e-c9a5c9aa2d8e",
                        "avatarUrls": {
                            "48x48": "https://avatar-cdn.atlassian.com/07be219aa1f894b95a868f2eef9d4e17?s=48&d=https%3A%2F%2Fsecure.gravatar.com%2Favatar%2F07be219aa1f894b95a868f2eef9d4e17%3Fd%3Dmm%26s%3D48%26noRedirect%3Dtrue",
                            "24x24": "https://avatar-cdn.atlassian.com/07be219aa1f894b95a868f2eef9d4e17?s=24&d=https%3A%2F%2Fsecure.gravatar.com%2Favatar%2F07be219aa1f894b95a868f2eef9d4e17%3Fd%3Dmm%26s%3D24%26noRedirect%3Dtrue",
                            "16x16": "https://avatar-cdn.atlassian.com/07be219aa1f894b95a868f2eef9d4e17?s=16&d=https%3A%2F%2Fsecure.gravatar.com%2Favatar%2F07be219aa1f894b95a868f2eef9d4e17%3Fd%3Dmm%26s%3D16%26noRedirect%3Dtrue",
                            "32x32": "https://avatar-cdn.atlassian.com/07be219aa1f894b95a868f2eef9d4e17?s=32&d=https%3A%2F%2Fsecure.gravatar.com%2Favatar%2F07be219aa1f894b95a868f2eef9d4e17%3Fd%3Dmm%26s%3D32%26noRedirect%3Dtrue"
                        },
                        "displayName": "Alex Figueroa ",
                        "active": true,
                        "timeZone": "America/New_York"
                    },
                    "body": "Jenkins go home",
                    "updateAuthor": {
                        "self": "https://sportsrecruits.atlassian.net/rest/api/2/user?username=alex",
                        "name": "alex",
                        "key": "alex",
                        "accountId": "557058:93f71831-7090-4c70-ab8e-c9a5c9aa2d8e",
                        "avatarUrls": {
                            "48x48": "https://avatar-cdn.atlassian.com/07be219aa1f894b95a868f2eef9d4e17?s=48&d=https%3A%2F%2Fsecure.gravatar.com%2Favatar%2F07be219aa1f894b95a868f2eef9d4e17%3Fd%3Dmm%26s%3D48%26noRedirect%3Dtrue",
                            "24x24": "https://avatar-cdn.atlassian.com/07be219aa1f894b95a868f2eef9d4e17?s=24&d=https%3A%2F%2Fsecure.gravatar.com%2Favatar%2F07be219aa1f894b95a868f2eef9d4e17%3Fd%3Dmm%26s%3D24%26noRedirect%3Dtrue",
                            "16x16": "https://avatar-cdn.atlassian.com/07be219aa1f894b95a868f2eef9d4e17?s=16&d=https%3A%2F%2Fsecure.gravatar.com%2Favatar%2F07be219aa1f894b95a868f2eef9d4e17%3Fd%3Dmm%26s%3D16%26noRedirect%3Dtrue",
                            "32x32": "https://avatar-cdn.atlassian.com/07be219aa1f894b95a868f2eef9d4e17?s=32&d=https%3A%2F%2Fsecure.gravatar.com%2Favatar%2F07be219aa1f894b95a868f2eef9d4e17%3Fd%3Dmm%26s%3D32%26noRedirect%3Dtrue"
                        },
                        "displayName": "Alex Figueroa ",
                        "active": true,
                        "timeZone": "America/New_York"
                    },
                    "created": "2018-01-23T17:14:04.071-0500",
                    "updated": "2018-01-23T17:14:04.071-0500"
                },
                "issue": {
                    "id": "38747",
                    "self": "https://sportsrecruits.atlassian.net/rest/api/2/issue/38747",
                    "key": "SR-4186",
                    "fields": {
                        "summary": "Identify and fix email address entry points to strip white space",
                        "issuetype": {
                            "self": "https://sportsrecruits.atlassian.net/rest/api/2/issuetype/3",
                            "id": "3",
                            "description": "A task that needs to be done.",
                            "iconUrl": "https://sportsrecruits.atlassian.net/secure/viewavatar?size=xsmall&avatarId=10318&avatarType=issuetype",
                            "name": "Task",
                            "subtask": false,
                            "avatarId": 10318
                        },
                        "project": {
                            "self": "https://sportsrecruits.atlassian.net/rest/api/2/project/10000",
                            "id": "10000",
                            "key": "SR",
                            "name": "Sports Recruits",
                            "projectTypeKey": "software",
                            "avatarUrls": {
                                "48x48": "https://sportsrecruits.atlassian.net/secure/projectavatar?pid=10000&avatarId=11300",
                                "24x24": "https://sportsrecruits.atlassian.net/secure/projectavatar?size=small&pid=10000&avatarId=11300",
                                "16x16": "https://sportsrecruits.atlassian.net/secure/projectavatar?size=xsmall&pid=10000&avatarId=11300",
                                "32x32": "https://sportsrecruits.atlassian.net/secure/projectavatar?size=medium&pid=10000&avatarId=11300"
                            }
                        },
                        "assignee": {
                            "self": "https://sportsrecruits.atlassian.net/rest/api/2/user?username=Paul",
                            "name": "Paul",
                            "key": "paul",
                            "accountId": "5a43c904b66c2f374530f7b7",
                            "emailAddress": "paul@sportsrecruits.com",
                            "avatarUrls": {
                                "48x48": "https://avatar-cdn.atlassian.com/d7a71cabea4d48b35a499dd3a68a5fcb?s=48&d=https%3A%2F%2Fsecure.gravatar.com%2Favatar%2Fd7a71cabea4d48b35a499dd3a68a5fcb%3Fd%3Dmm%26s%3D48%26noRedirect%3Dtrue",
                                "24x24": "https://avatar-cdn.atlassian.com/d7a71cabea4d48b35a499dd3a68a5fcb?s=24&d=https%3A%2F%2Fsecure.gravatar.com%2Favatar%2Fd7a71cabea4d48b35a499dd3a68a5fcb%3Fd%3Dmm%26s%3D24%26noRedirect%3Dtrue",
                                "16x16": "https://avatar-cdn.atlassian.com/d7a71cabea4d48b35a499dd3a68a5fcb?s=16&d=https%3A%2F%2Fsecure.gravatar.com%2Favatar%2Fd7a71cabea4d48b35a499dd3a68a5fcb%3Fd%3Dmm%26s%3D16%26noRedirect%3Dtrue",
                                "32x32": "https://avatar-cdn.atlassian.com/d7a71cabea4d48b35a499dd3a68a5fcb?s=32&d=https%3A%2F%2Fsecure.gravatar.com%2Favatar%2Fd7a71cabea4d48b35a499dd3a68a5fcb%3Fd%3Dmm%26s%3D32%26noRedirect%3Dtrue"
                            },
                            "displayName": "Paul Cox",
                            "active": true,
                            "timeZone": "America/New_York"
                        },
                        "priority": {
                            "self": "https://sportsrecruits.atlassian.net/rest/api/2/priority/3",
                            "iconUrl": "https://sportsrecruits.atlassian.net/images/icons/priorities/major.svg",
                            "name": "Major",
                            "id": "3"
                        },
                        "status": {
                            "self": "https://sportsrecruits.atlassian.net/rest/api/2/status/10500",
                            "description": "This is managed by JIRA",
                            "iconUrl": "https://sportsrecruits.atlassian.net/images/icons/statuses/generic.png",
                            "name": "QA on stage",
                            "id": "10500",
                            "statusCategory": {
                                "self": "https://sportsrecruits.atlassian.net/rest/api/2/statuscategory/4",
                                "id": 4,
                                "key": "indeterminate",
                                "colorName": "yellow",
                                "name": "In Progress"
                            }
                        }
                    }
                }
            }
            Jan 23, 2018 5:14:04 PM WARNING java_util_logging_Logger$warning$1 call
            Received Webhook callback with an invalid event type or a body without comment/changelog. Event type: comment_created. Event body contains: [timestamp, webhookEvent, comment, issue].
            {code}
            ceilfors Wisen Tanasa made changes -
            Link This issue is duplicated by JENKINS-50443 [ JENKINS-50443 ]
            ceilfors Wisen Tanasa made changes -
            Status Open [ 1 ] In Progress [ 3 ]
            ceilfors Wisen Tanasa made changes -
            Link This issue duplicates JENKINS-49085 [ JENKINS-49085 ]
            Hide
            scm_issue_link SCM/JIRA link daemon added a comment -

            Code changed in jenkins
            User: Wisen Tanasa
            Path:
            src/integrationTest/groovy/com/ceilfors/jenkins/plugins/jiratrigger/JiraTriggerAcceptanceTest.groovy
            src/integrationTest/groovy/com/ceilfors/jenkins/plugins/jiratrigger/integration/FakeJiraCloudRunner.groovy
            src/integrationTest/groovy/com/ceilfors/jenkins/plugins/jiratrigger/integration/FakeJiraRunner.groovy
            src/integrationTest/groovy/com/ceilfors/jenkins/plugins/jiratrigger/integration/JenkinsRunner.groovy
            src/integrationTest/resources/com/ceilfors/jenkins/plugins/jiratrigger/integration/cloudAddComment.json
            http://jenkins-ci.org/commit/jira-trigger-plugin/30fe790579a9023d6601745287c5521bf33df28a
            Log:
            JENKINS-49178 Add failing acceptance test.

            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Wisen Tanasa Path: src/integrationTest/groovy/com/ceilfors/jenkins/plugins/jiratrigger/JiraTriggerAcceptanceTest.groovy src/integrationTest/groovy/com/ceilfors/jenkins/plugins/jiratrigger/integration/FakeJiraCloudRunner.groovy src/integrationTest/groovy/com/ceilfors/jenkins/plugins/jiratrigger/integration/FakeJiraRunner.groovy src/integrationTest/groovy/com/ceilfors/jenkins/plugins/jiratrigger/integration/JenkinsRunner.groovy src/integrationTest/resources/com/ceilfors/jenkins/plugins/jiratrigger/integration/cloudAddComment.json http://jenkins-ci.org/commit/jira-trigger-plugin/30fe790579a9023d6601745287c5521bf33df28a Log: JENKINS-49178 Add failing acceptance test.
            Hide
            scm_issue_link SCM/JIRA link daemon added a comment -

            Code changed in jenkins
            User: Wisen Tanasa
            Path:
            src/integrationTest/groovy/com/ceilfors/jenkins/plugins/jiratrigger/JiraTriggerAcceptanceTest.groovy
            src/integrationTest/resources/com/ceilfors/jenkins/plugins/jiratrigger/integration/cloudAddComment.json
            src/jiraIntegrationTest/groovy/com/ceilfors/jenkins/plugins/jiratrigger/integration/RealJiraSetupRule.groovy
            src/main/groovy/com/ceilfors/jenkins/plugins/jiratrigger/webhook/JiraWebhook.groovy
            src/main/groovy/com/ceilfors/jenkins/plugins/jiratrigger/webhook/WebhookChangelogEventJsonParser.groovy
            src/main/groovy/com/ceilfors/jenkins/plugins/jiratrigger/webhook/WebhookCommentEventJsonParser.groovy
            src/main/groovy/com/ceilfors/jenkins/plugins/jiratrigger/webhook/WebhookJsonParserUtils.groovy
            src/test/groovy/com/ceilfors/jenkins/plugins/jiratrigger/webhook/JiraWebhookTest.groovy
            src/test/resources/com/ceilfors/jenkins/plugins/jiratrigger/webhook/cloud_comment_added.json
            http://jenkins-ci.org/commit/jira-trigger-plugin/bb6e048eb5c2a6f670e37c512a4f825f1965b174
            Log:
            JENKINS-49178 Support JIRA Cloud comment event.

            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Wisen Tanasa Path: src/integrationTest/groovy/com/ceilfors/jenkins/plugins/jiratrigger/JiraTriggerAcceptanceTest.groovy src/integrationTest/resources/com/ceilfors/jenkins/plugins/jiratrigger/integration/cloudAddComment.json src/jiraIntegrationTest/groovy/com/ceilfors/jenkins/plugins/jiratrigger/integration/RealJiraSetupRule.groovy src/main/groovy/com/ceilfors/jenkins/plugins/jiratrigger/webhook/JiraWebhook.groovy src/main/groovy/com/ceilfors/jenkins/plugins/jiratrigger/webhook/WebhookChangelogEventJsonParser.groovy src/main/groovy/com/ceilfors/jenkins/plugins/jiratrigger/webhook/WebhookCommentEventJsonParser.groovy src/main/groovy/com/ceilfors/jenkins/plugins/jiratrigger/webhook/WebhookJsonParserUtils.groovy src/test/groovy/com/ceilfors/jenkins/plugins/jiratrigger/webhook/JiraWebhookTest.groovy src/test/resources/com/ceilfors/jenkins/plugins/jiratrigger/webhook/cloud_comment_added.json http://jenkins-ci.org/commit/jira-trigger-plugin/bb6e048eb5c2a6f670e37c512a4f825f1965b174 Log: JENKINS-49178 Support JIRA Cloud comment event.
            Hide
            scm_issue_link SCM/JIRA link daemon added a comment -

            Code changed in jenkins
            User: Wisen Tanasa
            Path:
            README.md
            http://jenkins-ci.org/commit/jira-trigger-plugin/a4203aac5c718b8b23bc401cfb99993525ea571d
            Log:
            JENKINS-49178 Update README to setup JIRA Cloud.

            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Wisen Tanasa Path: README.md http://jenkins-ci.org/commit/jira-trigger-plugin/a4203aac5c718b8b23bc401cfb99993525ea571d Log: JENKINS-49178 Update README to setup JIRA Cloud.
            Hide
            scm_issue_link SCM/JIRA link daemon added a comment -

            Code changed in jenkins
            User: Wisen Tanasa
            Path:
            src/main/groovy/com/ceilfors/jenkins/plugins/jiratrigger/webhook/WebhookChangelogEventJsonParser.groovy
            src/main/groovy/com/ceilfors/jenkins/plugins/jiratrigger/webhook/WebhookCommentEventJsonParser.groovy
            src/main/groovy/com/ceilfors/jenkins/plugins/jiratrigger/webhook/WebhookJsonParserUtils.groovy
            http://jenkins-ci.org/commit/jira-trigger-plugin/e3eb73b12a0aa1c7a90562beadfed881dcbb2faa
            Log:
            JENKINS-49178 Refactor variable names.

            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Wisen Tanasa Path: src/main/groovy/com/ceilfors/jenkins/plugins/jiratrigger/webhook/WebhookChangelogEventJsonParser.groovy src/main/groovy/com/ceilfors/jenkins/plugins/jiratrigger/webhook/WebhookCommentEventJsonParser.groovy src/main/groovy/com/ceilfors/jenkins/plugins/jiratrigger/webhook/WebhookJsonParserUtils.groovy http://jenkins-ci.org/commit/jira-trigger-plugin/e3eb73b12a0aa1c7a90562beadfed881dcbb2faa Log: JENKINS-49178 Refactor variable names.
            Hide
            scm_issue_link SCM/JIRA link daemon added a comment -
            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Wisen Tanasa Path: CHANGELOG.md http://jenkins-ci.org/commit/jira-trigger-plugin/61aed0fe7640d9d333a600312bda5fcc2c25681b Log: Add JENKINS-49178 to CHANGELOG. Compare: https://github.com/jenkinsci/jira-trigger-plugin/compare/30fe790579a9 ^...61aed0fe7640
            Hide
            ceilfors Wisen Tanasa added a comment -

            Fix is released under version 0.6.0. Do note that there's a breaking change under that version that's documented in the CHANGELOG.md.

            CC: Patrick Ng Dmitriy Kagarlickij Rathishan P Do let me know if the fix is not working for you.

            Show
            ceilfors Wisen Tanasa added a comment - Fix is released under version 0.6.0. Do note that there's a breaking change under that version that's documented in the CHANGELOG.md . CC: Patrick Ng Dmitriy Kagarlickij Rathishan P Do let me know if the fix is not working for you.
            ceilfors Wisen Tanasa made changes -
            Status In Progress [ 3 ] Resolved [ 5 ]
            Resolution Fixed [ 1 ]

              People

              • Assignee:
                ceilfors Wisen Tanasa
                Reporter:
                ceilfors Wisen Tanasa
              • Votes:
                0 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: