如何在Jira中自动将收集的任务转为子任务并关联指定故事
原生Jira自动化规则配置方案
触发条件
- 选择「当问题创建时」作为触发事件
- 添加筛选条件:问题来源 = Issue Collector(若系统无默认「来源」字段,可给Issue Collector配置一个隐藏自定义字段,比如命名为「Collector提交标记」,设置默认值为
true,再以此字段作为筛选依据,避免误处理手动创建的任务)
动作步骤
转换为子任务
- 添加动作「转换问题类型」,选择目标类型为「子任务」
- 前提:确保项目已启用「子任务」问题类型,且原任务类型允许转换为子任务
关联到指定故事
- 添加动作「链接问题」,选择链接类型为「is child of」(对应父/子任务关系)
- 目标问题可直接填入预设故事的Issue Key(如
PROJ-123);若需动态匹配看板内的故事,用JQL筛选:project = 你的项目名 AND issuetype = Story AND 看板 = "目标看板名称" AND 状态 IN (待办, 进行中)(根据实际看板和状态调整)
插件/脚本补充方案
若原生自动化无法满足复杂场景(比如按不同Collector匹配不同父故事),可参考以下方式:
- ScriptRunner:编写Groovy脚本直接完成转换与关联,示例片段:
import com.atlassian.jira.component.ComponentAccessor def issue = event.issue // 替换为目标故事的Issue Key,或通过JQL动态查询获取 def parentIssue = ComponentAccessor.issueManager.getIssueObject("PROJ-123") // 转换为子任务类型 def subTaskType = ComponentAccessor.constantsManager.allIssueTypeObjects.find { it.name == "Sub-task" } issue.setIssueTypeId(subTaskType.id) // 设置父任务 issue.setParentObject(parentIssue) ComponentAccessor.issueManager.updateIssue( ComponentAccessor.jiraAuthenticationContext.loggedInUser, issue, com.atlassian.jira.event.type.EventDispatchOption.DO_NOT_DISPATCH, false )
- 云版Jira高级自动化:使用「编辑问题字段」动作,直接修改
Issue Type为子任务,同时设置Parent Issue字段为目标故事Key,一步完成两个操作
注意事项
- 确保自动化规则的执行用户拥有编辑问题、修改问题类型、链接问题的权限
- 测试阶段手动提交Collector任务,验证规则触发逻辑、子任务转换状态、父任务关联是否正确
- 若目标故事需动态变更,避免硬编码Issue Key,改用JQL按标签、看板列或自定义字段匹配目标故事
内容的提问来源于stack exchange,提问作者user20113132
相关产品推荐
相关产品推荐

