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

Earn badges and make progress

You're on your way to the next level! Join the Kudos program to earn points and save your progress.

Deleted user Avatar
Deleted user

Level 1: Seed

25 / 150 points

Next: Root

Avatar

1 badge earned

Collect

Participate in fun challenges

Challenges come and go, but your rewards stay with you. Do more to earn more!

Challenges
Coins

Gift kudos to your peers

What goes around comes around! Share the love by gifting kudos to your peers.

Recognition
Ribbon

Rise up in the ranks

Keep earning points to reach the top of the leaderboard. It resets every quarter so you always have a chance!

Leaderboard

Parent child issue field sync with same JIRA project (custom issue type to epic to story)

We have a scenario where we have a custom issue type (roadmap issue) which is a parent of an epic(s) which is the parent of story(s).

I have been searching for a plugin that would support this scenario:

I update fields in the top level roadmap issue and all of the child epics and stories get those fields updated as well.  All issues are in the same project.  I just want to keep all levels updated with the latest data as updated by the project manager in the roadmap issue.

I've looked at several plugins, but most seem to be for syncing of issues across projects or they support the sync of epics -> stories and stories -> sub-tasks.

Is there anything that will support my use case with a custom issue type and parent -> child epic -> child story?

My JIRA admins are also reticent to do custom scripting as they don't want to support it during JIRA upgrades, so scripting is probably out.

2 answers

Hi Karen,

I'm looking for something similar, were you able to find something to sync Parent Link/Child issues?  Thanks in advance!

Just as a follow up to this, we were able to accomplish this with a combination of Field Sync (Sync on link and create) + Automation (sync on parent field value change) plugins.

0 votes
Justin Evans
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.
Nov 06, 2017

Hi Karen;

How are your "roadmap" issues implemented? That is to say, are you using a marketplace app to have an "Epic of Epics" or are you aggregating Epics through some other method like issue linking?

It would be challenging to satisfy this use case without scripting. Have you looked into Power Scripts for Jira? As a Jira admin, I totally understand the bit about breaking during upgrades, but Power Scripts was designed to be compatible across versions with no script modifications required.

We use the "Parent Link" field to associate the "roadmap" issue to the "epic" issue.  It is a custom field that is provided when installing Portfolio for JIRA. It is of the “Parent Link” field type. Atlassian created.

Justin Evans
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.
Nov 09, 2017

Got it, thanks. Syncing a custom field down the hierarchy chain using Power Scripts could be done with the following script attached to an issue created or issue updated listener. There are more exotic ways to do it to limit the scope, but here's a quick and dirty example.

/* This script will take the value of a custom field from a portfolio-level
issue type and synchronize that value to all child epics, all of those epics'
stories, and all of those stories' subtasks.

Call this script from an "Issue Updated" SIL Event Listener.
*/

if(issueType=="ROADMAP") { // "portfolio-level" issue type
string [] initiative = selectIssues("\"Parent Link\" = " + key);
for(string epic in initiative) {
%epic%.customfield_12345 = key.customfield_12345;
string [] standards = selectIssues("\"Epic Link\" = " + %epic%.key);
for(string standard in standards) {
%standard%.customfield_12345 = key.customfield_12345;
string [] subtasks = selectIssues("parent = " + %standard%.key);
for(string subtask in subtasks) {
%subtask%.customfield_12345 = key.customfield_12345;
}
}
}
}

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events