groovy - 如何从 Groovy 设置 JIRA 票证的版本字段

标签 groovy jira

我正在使用 JIRA 7.1.4 服务器,在行为下我尝试创建一个 Groovy 初始化函数来设置表单字段的默认值,因此当用户尝试创建新票证时,某些字段已经填写与默认值。这是我到目前为止所拥有的:

import com.atlassian.jira.component.ComponentAccessor

def versionManager = ComponentAccessor.getVersionManager()
def versions = versionManager.getVersionsUnreleased(issueContext.projectObject.id, false)
getFieldById("affectedVersion").setFormValue([versions.first().id])
getFieldById("description").setFormValue([versions.first().id])

当创建新 JIRA 票证的对话框打开时,此脚本成功将“描述”字段设置为正确的版本 ID(仅用于调试目的),但“影响版本”字段由于某种原因仍为空。

我认为“影响版本”字段的 id 没问题,因为我是从 JQL 获取的,所以例如以下查询显示正确的信息:

project = "--------" and affectedVersion is EMPTY

因此我假设我试图错误地设置版本字段的值,但无法找出错误。上述Groovy脚本基于this example ,但脚本可能是错误的,并且我无法找到有关 getFieldByIdsetFormValue here 的更多信息要么。

任何人都可以提供一个从 Groovy 中设置 JIRA 的“影响版本”或“修复版本”字段的工作示例吗?

最佳答案

如果您在问题上设置修复版本,请在工作流程中创建步骤。您需要将此脚本放入第一个帖子函数中(在创建问题之前)。

import com.atlassian.jira.component.ComponentAccessor
def versionManager = ComponentAccessor.getVersionManager()
def versions = versionManager.getVersionsUnreleased(issue.getProjectObject().getId(), false)
issue.setAffectedVersions([versions.first()])

关于groovy - 如何从 Groovy 设置 JIRA 票证的版本字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38310104/

相关文章:

testing - Jmeter:迭代并递增每个请求然后返回

groovy - 转换为 bool 值时,groovy 会隐式调用 Matcher 上的查找吗?

jira - 使全局变量可在 Robot Framework 监听器中访问

jira - 如何在 Jira 票证中突出显示内联代码/文本?

java - Jira ServiceDesk 用户创建 - 此资源需要 WebSudo

java - 如何通过 Apache Camel 调用 RESTful 服务?

grails - 为什么应将grails操作声明为方法而不是闭包,它有什么区别?

gradle - Ratpack中的非阻塞处理程序代码不起作用

java - 发出大输出元组时如何使用 Spock 测试 Storm

jira - 如何通过rest api向jira问题添加标志