Come for the products,
stay for the community

The Atlassian Community can help you and your team get more value out of Atlassian products and practices.

Atlassian Community about banner
4,368,039
Community Members
 
Community Events
168
Community Groups

How to copy comments with attachments to last linked issue - ScriptRunner

Edited

Here's how to copy comments with attachments to the last linked issue:

import com.atlassian.jira.issue.Issue
import com.atlassian.jira.component.ComponentAccessor

def commentManager = ComponentAccessor.getCommentManager()
def issueLinkManager = ComponentAccessor.getIssueLinkManager()
def attachmentManager = ComponentAccessor.getAttachmentManager()
def user = ComponentAccessor.getJiraAuthenticationContext().loggedInUser

def issue = event.issue as Issue

lastComment = commentManager.getLastComment(issue)
body = lastComment.getBody()
author = lastComment.getAuthorApplicationUser()

def linkedIssue = issueLinkManager.getLinkCollection(issue, user).getAllIssues().last()

lastAttachment = attachmentManager.getAttachments(issue).last()

attachmentManager.copyAttachment(lastAttachment, user, linkedIssue.key)

commentManager.create(linkedIssue, author, body, false

 

1 comment

Try this:

import com.atlassian.jira.issue.Issue
import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.issue.attachment.Attachment

def commentManager = ComponentAccessor.getCommentManager()
def issueLinkManager = ComponentAccessor.getIssueLinkManager()
def attachmentManager = ComponentAccessor.getAttachmentManager()
def user = ComponentAccessor.getJiraAuthenticationContext().loggedInUser

def issue = event.issue as Issue

def lastComment = commentManager.getLastComment(issue)
def body = lastComment.getBody()
def author = lastComment.getAuthorApplicationUser()

Issue linkedIssue = issueLinkManager.getLinkCollection(issue, user).getAllIssues().last()
def linkedIssueLastComment = commentManager.getLastComment(linkedIssue).getBody()
//make sure that the listener won't go in a loop
if(linkedIssueLastComment != body){
List<Attachment> lastAttachment = attachmentManager.getAttachments(issue)

lastAttachment.each{ attachment ->
attachmentManager.copyAttachment(attachment, user, linkedIssue.key)
}

commentManager.create(linkedIssue, author, body, false)
}

Comment

Log in or Sign up to comment
TAGS

Atlassian Community Events