Missed Team ’24? Catch up on announcements here.

×
Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

How to get OPEN / FUTURE sprints on an issue with closed sprints?

alexmears August 27, 2018

I have a ScriptRunner listener, which gets the Sprint for an updated Issue

def customFields = get("/rest/api/2/field")
.asObject(List)
.body
.findAll { (it as Map).custom } as List<Map>

def inputid = customFields.find { it.name == 'Sprint' }?.id

def sprints = issue.fields[inputid]

The problem is the sprints returns the following object for issues that have old Sprints in the field:

[com.atlassian.greenhopper.service.sprint.Sprint@68451349[id=3,rapidViewId=1,state=CLOSED,name=180819,goal=,startDate=2018-08-11T22:00:07.984Z,endDate=2018-08-18T22:00:00.000Z,completeDate=2018-08-19T23:55:04.664Z,sequence=3], com.atlassian.greenhopper.service.sprint.Sprint@4685dba[id=4,rapidViewId=1,state=FUTURE,name=180916,goal=,startDate=<null>,endDate=<null>,completeDate=<null>,sequence=7], com.atlassian.greenhopper.service.sprint.Sprint@24ed7d97[id=8,rapidViewId=1,state=CLOSED,name=180826,goal=,startDate=2018-08-19T13:59:07.365Z,endDate=2018-08-26T13:59:00.000Z,completeDate=2018-08-26T22:39:33.453Z,sequence=4]]

Questions:

  1. how do I only return the Sprint that has state=FUTURE or state=OPEN? I am not sure if I should iterate and check "State" or if there is a faster way, or how an iteration would work.
  2. [ Bonus ] How do I return only the "name" for that Sprint?

0 answers

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events