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.

1 answer

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.

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
Community showcase
Published Monday in Jira Ops

Jira Ops Early Access Program Update #1: Announcing our next feature and a new integration

Thanks for signing up for Jira Ops! I’m Matt Ryall, leader for the Jira Ops product team at Atlassian. Since this is a brand new product, we’ll be delivering improvements quickly and sharing updates...

337 views 0 8
Read article

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you