Craft a service to refresh a certain set of project-level data in JIRA. (Version dates to be specific.) Fun facts about this service:
And it's this plugin that's currently the crux of my question. I found this code snippet that explains the proper API call for the plugin, but it assumes you're calling it from a listener or post-function and not a service:
import com.atlassian.jira.ComponentManager import com.atlassian.jira.issue.comments.CommentManager import com.opensymphony.workflow.WorkflowContext import com.atlassian.plugin.osgi.container.OsgiContainerManager import org.apache.log4j.Category OsgiContainerManager osgiManager = ComponentManager.getInstance().getComponentInstanceOfType(OsgiContainerManager.class) issue.setDescription(osgiManager.getServiceTracker("com.osoboo.jira.metadata.MetadataService").getService().getMetadataValue(issue.getProjectObject(), "accounting.code"))
What I'm really looking for is some API call with this plugin that returns an object of type Project when given a custom field name and custom field value.
1. your script-snipplet should work with Groovy Runner.
2. you should ask the ProjectManager to get the Project (Project Object)
getProjectManager().getProjectObjByKey("ProjectKey") (see: http://docs.atlassian.com/jira/latest/com/atlassian/jira/project/ProjectManager.html and http://docs.atlassian.com/jira/latest/com/atlassian/jira/ComponentManager.html)
3. you can change the medatadata value (custom project field) via api call
).getService().save(issue.getProjectObject(), "accounting.code", "the new value"); (see: https://studio.plugins.atlassian.com/source/browse/JMETA/trunk/jira.metadata.plugin/src/main/java/com/osoboo/jira/metadata/MetadataService.java?hb=true)
hope this will help you out
Thanks, Andreas. We're getting there, but it's not quite what I'm looking for. My source data contains a whole list of projects. This data is tied to the data in JIRA by a metadata field called "Theme Key." Ideally, I would make an API call via JIRA Metadata to a method looking something like this:
Project getProject (String customFieldName, String customFieldValue)
My code would never need to modify the metadata only use it to find which project to update. In short, this is what I want my code to do:
Also, Andreas, by the looks of it, this guy might do the trick:
But that's only if:
Atlas Camp is our developer event which will take place in Barcelona, Spain from the 6th -7th of September . This is a great opportunity to meet other developers and get n...
Connect with like-minded Atlassian users at free events near you!Find a group
Connect with like-minded Atlassian users at free events near you!
Unfortunately there are no AUG chapters near you at the moment.Start an AUG