我目前正在修改我们的 JIRA 工作流程和问题路由,并遇到以下困境。
我想将所有已解决的问题分配给原始报告人,除非报告人不在QA Group中。然后应该将问题分配给单个用户(在本例中是我们的 QA Lead)。
在研究了几个插件和线程之后,我还没有找到任何类似的东西或任何有助于实现这一目标的东西。
如果您需要更多信息,请告诉我。一如既往,我们非常感谢您的帮助。
编辑: 吉拉版本 5.2
我目前正在修改我们的 JIRA 工作流程和问题路由,并遇到以下困境。
我想将所有已解决的问题分配给原始报告人,除非报告人不在QA Group中。然后应该将问题分配给单个用户(在本例中是我们的 QA Lead)。
在研究了几个插件和线程之后,我还没有找到任何类似的东西或任何有助于实现这一目标的东西。
如果您需要更多信息,请告诉我。一如既往,我们非常感谢您的帮助。
编辑: 吉拉版本 5.2
“希望分配所有已解决的问题”是什么意思?
如果您的意思是要检查所有问题并执行此操作,那么您最好使用REST API,例如使用jira-python 编写一个脚本,该脚本将解决所有问题并进行更改。
如果您想将此规则应用于所有正在解决的问题- 这可以很容易地使用Jira 的脚本套件或Jira Groovy Runner(取决于您的 jira 版本)resolve issue transition
在工作流程中附加一个 post 函数来检查每个问题和进行必要的更改。
如果您在编码任何这些解决方案或更多信息方面需要帮助,请告诉我..
更新
使用Jira Groovy Runner,将脚本发布功能添加到工作流的resolve
过渡中。脚本应该是这样的:
import com.atlassian.jira.issue.Issue;
import com.atlassian.jira.issue.MutableIssue
import com.atlassian.jira.ComponentManager
import com.atlassian.jira.user.util.UserManager
import com.atlassian.jira.security.groups.GroupManager
import com.atlassian.crowd.embedded.api.User
MutableIssue myIssue = issue
User reporter= issue.getReporter()
GroupManager usersGroup = (GroupManager) ComponentManager.getComponentInstanceOfType(GroupManager.class);
Collection<String> currentUserGroups = usersGroup.getGroupNamesForUser(reporter)
if ('QA' in currentUserGroups) {
// assign issues back to the original reporter
issue.setAssignee(reporter)
} else {
// EXCEPT when the reporter is not in the QA Group
// Then the issue should be assigned to the QA Lead.
issue.setAssignee(ComponentManager.instance.userUtil.getUserObject('qa_leader_name'))
}
有关更多信息,请查看Jira 的 API。
我们为客户编写了一个类似的自定义插件:
“这个发布功能可以添加到诸如 Resolve 之类的转换中,开发人员表示该问题已准备好进行测试。目的是减少 QA 经理的分类工作。
如果报告者是 QA 等已配置组的成员:则将受理人更改为报告人 否则将受理人更改为 QA 组的已配置主管”
如果这听起来相关,请发送电子邮件至 info@customware.net。
〜马特