欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

JIRA上设置只有描述、优先级等几个关键字段更新时才发邮件通知

程序员文章站 2022-05-10 23:31:49
...

JIRA的issue updated事件,默认会将包含自定义字段在内的所有字段变更都按照通知方案的定义进行邮件发送,这样一来,报告人和关注人会收到无数Issue更新通知的邮件,哪怕只是一个非常无关紧要的自定义字段被更新了。

而往往我们的实际应用场景是,只希望接收描述、优先级、修复版本等几个关键字段的更新,在这样的情况下,可以借助scripts runner插件的scripts listener功能,按照如下步骤进行设置

步骤一:修改通知方案

【设置】->【问题】->【通知方案】
然后选择对应的通知方案,点击【通知】
JIRA上设置只有描述、优先级等几个关键字段更新时才发邮件通知

将”问题已更新”对应的事件通知都删除
JIRA上设置只有描述、优先级等几个关键字段更新时才发邮件通知

步骤二:添加新事件

【设置]->【系统】->【事件】,在页面最底部,添加一个新事件
JIRA上设置只有描述、优先级等几个关键字段更新时才发邮件通知
模板选择”Issue Updated”,名称为”KeyField Updated”

步骤三:添加scripted listener

【设置】->【插件】-> 【Scripted Listeners】,点击【Add New Item】

Project Key: 可以选择本监听器作用的项目,在此选择”All projects”,表示作用于所有项目
Events:选择”Issue Updated”,这里表示监听哪个事件
condition的文本框中输入如下代码:

def conditionA = (issue.priority?.name in ['非常重要','重要'] && changeItems.any {
    it.get('field')=='priority'
})
def conditionB = (changeItems.any {
    it.get('field') in ['description','Fix Version']
    })
conditionA || conditionB

conditionA表示,只有优先级被修改为”非常重要”和”重要”时,才会触发通知;
conditionB表示,只有description和Fix Version字段变更时,才会触发通知;
如果还有其他关注的字段或者要去掉某个字段,可以修改这个数组的内容
Events: “KeyField Updated”, 这里表示当条件满足时,触发事件。