I noticed there is an email handler option in script runner, but don't have any clue how it works, there isn't any clear documentation. Currently, we are using Jira email handler, whenever to receive an email it creates a ticket. We are using the email handler for Nagios alert, so Jira email creates a ticket with each alert. We would like to create a new ticket only if there will be a problem, but once you get a resolve email it should close the ticket and not create a new ticket or if the issue continues it should post an email in the comment of an existing ticket.
I thought script runner might solve the problem but I didn't find the proper user guide, I might don't use the right keyword to search it. Can someone walk me through all process that how to use scriptrunner's email handler option? I really appreciate it.
Hi Howard,
You can use a custom script validator to throw an InvalidInputException and block the parent issue's transition if conditions aren't meet.
Here's the sample custom script validator when not all sub-tasks (except QA Task) of that parent issue are closed as "Done", then it will throw an exception and block the transition for that parent issue:
import com.opensymphony.workflow.InvalidInputException
def passesCondition = true
def subTasks = issue.getSubTaskObjects()
def subBoolean = issue.subTask
//If the issue is not a subtask and contains subtasks
if(!subBoolean && subTasks){
subTasks.each { //Loop each subtask of parent issue
//If the subtask is "QA Task"
if (it.issueType.name == "QA Task") {
passesCondition = true
}else{ //Else if the subtask is not "QA Task"
//If the subtask has null resolution or not a resolution "Done"
if(!it.getResolution() || it.getResolution().name != "Done"){
passesCondition = false
//Block the transition
throw new InvalidInputException("subTask","Not all substasks ($it) are closed as 'Done'!")
}else{
passesCondition = true
}
}
}
}else{
return true
}
Hope this helps!
--
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.