问题标签 [automation-for-jira]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
775 浏览

json - Automation for JIRA 中 webhook 的 JSON 有效负载中的转义值

我有一个使用 Code Barrel 的自动化 JIRA插件配置的 webhook 操作。它向需要 JSON 有效负载的端点发送请求。

使用模板语法,我可以编写一个自定义主体,例如

将值模板化到 JSON 有效负载中:

显示上述模板的图像

但是,这是脆弱的;如果任何模板值包含双引号或反斜杠,我们可能会生成语法上无效的 JSON 有效负载。

JIRA 自动化中有什么方法可以转义文本以包含在 JSON 字符串中?

0 投票
0 回答
216 浏览

automation - Jira 自动化:如果评论不限于特定组,则复制评论

我创建了一个自动化任务,该任务将评论从积压/冲刺卡复制到相关的服务台工单。这很好用。但是,我只想复制不受限制的评论。

当前自动化设置:

时间:问题已评论

对于链接问题

类型:原因

如果:问题与 JQL 匹配

项目 =服务台名称

然后:添加评论到问题

评论文字

我想在“针对链接问题”步骤之前添加一个“比较两个值”检查,以检查评论是否仅限于开发人员。如果评论是在服务台工单上发表的,我可以使用{{comment.internal}}来检查评论是公开的还是内部的。由于限制选项不同,我不知道积压卡上的评论有什么相同的价值。我试过{{comment.developers}}但自动化不知道如何处理该值。

IMG:评论仅限于开发者

0 投票
0 回答
1966 浏览

jira - Scriptrunner 行为:当我选择特定的单选按钮选项时,如何使自定义字段成为必需?

版本 - Jira v8.5.1 的行为

几个月来,我一直在使用 Beavhiours 脚本并取得了巨大的成功。它目前根据用户选择(列表、级联列表、复选框)显示/隐藏各种字段。我想根据单选按钮的值来调整文本字段的必需/可选条件。

是:当我做出正确的单选按钮选择时,文本字段必需的状态不会改变应该是:当我选择特定的单选按钮时,文本字段应该成为必需的

目标:当 1. 单选按钮 (radioField) 和 2. 级联列表 (listField) 都满足特定选择条件时,使用 Adaptavist Behaviors 使 textField 成为必需。

这是我在“行为”“字段”之一中的示例代码:

除了使文本字段成为必需之外,此代码有效。我可以通过以下步骤获取所需的文本字段:

  1. 将 listString 设置为“[Parent1,Child2]”
  2. 将 radioString 设置为“无线电选项”
  3. 将列表字符串设置为“[Parent1, Child1]” 在这种情况下,我们选择一个显示单选按钮字段但不满足使文本字段成为必填条件的列表选项(“[Parent1, Child2]”)。然后我们可以将单选按钮设置为正确的选项。然后将列表选项设置为满足使文本字段成为必需的第二个条件(“[Parent1,Child1]”)的选项。

鉴于这种行为,似乎只有在我更改列表字段选择时才会更新单选按钮字段值。但它不应该独立于我的列表选择吗?

附加信息:当我更改选择时,我的单选按钮都不会更新它们的值。我通过在单选按钮值上使用 log.warn 来确定这一点,然后检查内置脚本“查看服务器日志文件”的“atlassian-jira.log”最后几行中的打印语句。单选按钮保持在其默认。

0 投票
0 回答
401 浏览

jira - JQL - 如何按类型过滤链接问题?

我正在为我当前的项目实施 Jira 自动化,但遇到了障碍。目前的工作流程是这样的:

  • 触发器 -> 问题转换为已解决
  • 条件 -> 问题类型等于“测试运行”
  • 条件 -> 问题匹配 issueLinkType(已创建)
  • 操作 -> 发送 Slack 消息

我想在工作流中添加一个条件,即仅当条件表明创建的链接问题是错误或性能时才完成操作。目前该消息打印出所有类型的链接问题(如故事、其他测试运行等),这不是我想要的。

有任何想法吗?

0 投票
0 回答
15 浏览

json - JSON 为什么不会检测和替换这个特定的空白字符?

我在 Jira 实例中设置了一些自动化功能,以捕获和删除在通过电子邮件将票证发送到 Jira 时自动生成的外部发件人表。我大部分时间都在工作,但有一个小而令人费解的部分在整个事情中引发了一把扳手。我可以删除 99% 的表格,但如果我将剩余的 2 个字符包含在代码中,它们将破坏整个删除过程。

这是有效的:

{{issue.description.replaceAll("\|\{color:#ff3333\} \*EXTERNAL SENDER:\*\{color\} Do not click any links or open any attachments unless you trust the sender and know the content is safe.\|\n\|", "")}}

请注意,管道指示表的一段的开始和结束。该表有 2 行。有效的(上图)是删除所有表格,除了表格第二行的中间和末尾。

这是不起作用的:

{{issue.description.replaceAll("\|\{color:#ff3333\} \*EXTERNAL SENDER:\*\{color\} Do not click any links or open any attachments unless you trust the sender and know the content is safe.\|\n\| \|", "")}}

此示例在末尾添加了一个空格字符和一个管道(行结束)字符。实际上,这确实与表的复制/粘贴完全匹配,并且应该完美地翻译并完成从工单描述中删除外部发件人表的最后 1%。有效的代码只能删除除“|”之外的所有内容 部分在最后。一旦我添加了最后一部分,代码就会中断并且不会删除外部发件人表的一位。最后,我尝试了对代码的多种变体,包括:

有什么我在这里遗漏的东西可以解释为什么只有“\|” 最后部分替换 JSON 代码会导致代码完全错过表格吗?