添加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):
- 控件中声明Jira集成
集成
步骤的部分。 - 使用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_notification
Jira集成的实用程序函数在定义环境变量时将自动使用这些环境变量:
环境变量 | 选项 | 描述 |
---|---|---|
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"