Copy comments to related issues

To add 'Copy comments to linked issues' post-function to a transition : 

  1. Click Edit for the workflow that has the transition you wish to add 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 Copy comments to linked issues from the list of post-functions.

  6. Click on Add to add the post-function on the transition.

     

  7. Select the “Target issue” (see below)

  8. Select the options provided to add the required parameters.

Known issues common to all post-functions:

Troubleshooting this post-function configuration: In case the post-function does not work as expected these are the things to look out for

JMWE shows an error message on the issue view if any error occurs during the execution of the post-function. This message is only displayed if the current user is a Jira administrator. 

When you add this post-function to a transition and trigger the transition, the add-on copies the comment(s) (ignoring already added comments) of the current issue to all the target issues.

Destination issues

Select the issues to which the comments should be copied to. They can be:

  • Sub-tasks of the current issue: Select this option to copy the comments to each sub-task of the current issue

  • Parent issue of the current sub-task: Select this option to copy the comments to the parent of the current issue

  • Issues that belong to the current issue (Epic): Select this option to copy the comments to each issue that belongs to the current Epic

  • Epic of the current issue: Select this option to copy the comments to the Epic of the current issue

  • Child issues of the current issue in the Portfolio hierarchy: Select this option to copy the comments to each child issue of the current issue in the Portfolio hierarchy

  • Parent issue of the current issue in the Portfolio hierarchy: Select this option to copy the comments to the parent issue of the current issue in the Portfolio hierarchy

  • Issues linked to the current issue through any link type: Select this option to copy the comments to the current issues' linked issues

  • Issues linked to the current issue through the following link type: Select this option to copy the comments to the issues linked to the current issue through a specific link type. Select the specific link type under “Issue link”

  • Issues returned by the following Nunjucks template: Select this option to copy the comments to the issues returned by the result of a Nunjucks template. Input a Nunjucks template which is a comma-separated list of valid issue keys. For example:

    • "TEST-1"

    • "TEST-1","TEST-2"

    • {{ issue.fields.parent.key }}

    • {{ issue.fields.subtasks | join(",", "key") }}

  • Issues returned by a JQL search: Select this option to copy the comments to the issues returned by a JQL search. Input a JQL search expression. For example:

    • project = TEST returns issues of the project with the key TEST

    • project = {{ issue.fields.project.key }} and assignee = {{currentUser._accountId}} returns issues of a project that belong to the project with key TEST and the assignee is the current user

    • 1 2 3 4 5 {% if issue.fields.assignee %} assignee = {{issue.fields.assignee._accountId}} {% else %} issuekey=INVALID-1 {% endif %}

      Note that the {% if %} block is necessary to avoid an invalid JQL query when the issue is unassigned. In that case, the template will return a valid JQL query that returns no issue (issuekey=INVALID-1).

Comments to copy

  • All comments: Copies all the comments on the current issue to all the target issues

  • Latest comment: Copies the latest comment on the current issue to all the target issues

  • The comment added on the transition screen, if any: Copies the comment added on the transition screen, if any, to all target issues

Note that the post-function doesn't copy already copied comments.

Author of copied comments

  • Original author (or "run as" user if original author has no permission): The author of a comment on the current issue will be the author of the comment created on the target issues. If the original author has no permission then the user selected in the "Run as" section (explained below) will be the author.

  • The add-on user: The add-on user will the author of the comments on the target issues.

  • This user: The user selected here will be the author of the comments on the target issues.

Comment visibility

  • Retain existing comment visibility restrictions: Retains the existing comment visibility restrictions of the current issue to the comments on the target issues.

  • Use the following comment visibility

    • Restrict to Group: Restricts the visibility of the comment to a specified group. When you select a valid group name in the Restrict to Group field, the comment will be visible only to the members of the specified group. For no restriction, leave the field blank.

    • Restrict to Project Role: Restricts the visibility of the comment to a selected project role. When you select a project role from the Restrict to Project Role drop-down, the comment will be visible only to the members of the selected project role. For no restriction, leave the field blank.

    • Restrict to Internal (Jira Service Desk only): Restricts the visibility of the comment to the Service Desk Agents and Collaborators only.

Run As

This option allows you to specify which Jira user will be used to retrieve existing comments from the current issue. This is significant if some comments are protected by comment visibility restrictions. Note that the "run as" user will also be used to create comments on linked issues when you select the "Original author" option above and the original author has no permission to create comments on the linked issues.

  • Run as current user: Use the user who triggered the transition

  • Run as add-on user: Use the Jira Misc Workflow Extensions add-on user

  • Run as this user: Use the specified user

Conditional execution

To execute this post-function based on the result of a Nunjucks template see Conditional execution.

Delayed execution