0

在 Jira 的 SAAS 版本中,有没有办法在给定时间段后自动关闭工单?

4

1 回答 1

0

我必须做类似的事情,而不是关闭问题,而是创建一个 12/24/36/48 小时提醒问题。我通过创建一个名为“Open since”的自定义字段来做到这一点 - 一个“日期时间”字段来保存问题已打开的时间。

使用Jira Scripting Suite,我创建了一个后期函数,并将其放置在每个进入“打开”状态的转换中,以保持问题打开时间,使用以下代码:

from com.atlassian.jira import ComponentManager
from datetime import datetime
opend_since_field = "customfield_10001"
# get opened since custom field:
cfm = ComponentManager.getInstance().getCustomFieldManager()
# get current time
currentTime = datetime.today()
# save current time
issue.setCustomFieldValue(cfm.getCustomFieldObject(opend_since_field),currentTime)

我创建了一个新过滤器来获取超过 24 小时开放的问题列表:

project = XXX AND status= Open ORDER BY updated ASC, key DESC

最后——我使用了Jira 远程 API —— XML-RPC 方法来编写一个安排为每 5 分钟运行一次的 Python 脚本。脚本读取过滤器发出的所有邮件,拉出所有处于“打开”状态超过 24 小时/36 小时/48 小时的邮件,发送提醒电子邮件,并将它们标记为已通知,因此每种类型只会发送一个提醒.

您可以转到原始问题以查看完整的脚本,但如果您正在处理较新的 Jira 实例,您可能希望使用此处的 REST API 编写它。请注意,我的脚本只是发送通知电子邮件,但可以轻松更改为关闭问题,您甚至可以使用它将关闭的问题邮寄给自己。

如果您在编码方面需要帮助,请随时询问:)

于 2013-01-16T10:52:02.760 回答