import com.atlassian.jira.component.ComponentAccessor import com.atlassian.jira.issue.ModifiedValue import com.atlassian.jira.issue.util.DefaultIssueChangeHolder final String customFieldName = "Single Select List" final String newValue = "Option C" final String issueKey = "ATG-1" def issue = ComponentAccessor.issueManager.getIssueByCurrentKey(issueKey) assert issue : "Could not find issue with key $issueKey" def customField = ComponentAccessor.customFieldManager.getCustomFieldObjects(issue).findByName(customFieldName) assert customField : "Could not find custom field with name $customFieldName" def availableOptions = ComponentAccessor.optionsManager.getOptions(customField.getRelevantConfig(issue)) def optionToSet = availableOptions.find { it.value == newValue } assert optionToSet : "Could not find option with value $newValue. Available options are ${availableOptions*.value.join(",")}" customField.updateValue(null, issue, new ModifiedValue(issue.getCustomFieldValue(customField), optionToSet), new DefaultIssueChangeHolder())
Overview
Content Tools