Our new Appfire Documentation Space is now live!

Take a look here! If you have any questions please email support@appfire.com

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 125 Next »

This section has use cases which help you understand the usage of the Conditions provided by JMWE.

On this page:


Current Status Condition

This condition can be used to hide/show a particular transition from the list of available workflow actions, based on the current status of the issue. 

Sample use cases:

  • (lightbulb) Disable a global transition from certain statuses

     Steps
    • Add the Current status condition to the transition.
    • Select the statuses from which the Global transition should be disabled from the Current Status field.

Previous Status Condition

This condition can be used to hide/show a particular transition from the list of available workflow actions, based on the previous status of the issue.

Sample use cases:

  • (lightbulb) Every task should be self-reviewed before passing it to the Project lead for a Peer-Review.

     Steps
    • Add the Previous status condition to the transition leading to Peer-Review status.
    • Select Self-Reviewed from the Previous Status field.
    • Check the Most recent status only and Include current status options.
  • (lightbulb) I have statuses "Open" and "In Progress" that can transition to "Information Requested" status. I want to offer an identically named transition back to the originating status

     Steps
    • Create "Provide Information" transition from Information Requested status to Open status.
    • Create "Provide Information " transition from Information Requested status to In Progress status. Add a space at the end of this transition so that JIRA doesn't complain about duplicate transition names.
    • On the Provide Information transition from Information Requested to Open status add Previous Status Condition to make the transition available only if the previous status was Open
      • Select Open as the Previous status
      • Select Most recent status only
    • On the Provide Information transition from Information Requested to In Progress status add Previous Status Condition to make the transition available only if the previous status was In Progress
      • Select In Progress as the Previous status
      • Select Most recent status only

Separation of Duties condition

This condition can be used to enforce separation of duties (for SAS-70 compliance), i.e. to make sure that the same user cannot trigger two incompatible transitions on the same issue.

Sample use cases:

  • (lightbulb) Prevent a user who has triggered the "Resolve Issue" transition on an issue to trigger the "Close issue" transition.

     Steps
    • Add the Separation of duties condition to the Close issue transition.
    • Select the from_status of the Resolve issue transition from the From Status drop-down.
    • Select the to_status of the Resolve issue transition from the To Status drop-down.

Hide transition

This condition can be used to hide a transition from the user, so that it can only be triggered by a Transition Issue or Transition Linked Issues post-function.

Sample use cases:

  • (lightbulb) Post-functions which transition an issue have a known limitation that the transition should not be associated with any transition screen. How to overcome this?

     Steps
    • Create a duplicate of the original transition without the transition screen.
    • Add the Hide transition condition to this new transition.
    • When you want to trigger the original transition using a post-function, use this new transition instead.
  • (lightbulb) I want to hide a transition "Escalate" that gets auto-triggered when a code fix has been rejected.

     Steps
    • Add the Hide transition condition to the Escalate transition.

Scripted (Groovy) Condition

This condition can be used to hide/show a transition based on a Groovy expression

Sample use cases:

  • (lightbulb) Only the Reporter of the issue should be able to close the issue. 

     Steps
    • Add the Scripted (Groovy) condition to the Close issue transition.
    • Write this content in the Groovy script.

      currentUser.equals(issue.get("reporter"))
  • (lightbulb) Hide the transition from the current user if he does not belong to the Approvers

     Steps
    • Add the Scripted (Groovy) condition to the transition you wish to hide
    • Write this content in the Groovy script.

      issue.get("Approvers").any {
        it.getName() == currentUser.getName()}
  • (lightbulb) Block the transition when the Time to resolution is breached.

     Steps
    • Add the Scripted (Groovy) condition to the transition you wish to hide
    • Write this content in the Groovy script.

      issue.getAsJsonData("Time to resolution").getData()?.getOngoingCycle()?.getBreached()

Related Issues Status Condition

This condition can be used to hide/show a particular transition from the list of available transitions, based on the status of the issue's related issues. 

Sample use cases:

  • (lightbulb) Hide the "Close" transition of the Epic until all its Stories are closed.

     Steps
    • Add the Related Issues Status condition to the Close transition.
    • Select Epic of the current issue in Which Issue(s)

    • Select the statuses the linked issues must be in from Statuses

Related Issues Condition

This condition can be used to hide/show a particular transition from the list of available transitions, based on the issue's related issues. 

Sample use cases:

  • (lightbulb) Hide the transition "In Progress" on an issue until it has at least 1 subtask under it

     Steps
    • Add the Related Issue condition to the Create transition.
    • Select Sub-tasks of the current issue option under Which issue(s)

    • Add the condition
  • No labels