...
...
Insert excerpt | ||||||||
---|---|---|---|---|---|---|---|---|
|
Tip |
---|
Update checklists using automated scripts⚡️ |
...
3.4. Choose Run Script (Run arbitrary code on transition):
...
3.5. Add a Script Code:
...
Code Block | ||
---|---|---|
| ||
//package com.adaptavist.sr.cloud.samples.events def issueKey = issue.key def newSummary = 'Updated by a script' def cfName = 'Environment' //get custom field of "seelct" type def customFields = get('/rest/api/2/field') .asObject(List) .body .findAll { (it as Map).custom } as List<Map> def cfEnvironmentId = customFields.find { it.name == cfName }?.id def cfEnvironment = issue.fields[cfEnvironmentId] //get custom field def environment = cfEnvironment['value'] as String def propertyKey = 'com.railsware.SmartChecklist.checklist' def propertyValue //compare field values if (environment == 'Production') { propertyValue = '"- ToDo List\\n+ Checked\\nx Skipped\\n~ In Progress\\n# Another ToDo List\\n- Unchecked\\n> Quote line 1 https://rw.rw\\n> Quote line 2\\n> Quote line 3\\n"' }else if (environment == 'Staging') { propertyValue = '"- Uno\\n+ Dos\\nx Tres\\n~ Quatro\\n"' } logger.info('property' + environment) def result = put('/rest/api/2/issue/' + issueKey + '/properties/' + propertyKey) .header('Content-Type', 'application/json') .body(propertyValue) .asString() if (result.status == 204) { return 'Success' } else { return "${result.status}: ${result.body}" } |
...
You're done! Now every time the Issue will be transitioned to
Status | ||||
---|---|---|---|---|
|
Status | ||||
---|---|---|---|---|
|
...
Insert excerpt | ||||||||
---|---|---|---|---|---|---|---|---|
|