-
Type:
Improvement
-
Resolution: Postponed
-
Priority:
Minor
-
Component/s: jira-plugin
-
None
-
Environment:Jenkins ver. 2.89.2
JIRA Plugin 2.5
I want to add a JIRA label to a JIRA ticket based on the scm changes as described in
https://github.com/jenkinsci/jira-plugin/blob/master/COMPATIBILITY.md
step([$class: 'hudson.plugins.jira.JiraIssueUpdater',
                        issueSelector: [$class: 'hudson.plugins.jira.selector.DefaultIssueSelector'],
                        scm: scm,
                        labels: [ "dev","test" ]]) Â
The tickets gets updated, but the labels stay unchanged
00:03:23.317 [Build services and clients] [JIRA] Updating issue SERVICE-2559
Â
The configured user has edit rights.
I see the following error in the jenkins logs:
Dec 22, 2017 3:53:28 PM hudson.plugins.jira.JiraRestService setIssueLabels
WARNING: jira rest client update labels error for issue SERVICE-2559
java.util.concurrent.ExecutionException: RestClientException{statusCode=Optional.of(400), errorCollections=[ErrorCollection{status=400, errors={}, errorMessages=[No content to map to Object due to end of
input]}]}
       at com.google.common.util.concurrent.AbstractFuture$Sync.getValue(AbstractFuture.java:289)
       at com.google.common.util.concurrent.AbstractFuture$Sync.get(AbstractFuture.java:262)
       at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:91)
       at com.google.common.util.concurrent.ForwardingFuture.get(ForwardingFuture.java:69)
       at com.atlassian.jira.rest.client.internal.async.DelegatingPromise.get(DelegatingPromise.java:107)
       at hudson.plugins.jira.JiraRestService.setIssueLabels(JiraRestService.java:299)
       at hudson.plugins.jira.JiraSession.addLabels(JiraSession.java:99)
       at hudson.plugins.jira.Updater.submitComments(Updater.java:169)
       at hudson.plugins.jira.Updater.perform(Updater.java:119)
       at hudson.plugins.jira.JiraIssueUpdater.perform(JiraIssueUpdater.java:67)
       at org.jenkinsci.plugins.workflow.steps.CoreStep$Execution.run(CoreStep.java:80)
       at org.jenkinsci.plugins.workflow.steps.CoreStep$Execution.run(CoreStep.java:67)
       at org.jenkinsci.plugins.workflow.steps.SynchronousNonBlockingStepExecution$1$1.call(SynchronousNonBlockingStepExecution.java:49)
       at hudson.security.ACL.impersonate(ACL.java:260)
       at org.jenkinsci.plugins.workflow.steps.SynchronousNonBlockingStepExecution$1.run(SynchronousNonBlockingStepExecution.java:46)
       at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
       at java.util.concurrent.FutureTask.run(FutureTask.java:266)
       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)
Caused by: RestClientException{statusCode=Optional.of(400), errorCollections=[ErrorCollection{status=400, errors={}, errorMessages=[No content to map to Object due to end of input]}]}
       at com.atlassian.jira.rest.client.internal.async.AbstractAsynchronousRestClient$2.apply(AbstractAsynchronousRestClient.java:176)
       at com.atlassian.jira.rest.client.internal.async.AbstractAsynchronousRestClient$2.apply(AbstractAsynchronousRestClient.java:170)
       at com.atlassian.httpclient.api.ResponsePromiseMapFunction.apply(ResponsePromiseMapFunction.java:67)
       at com.atlassian.httpclient.api.ResponsePromiseMapFunction.apply(ResponsePromiseMapFunction.java:11)
       at com.atlassian.util.concurrent.Promises$Of$3.apply(Promises.java:268)
       at com.atlassian.util.concurrent.Promises$2.onSuccess(Promises.java:158)
       at com.google.common.util.concurrent.Futures$6.run(Futures.java:975)
       at com.google.common.util.concurrent.MoreExecutors$SameThreadExecutorService.execute(MoreExecutors.java:253)
       at com.google.common.util.concurrent.ExecutionList$RunnableExecutorPair.execute(ExecutionList.java:149)
       at com.google.common.util.concurrent.ExecutionList.execute(ExecutionList.java:134)
       at com.google.common.util.concurrent.AbstractFuture.set(AbstractFuture.java:170)
       at com.google.common.util.concurrent.SettableFuture.set(SettableFuture.java:53)
       at com.atlassian.util.concurrent.Promises$Of$3.apply(Promises.java:268)
       at com.atlassian.util.concurrent.Promises$2.onSuccess(Promises.java:158)
       at com.google.common.util.concurrent.Futures$6.run(Futures.java:975)
       at com.google.common.util.concurrent.MoreExecutors$SameThreadExecutorService.execute(MoreExecutors.java:253)
       at com.google.common.util.concurrent.ExecutionList$RunnableExecutorPair.execute(ExecutionList.java:149)
       at com.google.common.util.concurrent.ExecutionList.execute(ExecutionList.java:134)
       at com.google.common.util.concurrent.AbstractFuture.set(AbstractFuture.java:170)
       at com.google.common.util.concurrent.SettableFuture.set(SettableFuture.java:53)
       at com.atlassian.httpclient.apache.httpcomponents.SettableFuturePromiseHttpPromiseAsyncClient$1$1.run(SettableFuturePromiseHttpPromiseAsyncClient.java:46)
       at com.atlassian.httpclient.apache.httpcomponents.SettableFuturePromiseHttpPromiseAsyncClient$ThreadLocalDelegateRunnable$1.run(SettableFuturePromiseHttpPromiseAsyncClient.java:197)
       at com.atlassian.httpclient.apache.httpcomponents.SettableFuturePromiseHttpPromiseAsyncClient.runInContext(SettableFuturePromiseHttpPromiseAsyncClient.java:90)
       at com.atlassian.httpclient.apache.httpcomponents.SettableFuturePromiseHttpPromiseAsyncClient$ThreadLocalDelegateRunnable.run(SettableFuturePromiseHttpPromiseAsyncClient.java:192)
       ... 3 more
Â