How to express a Transition Issue post function condition?

I would like to set up a post function on a workflow that transitions an issue to a different status if the priority is 'high' or 'emergency'.I have added a post function of type 'transition issue' and chosen 'conditional execution'

 

The project code is TSP. It's important that I include the code in the condition as other projects use this workflow. For the condition I've tried:

(issue.getProjectObject().getKey() = "TSP") && (issue.priority?.name == 'High'||'Emergency')

 

but it doesn't work. Can anyone help me to get the syntax of the condition right and this post function working?

2 answers

At a casual glance, you want to replace "issue.priority?.name == 'High'||'Emergency'" with "['High','Emergency'].contains(issue.priority?.name)".

Or 

issue.priority?.name in ['High','Emergency']

which reads a bit more like spoken language, to me.

Alas I have tried both:

(issue.getProjectObject().getKey() = "TSP") && (['High','Emergency'].contains(issue.priority?.name))

 

and

(issue.getProjectObject().getKey() = "TSP") && (issue.priority?.name in ['High','Emergency'])



but neither have worked. sad

 

I wonder is there some problem with the fact that the post function is on the create transition?

It shouldn't be; the one time I've actually used this, it was on 'create', to transition to "Open" if the submitter was a developer.

Oh, it should be "==", not "=", for the first half of your condition.  Missed that one.

Unfortunately that doesn't work either:

Tried 

(issue.getProjectObject().getKey() == "TSP") && (issue.priority?.name in ['High','Emergency'])

but no luck. It doesn't throw an error or anything, just doesn't perform the transition when I create and set priority to 'High' or 'Emergency'. In any case, I had already tried without the first part to just try to get the priority bit working and even that on its own won't work.

The only other thing I enter in is the transition number from the workflow and can't see how that can be a problem.

At a bit of a loss!

Can you attach a screenshot of the configuration, because I've lost track of what you're trying to do...

I am trying to have issues that are created and give a priority of 'High' or 'Emergency' be transitioned to another status in the workflow (in this case, not 'Open' but a status after that).

I am using a post function on the create step of type 'Transition Issue' with a condition. Here is a screenshot.

TransitionPostFunction.png

two in two minutes. that's not ScriptRunner, it's JIRA misc workflow extensions IIRC.

Not that I would mind answering general questions, it's just originally you used the ScriptRunner labels. And JMWE has a different api (issue.get) that I'm not familar with.

For anyone who stumbles on this, I eventually found the answer thanks to Innovalog support - the syntax that finally worked for me was:

 

issue.get("project").getKey().equals("TSP") && ["High","Emergency"].contains(issue.get("priority").name)

 

 

 

 

Suggest an answer

Log in or Sign up to answer
Community showcase
Posted Tuesday in Jira

Looking for anyone who made the switch to Data Center

The Jira Marketing team is putting together an ebook on migrating to Data Center. We're looking for pro tips on how you staffed your project team and organized your Proof of Concept. Share yo...

39 views 0 2
Join discussion

Atlassian User Groups

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!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you