Hello,
I am going to write a postfunction which will remove a file with specific name from the attached files to an issue.
Would you suggest any API function names, examples? Where should I start from?
Thanks.
Hi,
I think you could have a code similar to following one in your post-function:
import com.atlassian.jira.component.ComponentAccessor import com.atlassian.jira.exception.RemoveException import com.atlassian.jira.issue.AttachmentManager import com.atlassian.jira.issue.Issue def Issue issue = issue def AttachmentManager attachmentManager = ComponentAccessor.getAttachmentManager(); issue.attachments.each { if (it.filename.contains("specificName")) { try { attachmentManager.deleteAttachment(it) } catch (RemoveException e) { log.error("Attachment ${it.filename} could not be removed", e) } } }
Oh, thank you! This code works just perfectly! Would you be so kind as to specify the criteria I could use? For example - name (contains();), what else? Size? MD5 sum? Thanks!
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
As "it" is an instance of the Attachment class, you will be able to retrieve the file size but not the MD5 sum. For more information please check the javadoc of that class: https://developer.atlassian.com/static/javadoc/jira/reference/com/atlassian/jira/issue/attachment/Attachment.html
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hey, Alejo The script works just fine when I create my issues from the JIRA itself. It does not work though when I create issue via email handlers (by sending an email). It seems to me that the issue is not created at the moment. The attachments collection is empty. Any suggestions?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I tested the issue in a local instance and my guess is that the mail handler are simply firing the post-function too early, meaning that the issue is not ready when the post function is called.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.