Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


Excerpt

A workflow post-function that assigns the current issue to the default member of a selected project role. 


To add the 'Assign to role member' post-function to a transition:

  1. Click Edit for the workflow that has the transition you wish to configure the post-function on.
  2. In the Workflow Designer, select the transition.
  3. Click on Post Functions in the properties panel.
  4. Click on Add post function.
  5. Select Assign to role member from the list of post-functions.
  6. Click on Add to configure the post-function on the transition.
    Image RemovedImage Added
  7. Select the project role from the Project Role drop-down.
  8. Select the options provided to add required parameters.
  9. Click on Add to add the post-function to the transition.


Panel

Related links :

For information on where the post-function needs to be placed on a transition, see Placing post-functions on a transition.

Refer to the Use cases for post functions page for use cases for this post-function.


When you add this post-function to a transition and trigger the transition, the add-on checks for the default member of the selected Project Role. If such member is found, it assigns the issue to the fetched user. If not, the issue is assigned to a random member of the selected Project Role. If there are multiple default members, a random member is picked among them.

Note

The easiest is to have only one user in the selected Project Role for each applicable project.


Info

If the selected Project Role can contain more than one user, you should specify how the post-function will identify the default member to use.

Since Jira does not support the notion of a default member for project roles, the Assign to role member function identifies the default member of a project role for a project by going through all the members of the project role looking for a User Property with the following two characteristics:

  • Property key: defaultAssignee
  • Property value: contains a comma-separated list of entries in the form ProjectKey -> *RoleName. *For example: 


TST -> Developers, JMWE -> Testers

For backward compatibility, the following two forms are also supported:

  • Property Key: {ProjectName}x{RoleName} (for example: CoolProjectxQAMembers)
  • Property value: "default" (without the quotes)

Or: (since 1.5.3)

  • Property Key: defaultAssignee{n}  (where n is a number from 1 up, for example: defaultAssignee1)
  • Property value: {ProjectName}x{RoleName} (for example: CoolProjectxQAMembers)

Action

To customize the assignment select any of the following options:

  • Force assignment (default) - Forcibly assigns the issue to the default member of the selected Project Role. In this case, user selected in the Assignee field on the Transition screen (if any) is ignored.
  • Only if "Automatic" - Assigns the issue to the default member of the selected Project Role only if the user selects Automatic in the Assignee field on the Transition screen. If not, the Assignee field will not be modified.
  • Use selected assignee only if member of required role - Assigns the issue to the user selected on the Transition screen, only if the user belongs to the selected Project Role. If not, the Assignee field is not modified.
  • Use selected assignee if changed on the transition screen - Assigns the issue to the default role member of the selected Project Role only if the assignee is not changed (or set to Automatic) on the Transition screen

Conditional execution

To execute this post-function based on the result of a groovy expression see Conditional execution/validation using a Groovy expression.

Error Handling

By default, all errors (Java Exceptions) raised by this post-function, including those raised by custom Groovy scripts, will be logged in the JIRA log file but will not be reported to the user and will not prevent the transition from completing. 

However, when designing new workflows or troubleshooting them, it is more convenient to be notified immediately of any such error during the execution of the transition. On development and staging Jira instances, you can activate error reporting for all JMWE post-functions on the JMWE configuration page, and it is recommended to do so. But on production Jira instances, you might want to show errors only for the post-function(s) being worked on, in order to avoid disrupting other workflows. To make errors raised by the current post-function prevent the transition from completing and show the error in the browser, select Make transition fail when an error occurs in this post-function.