get/evaluate workflow condition via scripted field

Daniel Morris April 29, 2014

Hi All,

This may not be possible but what i want to do is effectively show on the issue screen why a conditional transition is missing without duplicating the condition from the workflow into a script. So ideally i want to be able to get the workflow the issue is using, find the correct linked status and then interrogate the transitions from the status to return the conditions on each transition and then interrogate those in turn? I'm not entirely sure this is feasible. Could someone provide some advice regarding this?

I've been looking through the JIRA apis but i just can't see how to get those conditions to even begin to fathom how to interrogate them. I think i am just missing something obvious here that suggests you cannot do this from a scripted field, if this is the case confirmation would be great.

Thanks in advance!

1 answer

1 accepted

1 vote
Answer accepted
JamieA
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
April 29, 2014

It's doable, you can get the workflow descriptor from the issue, get the current state, find all outgoing actions, and get their conditions.

Then you need to call passesCondition for every condition, and retrieve the result, then you can format it nicely. It will probably work fine, but I don't really recommend it because the code to get the value from a field runs so often. I can find example code if you need it though.

I would recommend writing a plugin with an issue tab panel, whose code only runs when the panel is displayed. If you have money, I've tested this plugin, and it works: https://marketplace.atlassian.com/plugins/com.intenso.jira.plugins.condval.intenso-conditions-validator

Daniel Morris April 30, 2014

Thanks Jamie, i wasn't aware of that plugin but as you say it looks like it does what we need and looks a better option than the scripted field. I'll give it a go. Thanks a lot!

Suggest an answer

Log in or Sign up to answer