We're sending a string to JIRA from another application and storing in a project property ( https://docs.atlassian.com/jira/REST/latest/#api/2/project/{projectIdOrKey}/properties-getPropertiesKeys ). How do you retrieve a property like this in a Scriptrunner post-function and store it in a custom field?
I've seen examples that use curl to make GET calls, but this seems a little silly because the data is already in JIRA (plus it also seems like bad practice to store a password in a workflow post function).
We're on JIRA 6.4 still. I see that there are ready-made postfunctions that can read user properties, but the API method for setting these from another application wasn't introduced until JIRA 7.
Most of the APIs for interacting with custom project properties are in the com.atlassian.core.ofbiz.util package.
The OFBizPropertyUtils class has a getPropertySet method (and more preferred getCachingPropertySet method) that retrieves those sort of values. I've yet to find an example for getting the GenericValue argument that doesn't utilize a deprecated method at some level, so you might prefer the other method signature that takes a string and a long.
If not, the Project class has a deprecated getGenericValue() method that you can use to retrieve the needed Generic value argument. There's also GenericDelegatorUtils class, which can get you a GenericDelegator with. From there,
def gv = genericDelegator.findByAnd("Project", ["id": projectId as Long])?.first()
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.