levonet.ci_jira_comment

CI:带构建信息的Jira评论

构建状态

添加新评论或更新最后的CI评论,将构建信息添加到Jira任务中。

角色变量

  • ci_jira_api(必需):Jira API URL。
  • ci_jira_username(必需):Jira用户名。
  • ci_jira_password(必需):Jira密码。
  • ci_jira_github_branch(必需):Github分支名称。必须包含Jira任务ID。例如 TODO-44.feature
  • ci_jira_github_pr(必需):Github拉取请求编号。
  • ci_jira_github_repository_url(可选):Github代码库URL。
  • ci_jira_task_filter(必需):从Github分支提取Jira任务的正则表达式过滤器。例如:(TODO|BUGS)-\d+
  • ci_jira_message_body(可选):一些包含CI信息的文本消息。
  • ci_jira_message_id(可选):唯一的文本消息ID。如果Jira评论中需要多个消息时需要。
  • ci_jira_message_title(可选):默认值为 Continuous Integration
  • ci_jira_ignore_errors(可选):默认值为 no

示例剧本

- hosts: 127.0.0.1
  connection: local
  gather_facts: no
  vars:
    ci_jira_api: https://myorg.atlassian.net/rest/api/2
    ci_jira_username: ci-bot
    ci_jira_password: secret
    ci_jira_github_branch: "{{ github_branch }}"
    ci_jira_github_pr: "{{ github_pr_number }}"
    ci_jira_github_repository_url: https://github.com/myorg/myapp
    ci_jira_task_filter: (MYAPPAPI|MYAPPDB|BUGS)-\d+
    ci_jira_message_body: |
      * 应用: [pr-{{ ci_jira_github_pr }}.myapp.myorg.com|http://pr-{{ ci_jira_github_pr }}.myapp.myorg.com]
      * 日志: [myapp-PR-{{ ci_jira_github_pr }}|http://grafana.myorg.com/d/XxXxXx/logs?var-host=sandbox1&var-app=myapp-PR-{{ ci_jira_github_pr }}]
      * Jenkins: [PR-{{ ci_jira_github_pr }}|http://jenkins.myorg.com/job/myapp/view/change-requests/job/PR-{{ ci_jira_github_pr }}/]
  roles:
    - role: levonet.ci_jira_comment

在Jenkins中运行:

ansible-playbook myplaybook.yml -e github_branch="${CHANGE_BRANCH}" -e github_pr_number="${CHANGE_ID}"

最终,你将在Jira任务中收到如下评论:

持续集成

许可

MIT

作者信息

该角色由 Pavlo Bashynskyi 创建。

关于项目

Add new or update last CI comment with build information to Jira task.

安装
ansible-galaxy install levonet.ci_jira_comment
许可证
mit
下载
61.5k
拥有者