This Plugin gives some extremely nice features, like running scripts in Transitions.
Change Task Type
This actually gets hold on a clone and changes the "Task Type" Custom Field to "Clone", whereas on the Master it is still "Master"
import com.atlassian.jira.ComponentManager import com.atlassian.jira.issue.customfields.manager.OptionsManager def componentManager = ComponentManager.instance def optionsManager = componentManager.getComponentInstanceOfType(OptionsManager.class) def cf = customFieldManager.getCustomFieldObjects(issue).find {it.name == 'Task Type'} def fieldConfig = cf.getRelevantConfig(issue) def optionClone = optionsManager.getOptions(fieldConfig).find {it.value == "Clone"} issue.setCustomFieldValue(cf, optionClone)
Setting Issue values after "Create Subtask"
In This sample "transientVars" refers to the parent values
issue.assignee == transientVars["issue"].assignee; issue.setDescription("A new Description"); issue.setSummary("Unit Test - " + transientVars["issue"].key);