Script Listener to notify of Sprint field changes in OpenSprints()

Deleted user May 10, 2016

Hello

We want to be notified when a sprint field is changed.

We know this can be accomplished with the following query in the condition of a script listener:

changeItems.any{
it.field == 'Sprint'
}

However, this triggers when any sprint field is changed which is not what we want.

We only want this to be triggered if the ticket is in an OpenSprint() and dont know how to do this.

Any help on this would be great.

Thanks

Adam

1 answer

0 votes
Mark McCormack (Adaptavist)
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.
May 19, 2016

Hi Adam,

A colleague of mine helped me put this one together (thanks Ash). Please try this (untested):

import com.atlassian.greenhopper.service.sprint.Sprint
import com.atlassian.greenhopper.service.sprint.SprintIssueService
import com.atlassian.jira.component.ComponentAccessor
import com.onresolve.scriptrunner.runner.customisers.PluginModuleCompilationCustomiser
 
List changeItems = event?.getChangeLog()?.getRelated("ChildChangeItem")
def issue = event.issue

def sprintIssueService = PluginModuleCompilationCustomiser.getGreenHopperBean(SprintIssueService)
def user = ComponentAccessor.jiraAuthenticationContext.getLoggedInUser()

def serviceOutcome = sprintIssueService.getSprintsForIssue(user, issue)
def sprints = serviceOutcome.get()
def isActiveSprint = sprints*.state.every{ it == Sprint.State.ACTIVE}

def isSprintFieldModified = changeItems.any{
    it.field == 'Sprint'
}

isSprintFieldModified && isActiveSprint
Deleted user June 23, 2016

Hi

I have not used this yet.

Are you sure this will trigger the email when a change is made to a ticket in an open sprint?

It seems to be a lot to add to the initial code for such a small request.

Thanks

Adam

Mark McCormack (Adaptavist)
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.
June 23, 2016

Hi Adam,

As mentioned it is untested, so I'm not sure but I'll leave it to you to test it in your staging environment.

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events