I'm trying to make a script that gets the parent subtasks list and check if all the subtasks have the status as 'Resolved' and if so it returns true.
I’m trying to implement this at the post function Conditional execution: Only if condition is true
I’ve just started to work with groovy so i'm little clueless
that's what I’ve came up with but it doesn't work
import com.atlassian.jira.ComponentManager
import com.atlassian.jira.issue.comments.CommentManager
import com.opensymphony.workflow.WorkflowContext
import org.apache.log4j.Category
import com.atlassian.jira.config.SubTaskManager
import com.atlassian.jira.workflow.WorkflowTransitionUtil;
import com.atlassian.jira.workflow.WorkflowTransitionUtilImpl;
import com.atlassian.jira.util.JiraUtils;
boolean canResolve = true;
Collection subTasks = issue.getParentObject().getSubTaskObjects();
for(subtask in subTasks) {
String status = subtask.getStatusObject().getSimpleStatus().getName();
if(status != "RESOLVED") //also tried with "Resolved"
canResolve = false;
}
return canResolve;
EDIT: the purpose is to transition the parent issue to resolved only when all subtasks are resolved
What is the purpose? You can restrict a transition to only be available if all subtasks are resolved by using the sub-task blocking condition. See https://confluence.atlassian.com/jira/configuring-sub-tasks-185729507.html
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.