云客户?
免费开始>
在MyJFrog中升级>
云的新功能>





概述

pipeline提供了从执行管道为Atlassian Jira Cloud或Server中的项目存储库创建新问题(也称为票证)的功能。

在以下情况下,您可能希望在Jira项目存储库中创建一个新问题(票据):

  • 您的构建无法完成
  • 您的管道运行自动化测试,当测试失败时,您需要创建一个新的Jira问题

在管道中使用此功能不需要安装额外的插件或扩展。它利用了一个内置的实用程序函数,可以从管道中的任何步骤调用该函数。


页面内容


添加Jira集成

要向Jira发送消息,必须首先添加Jira集成管道。Jira集成安全地将您的访问凭证保存在pipeline的加密库中,因此这些信息在pipeline DSL文件的文本中是不可见的。

要添加Jira集成,请遵循中的过程管理管道集成

例如,要添加Jira集成称为myJira,您可以输入以下内容:

用户名令牌字段提供必要的凭据来验证来自管道的访问:

  • 用户名:表示的用户帐户用户名必须有访问Jira项目的权限在哪里产生问题。
  • Jira云代币在与Jira Cloud集成时,您必须提供Jira API令牌中的Jira用户帐户令牌字段。
  • Jira服务器密码:与Jira Server集成时,必须在令牌字段(Jira Server不支持API令牌)。



创建Jira问题

从流水线中的步骤创建一个新的Jira issue (ticket):

  1. 控件中声明Jira集成集成步骤的部分。
  2. 使用Send_notification实用程序功能通知Jira集成创建问题票据。

您通常会将通知发送到JiraonFailure步骤的一部分执行块。

execute: onExecute:…onFailure: - send_notification myJira——project-id "DEMO"——type "Bug"——summary "Build Failed: $pipeline_name:$run_number"——description "Step $step_name" Failed"

project-id必须为已经在Jira中创建的项目指定一个密钥。如果Jira收到为一个不存在的项目创建票证的请求,Jira将忽略该请求。

使用环境变量

如果您的管道将有多个故障点来创建Jira问题,您可以选择为这些选项定义公共值,例如项目id和环境变量中的类型。的send_notificationJira集成的实用程序函数在定义环境变量时将自动使用这些环境变量:

环境变量 选项 描述
NOTIFY_PROJECT_ID ——项目号 与新问题关联的项目的项目密钥
NOTIFY_TYPE ——类型

问题类型对于新问题(例如,“Bug”,“Task”等)。

NOTIFY_SUMMARY ——总结

新问题的摘要字段的字符串(它的标题)

NOTIFY_DESCRIPTION ——描述

新问题的描述字段的字符串

NOTIFY_ATTACH_FILE ——附件

要附加到问题的文件的路径


您可以在管道中定义这些环境变量中的任何一个配置块,使用environmentVariables标记,以便它们将对管道中的所有步骤可用。如果需要,还可以指定environmentVariables在步骤中配置块,以便在该步骤执行的范围内重写它们的值。

例子

下面的示例管道演示了send_notification实用程序函数创建Jira问题(票据)。

管道DSL示例执行以下操作:

  • 为项目id和类型选项设置环境变量
  • 执行一个MvnBuild本机步骤,生成日志文件。
  • 失败时,使用send_notification实用函数来创建JIra票据。命令行:
    • 的环境变量项目id和类型选项
    • 将Maven生成的日志文件附加到Jira问题
    • 指定了使用摘要和描述选项标准环境变量


2022世界杯阿根廷预选赛赛程资源:-名称:my_repo类型:GitRepo配置:gitProvider: MyGithub路径:myrepo/myproject管道:-名称:jira_ticket_example配置:环境变量:readOnly: NOTIFY_PROJECT_ID:“DEMO”# Jira项目关键为所有票据我们创建NOTIFY_TYPE:“Bug”# Jira问题类型为所有票据我们创建步骤:###与Jira日志附件-名称:BuildSample类型:MvnBuild配置:sourceLocation: artifactorymaven -plugin-example configFileLocation:。configFileName: config mvnCommand: "install - p release——log-file ${step_tmp_dir}/log.txt" input2022世界杯阿根廷预选赛赛程Resources: - name: my_repo integrations: - name: myArtifactory - name: myJira execution: onFailure: - send_notification myJira——attach-file "$step_tmp_dir/log.txt"——description " failed failed in $pipeline_name - $step_name"——summary "$step_name has failed"
  • 没有标签
版权所有©2023 JFrog Ltd.