Our new Appfire Documentation Space is now live!

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

Copy the attachments of the linked issues to the current issue

This document is obsolete. JMWE now supports copying of attachments across issues in the post-functions. 

Abstract

This code snippet copies Attachments to the current issue from issues linked to it with a specific link type. Since currently copying and setting of attachments is not supported until JMWE-504 is implemented, you can use this snippet to copy the attachments.

Logic

Fetch the attachments of the linked issues, linked to the current issue with a specific link type and use the AttachmentManager to copy them.

Snippet

//Initialize the attachmentManager
import com.atlassian.jira.issue.AttachmentManager
AttachmentManager attachmentManager = ComponentAccessor.getAttachmentManager()

//Define a variable to store the attachments 
def attach = []
if(issue.getLinkedIssues("<Link type name>")){
//Fetch the attachments of the linked issue and store them in the attach variable
  issue.getLinkedIssues("<Link type name>").each{
    attach += it.get("attachment")
  }
}
//Add each attachment to the issue
attach.each{
  attachmentManager.copyAttachment(it,currentUser,issue.key)
}

By not specifying the link type, as issue.getLinkedIssues(), you can copy the Attachments of all the linked issues of the current issue, other than the Parent-Subtask and Epic-Story links.

Placeholders

Placeholder

Description

Example

<Link type name>Name of the link typeis cloned by

Examples

The outcome of the code snippet is the copy of Attachments to an issue in the Scripted Groovy post-function:

  • Copy the Attachments of the current issue to its newly created linked issue created using the Create issue post-function
  • Copy the Attachments of the issue to a linked issue

References