@WithPlugin("com.kanoah.test-manager") import com.onresolve.scriptrunner.runner.customisers.WithPlugin import com.atlassian.jira.component.ComponentAccessor import com.atlassian.jira.user.ApplicationUser import com.opensymphony.workflow.loader.ActionDescriptor import com.atlassian.jira.issue.Issue def actionId = 110 issueTransition(doneAction, currentUser, actionId ) def issueTransition(Lis<Issue> issueList, String actionName, ApplicationUser currentUser, Long testExecutionId) { def issueManager = ComponentAccessor.issueManager def issueService = ComponentAccessor.issueService def issueIds = issueList*.issueId issueIds.each { issueId -> def issue = issueManager.getIssueObject(issueId) def issueInputParameters = issueService.newIssueInputParameters() def action = getAction(actionName, issue) if (action == null) { throw new RuntimeException("Action '" + actionName + "' Not Found") } def validateTransition = issueService.validateTransition(currentUser, issue.id, action.id, issueInputParameters) if (validateTransition.isValid()) { issueService.transition(currentUser, validateTransition) } } } ActionDescriptor getAction(String actionName, Issue issue) { def workflowManager = ComponentAccessor.workflowManager.getWorkflow(issue) def actions = workflowManager.getActionsByName(actionName) actions.find { action -> action.name == actionName } }
Overview
Content Tools