Hi,
I am trying to add an existing Issue type to a existing issue type schemes in specific projects.
I am trying o use scriptrunner for that, I can access the Issue type and the Issue type scheme.
But I haven't found any method to add this issue type to the project issue type scheme.
I will appreciate any help .
Many thanks
Hi @Jose Suanzes welcome on the community. I think you can use IssueTypeSchemeManager component (https://docs.atlassian.com/software/jira/docs/api/8.0.0/com/atlassian/jira/issue/fields/config/manager/IssueTypeSchemeManager.html).
There are following methods which might be interesting for you
SO it might be
Hi @Martin Bayer _MoroSystems_ s_r_o__
When I am calling to update I am getting the following error:
groovy.lang.MissingMethodException: No signature of method: Script35.update() is applicable for argument types: (com.atlassian.jira.issue.fields.config.FieldConfigSchemeImpl, ArrayList) values: [com.atlassian.jira.issue.fields.config.FieldConfigSchemeImpl@2083baf3, ...]
Possible solutions: putAt(java.lang.String, java.lang.Object)
at com.onresolve.scriptrunner.runner.rest.common.CustomEndpointDelegate.methodMissing(CustomEndpointDelegate.groovy:28)
at Script35.run(Script35.groovy:112)
Any idea what can be wrong?
Many thanks
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi @Jose Suanzes can you share the script?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
something like this:
def KEY_NEW_PROJECT = "YEYG"
Project project = ComponentAccessor.getProjectManager()getProjectObjByKey(KEY_NEW_PROJECT);
IssueTypeSchemeManager its = ComponentAccessor.getIssueTypeSchemeManager();
FieldConfigScheme p = its.getConfigScheme(project);
Collection<IssueType> Itsm = ComponentAccessor.getIssueTypeSchemeManager().getIssueTypesForProject(project);
Collection<String> collection = Itsm.eachWithIndex { val, idx -> println "$val in position $idx" }.id ;
collection.add(11800)
update(p,collection);
regards
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi @Jose Suanzes , We had the same requirement. Try this it worked for us.
try by running the below snippet.
I made 2 changes, id 11800 must be string and update method needs to be invoked on its (object of IssueTypeSchemeManager )
def KEY_NEW_PROJECT = "YEYG"
Project project = ComponentAccessor.getProjectManager()getProjectObjByKey(KEY_NEW_PROJECT);
IssueTypeSchemeManager its = ComponentAccessor.getIssueTypeSchemeManager();
FieldConfigScheme p = its.getConfigScheme(project);
Collection<IssueType> Itsm = ComponentAccessor.getIssueTypeSchemeManager().getIssueTypesForProject(project);
Collection<String> collection = Itsm.eachWithIndex { val, idx -> println "$val in position $idx" }.id ;
collection.add(11800)
collection.add('11800')
update(p,collection);
its.update(p,collection);
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi @Kesaboina BMV Sai Krishna ,
The above mentioned script runs if only 1 project is specified in the "def KEY_NEW_PROJECT" section.Instead of running it for a single project at a time is there a way to run it on multiple projects and execute the scrpit in a single go,Can you guide me in this problem.
Thanks & Regards,
Ganesh
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi @Ganesh Choubey D general groovy case is to create list
List projects =['ke1', 'key2'....]
and iterate through it. For example
projects.each{KEY_NEW_PROJECT ->
// code above here
}
or real Jira case is to iterate through projects category(ies)
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.