Groovy Script to close a Issue?

sandeep patel March 8, 2016

Can I get a groovy script to close issue.

 

1 answer

2 votes
Vasiliy Zverev
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
March 8, 2016

 

You need to do any transition from current issue status to status "Closed"

Here is a code exmple:

import com.atlassian.jira.bc.issue.IssueService;
import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.issue.Issue;
import com.atlassian.jira.issue.IssueInputParameters;
import com.atlassian.jira.user.ApplicationUser
import org.ofbiz.core.entity.GenericEntityException;
import com.opensymphony.workflow.loader.ActionDescriptor;

/**
 * Created by VZverev on 27.01.2016.
 */

ApplicationUser executor = ComponentAccessor.getJiraAuthenticationContext().getUser();

IssueService issueService = ComponentAccessor.getIssueService();
IssueInputParameters inputParameters = issueService.newIssueInputParameters();

Issue issue = ComponentAccessor.getIssueManager().getIssueObject("SN468-1")

try {
    IssueService.TransitionValidationResult transitionValidationResult = null;
    for(Issue subTask: issue.getSubTaskObjects()) {

        transitionValidationResult = issueService.validateTransition(executor, subTask.getId(), 141, inputParameters);

        if (!transitionValidationResult.isValid())
            return transitionValidationResult.getErrorCollection().getErrorMessages().toString()

        issueService.transition(executor, transitionValidationResult);
    }
} catch (GenericEntityException e) {
    e.printStackTrace();
}

General steps:

  1. Get requred issues
  2. Set input parameters
  3. Validate transition
  4. do transition

 

Suggest an answer

Log in or Sign up to answer