This is the JSU for Jira Cloud documentation. If you are using JSU on Jira Server or Jira Data Center, see our JSU Server/Data Center documentation.
On this page: |
---|
Description
The Follow Up Transition post function evaluates the workflow conditions of all the next transitions on the target status of the current transition, including global transitions. If exactly one transition is possible, that transition will be triggered as a follow-up. If more than one transition is possible, JSU cannot determine which to use as the follow-up transition. To learn more about global transitions in Jira workflows, see Atlassian’s https://support.atlassian.com/jira-cloud-administration/docs/configure-advanced-issue-workflows/#Global-transitions.
See Workflow post functions to learn how to add a JSU post function to a Jira workflow.
Configuration
The Follow Up Transition post function has no additional parameters to configure, however, you must have at least one workflow condition configured.
Use case
Our issue has a mandatory number custom field.
At the end of the Go transition, we have configured a Follow Up Transition post function.
Each transition leading away from the status JUNCTION has a workflow condition:
Under Five has the condition: Number field < 5?
Exactly Five has the condition: Number field == 5?
Over Five has the condition: Number field > 5?
When a user performs the Go transition, this will always trigger a follow-up transition.
For example, if a user enters Number=3 during the Go transition, this leads to the IN PROGRESS status. If they enter 42, this leads to CLOSED.
We configured our workflow conditions so that only ever one condition can be true. This way, the user will never be stuck at the JUNCTION status.
Conditions
Use conditions to ensure that only ever one transition is possible for the follow-up transition. Let's continue the example from above, where a number field is evaluated. We will configure three conditions; one for each outgoing transition from the JUNCTION status.
Under Five
Exactly Five
Over Five
Simple Yes / No example
A simpler use case is when there are only two transitions leading from status and you evaluate the same condition; one condition is negated.
a == b?
You can use Jira’s Value Field condition for this setup.
Check it: Follow Up Transition post function.
Yes: Condition a == b?
No: Condition a != b?
Fast forward example
Some extra steps in your workflow might only be necessary if a condition is not fulfilled. Otherwise, that step could be skipped.
Management approval
See the Streamline an approval process use case for another example.
You can learn more about workflow conditions in Atlassian’s Configure Advanced Issue Workflows article.
Troubleshooting
Problem: Workflow is blocked at the Junction status
Cause: Not exactly one condition
Usually, the problem can be tracked down by reviewing the expected outcome of the post function;
if exactly one condition is valid, the corresponding transition will be triggered.
It's important to do your analysis with the same user that encountered the problem. There might be issues with permissions that could lead to a different result, depending on the user performing the transition.
Consider an issue blocked at the Junction status: How many transition buttons does it have? If you have none or more than one transition, review your workflow conditions on the transitions leading out from the JUNCTION status.
If there is only one button, there might be something wrong with that transition. For example, a validator could prevent the transition from getting completed.
Cause: Triggered transition fails
Another reason might be that the triggered transition does not run. For example, if it has a validator that fails.
Infinite Loop Detection
An infinite loop can occur when executing the Follow Up Transition post function. An infinite loop results in an endless cycle of issue creation and follow-up transitions following the triggering of the origin issue. When a loop is detected JSU will stop the execution and log an execution failure.
When using post functions that create issues or follow-up transitions, consider the outcome of the rule and the user permissions of your project teams. You can also use preconditions to restrict when rules are run to reduce the likelihood of causing an infinite loop. Learn more about how JSU identifies an infinite loop in Infinite Loop Detection .