If you were logged in you would be able to see more operations.
|
|
|
QuickBuild
Created: 05/Apr/16 10:57 AM
Updated: 14/Apr/16 01:51 AM
|
|
|
Component/s: |
None
|
Affects Version/s: |
6.1.9
|
Fix Version/s: |
6.1.12
|
|
Original Estimate:
|
Unknown
|
Remaining Estimate:
|
Unknown
|
Time Spent:
|
Unknown
|
File Attachments:
|
None
|
Image Attachments:
|
|
|
After upgrading from QB 6.0.35 to QB 6.1 the Jira issue creation step is not working anymore.
We have a step that creates a issue of type Bug.
A Bug has a mandatory custom field (id 12900).
In the "extra attributes" field of the "create Jira issue" step, I have: 12900=${vars.getValue("branchName") == "trunk" ? "DEV" : "SPRINT"}
This now throws an exception.
It works, if I use another issue type (like Research) which doesn't require a custom field to be set. So it has definitely something to do with the custom field.
I tried different options:
customfield_12900=${vars.getValue("branchName") == "trunk" ? "DEV" : "SPRINT"}
customfield_12900=DEV
but I always get this error:
{code}
12:52:00,343 INFO - Running step...
12:52:00,353 INFO - Start creating issue for project APM
12:52:01,859 WARN - Unknown or unsupported field: project
12:52:06,216 INFO - Executing post-execute action...
12:52:06,216 ERROR - Step 'master>createJiraIssue' is failed.
com.pmease.quickbuild.plugin.tracker.core.TrackerException: RestClientException{statusCode=Optional.of(400), errorCollections=[ErrorCollection{status=400, errors={customfield_12900=Could not find valid 'id' or 'value' in the Parent Option object.}, errorMessages=[]}]}
at com.pmease.quickbuild.plugin.tracker.jira.client.RestJiraClient.createIssue(RestJiraClient.java:403)
at com.pmease.quickbuild.plugin.tracker.jira.step.CreateIssueStep.run(CreateIssueStep.java:257)
at com.pmease.quickbuild.plugin.tracker.jira.step.CreateIssueStep$$EnhancerByCGLIB$$99bc6d22.CGLIB$run$0(<generated>)
at com.pmease.quickbuild.plugin.tracker.jira.step.CreateIssueStep$$EnhancerByCGLIB$$99bc6d22$$FastClassByCGLIB$$64110c88.invoke(<generated>)
at net.sf.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:215)
at com.pmease.quickbuild.DefaultScriptEngine$Interpolator.intercept(DefaultScriptEngine.java:261)
at com.pmease.quickbuild.plugin.tracker.jira.step.CreateIssueStep$$EnhancerByCGLIB$$99bc6d22.run(<generated>)
at com.pmease.quickbuild.stepsupport.Step.execute(Step.java:548)
at com.pmease.quickbuild.stepsupport.StepExecutionJob.executeStepAwareJob(StepExecutionJob.java:31)
at com.pmease.quickbuild.stepsupport.StepAwareJob.executeBuildAwareJob(StepAwareJob.java:45)
at com.pmease.quickbuild.BuildAwareJob.execute(BuildAwareJob.java:60)
at com.pmease.quickbuild.grid.GridJob.run(GridJob.java:106)
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:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: RestClientException{statusCode=Optional.of(400), errorCollections=[ErrorCollection{status=400, errors={customfield_12900=Could not find valid 'id' or 'value' in the Parent Option object.}, errorMessages=[]}]}
at com.atlassian.jira.rest.client.internal.async.DelegatingPromise.claim(DelegatingPromise.java:47)
at com.pmease.quickbuild.plugin.tracker.jira.client.RestJiraClient.createIssue(RestJiraClient.java:401)
... 16 more
Caused by: RestClientException{statusCode=Optional.of(400), errorCollections=[ErrorCollection{status=400, errors={customfield_12900=Could not find valid 'id' or 'value' in the Parent Option object.}, errorMessages=[]}]}
at com.atlassian.jira.rest.client.internal.async.AbstractAsynchronousRestClient$2.apply(AbstractAsynchronousRestClient.java:173)
at com.atlassian.jira.rest.client.internal.async.AbstractAsynchronousRestClient$2.apply(AbstractAsynchronousRestClient.java:167)
at com.atlassian.httpclient.api.ResponsePromiseMapFunction.apply(ResponsePromiseMapFunction.java:48)
at com.atlassian.httpclient.api.ResponsePromiseMapFunction.apply(ResponsePromiseMapFunction.java:12)
at com.atlassian.util.concurrent.Promises$Of$3.apply(Promises.java:295)
at com.atlassian.util.concurrent.Promises$2.onSuccess(Promises.java:185)
at com.google.common.util.concurrent.Futures$4.run(Futures.java:1154)
at com.google.common.util.concurrent.MoreExecutors$SameThreadExecutorService.execute(MoreExecutors.java:293)
at com.google.common.util.concurrent.ExecutionList$RunnableExecutorPair.execute(ExecutionList.java:150)
at com.google.common.util.concurrent.ExecutionList.execute(ExecutionList.java:135)
at com.google.common.util.concurrent.AbstractFuture.set(AbstractFuture.java:185)
at com.google.common.util.concurrent.SettableFuture.set(SettableFuture.java:53)
at com.atlassian.util.concurrent.Promises$Of$3.apply(Promises.java:295)
at com.atlassian.util.concurrent.Promises$2.onSuccess(Promises.java:185)
at com.google.common.util.concurrent.Futures$4.run(Futures.java:1154)
at com.google.common.util.concurrent.MoreExecutors$SameThreadExecutorService.execute(MoreExecutors.java:293)
at com.google.common.util.concurrent.ExecutionList$RunnableExecutorPair.execute(ExecutionList.java:150)
at com.google.common.util.concurrent.ExecutionList.execute(ExecutionList.java:135)
at com.google.common.util.concurrent.AbstractFuture.set(AbstractFuture.java:185)
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
12:52:06,344 INFO - Executing post-execute action...
{code}
|
Description
|
After upgrading from QB 6.0.35 to QB 6.1 the Jira issue creation step is not working anymore.
We have a step that creates a issue of type Bug.
A Bug has a mandatory custom field (id 12900).
In the "extra attributes" field of the "create Jira issue" step, I have: 12900=${vars.getValue("branchName") == "trunk" ? "DEV" : "SPRINT"}
This now throws an exception.
It works, if I use another issue type (like Research) which doesn't require a custom field to be set. So it has definitely something to do with the custom field.
I tried different options:
customfield_12900=${vars.getValue("branchName") == "trunk" ? "DEV" : "SPRINT"}
customfield_12900=DEV
but I always get this error:
{code}
12:52:00,343 INFO - Running step...
12:52:00,353 INFO - Start creating issue for project APM
12:52:01,859 WARN - Unknown or unsupported field: project
12:52:06,216 INFO - Executing post-execute action...
12:52:06,216 ERROR - Step 'master>createJiraIssue' is failed.
com.pmease.quickbuild.plugin.tracker.core.TrackerException: RestClientException{statusCode=Optional.of(400), errorCollections=[ErrorCollection{status=400, errors={customfield_12900=Could not find valid 'id' or 'value' in the Parent Option object.}, errorMessages=[]}]}
at com.pmease.quickbuild.plugin.tracker.jira.client.RestJiraClient.createIssue(RestJiraClient.java:403)
at com.pmease.quickbuild.plugin.tracker.jira.step.CreateIssueStep.run(CreateIssueStep.java:257)
at com.pmease.quickbuild.plugin.tracker.jira.step.CreateIssueStep$$EnhancerByCGLIB$$99bc6d22.CGLIB$run$0(<generated>)
at com.pmease.quickbuild.plugin.tracker.jira.step.CreateIssueStep$$EnhancerByCGLIB$$99bc6d22$$FastClassByCGLIB$$64110c88.invoke(<generated>)
at net.sf.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:215)
at com.pmease.quickbuild.DefaultScriptEngine$Interpolator.intercept(DefaultScriptEngine.java:261)
at com.pmease.quickbuild.plugin.tracker.jira.step.CreateIssueStep$$EnhancerByCGLIB$$99bc6d22.run(<generated>)
at com.pmease.quickbuild.stepsupport.Step.execute(Step.java:548)
at com.pmease.quickbuild.stepsupport.StepExecutionJob.executeStepAwareJob(StepExecutionJob.java:31)
at com.pmease.quickbuild.stepsupport.StepAwareJob.executeBuildAwareJob(StepAwareJob.java:45)
at com.pmease.quickbuild.BuildAwareJob.execute(BuildAwareJob.java:60)
at com.pmease.quickbuild.grid.GridJob.run(GridJob.java:106)
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:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: RestClientException{statusCode=Optional.of(400), errorCollections=[ErrorCollection{status=400, errors={customfield_12900=Could not find valid 'id' or 'value' in the Parent Option object.}, errorMessages=[]}]}
at com.atlassian.jira.rest.client.internal.async.DelegatingPromise.claim(DelegatingPromise.java:47)
at com.pmease.quickbuild.plugin.tracker.jira.client.RestJiraClient.createIssue(RestJiraClient.java:401)
... 16 more
Caused by: RestClientException{statusCode=Optional.of(400), errorCollections=[ErrorCollection{status=400, errors={customfield_12900=Could not find valid 'id' or 'value' in the Parent Option object.}, errorMessages=[]}]}
at com.atlassian.jira.rest.client.internal.async.AbstractAsynchronousRestClient$2.apply(AbstractAsynchronousRestClient.java:173)
at com.atlassian.jira.rest.client.internal.async.AbstractAsynchronousRestClient$2.apply(AbstractAsynchronousRestClient.java:167)
at com.atlassian.httpclient.api.ResponsePromiseMapFunction.apply(ResponsePromiseMapFunction.java:48)
at com.atlassian.httpclient.api.ResponsePromiseMapFunction.apply(ResponsePromiseMapFunction.java:12)
at com.atlassian.util.concurrent.Promises$Of$3.apply(Promises.java:295)
at com.atlassian.util.concurrent.Promises$2.onSuccess(Promises.java:185)
at com.google.common.util.concurrent.Futures$4.run(Futures.java:1154)
at com.google.common.util.concurrent.MoreExecutors$SameThreadExecutorService.execute(MoreExecutors.java:293)
at com.google.common.util.concurrent.ExecutionList$RunnableExecutorPair.execute(ExecutionList.java:150)
at com.google.common.util.concurrent.ExecutionList.execute(ExecutionList.java:135)
at com.google.common.util.concurrent.AbstractFuture.set(AbstractFuture.java:185)
at com.google.common.util.concurrent.SettableFuture.set(SettableFuture.java:53)
at com.atlassian.util.concurrent.Promises$Of$3.apply(Promises.java:295)
at com.atlassian.util.concurrent.Promises$2.onSuccess(Promises.java:185)
at com.google.common.util.concurrent.Futures$4.run(Futures.java:1154)
at com.google.common.util.concurrent.MoreExecutors$SameThreadExecutorService.execute(MoreExecutors.java:293)
at com.google.common.util.concurrent.ExecutionList$RunnableExecutorPair.execute(ExecutionList.java:150)
at com.google.common.util.concurrent.ExecutionList.execute(ExecutionList.java:135)
at com.google.common.util.concurrent.AbstractFuture.set(AbstractFuture.java:185)
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
12:52:06,344 INFO - Executing post-execute action...
{code} |
Show » |
|
yeah, it works fine with the option IDs.
As written in my previous comment, I already figured out the IDs and it works now.
Thx