Forums

Articles
Create
cancel
Showing results for 
Search instead for 
Did you mean: 

Proper way to update Security Level in a groovy listener?

Dmitry Tyomkin April 24, 2017

Need help with the subject, code runs inside Create Issue SR listener. Spent substantial time trying to break through various ways to update an issue within a context of scriptrunner listener, to no avail. Looks like the best practice has evelved multiple time over last few years. The code doesn't complain during runtime, yet fails to update security level. Thanks for your suggestions.

... [set value to secLvlId]

def iSvc = ComponentAccessor.issueService
def user = ComponentAccessor.jiraAuthenticationContext.loggedInUser
def params = iSvc.newIssueInputParameters()
params.setSecurityLevelId(seclvlId)
def validationRes = iSvc.validateUpdate(user, issue.id, params)
if (validationRes.isValid()) {
  iSvc.update(user, validationRes)
} else {
  log.warn """Unable to perform the issue security level update to $seclvlId!
  Issue:$issue
  Error:$validationRes.errorCollection"""
}

1 answer

0 votes
adammarkham
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
April 25, 2017

Is "seclvlId" the security level id as a long? Where are you getting the id from? Does the user who created the triggered the listener have permissions to update the security level?

If some of these things had happened I would have expected to have seen a message in the logs. Is there nothing in the logs?

Dmitry Tyomkin April 25, 2017

It is not a long, no, just a regular constant assigned to it, like 10101. I am an admin, so I believe both questions on a user are yes. Nothing in the logs, except my messages from log.warn.

adammarkham
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
April 25, 2017

That should be ok, as long as that security level id exists in JIRA. Groovy will convert it to a long.

You mention you see you log.warn in the logs. Do you see the error? You previously mentioned you didn't but just wanted to check. 

Could you please post your full script? Then I'll try it out.

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events