antsichaut 自动从GitHub Pull Requests生成Ansible更改日志
项目描述
Antsichaut
Antsichaut 自动填充由 antsibull-changelog 使用的 changelog.yaml
。
您定义一个 GitHub 仓库和一个 GitHub 发布。然后脚本搜索自发布以来的所有拉取请求并将它们添加到 changelog.yaml
。
PR 将根据以下默认标签分类到更改日志部分
group_config = [
{"title": "major_changes", "labels": ["major", "breaking"]},
{"title": "minor_changes", "labels": ["minor", "enhancement"]},
{"title": "breaking_changes", "labels": ["major", "breaking"]},
{"title": "deprecated_features", "labels": ["deprecated"]},
{"title": "removed_features", "labels": ["removed"]},
{"title": "security_fixes", "labels": ["security"]},
{"title": "bugfixes", "labels": ["bug", "bugfix"]},
{"title": "skip_changelog", "labels": ["skip_changelog"]},
]
这意味着例如,带有标签 major
的 PR 被分类到更改日志的 major_changes
部分。
具有 skip_changelog
的 PR 完全不会被添加到更改日志中。
没有上述标签之一的PR会被归类到trivial
部分。
安装
pip install antsichaut
手动使用
您需要一个由antsibull-changelog创建的最小changelog.yml
。
antsibull-changelog release --version 1.17.0
然后定义您想要从中获取PR的版本和GitHub仓库。可以通过参数或环境变量实现。
> cd /path/to/your/ansible/collection
> antsichaut \
--github_token 123456789012345678901234567890abcdefabcd \
--since_version 1.17.0 \
--to_version 1.18.0 \
--major_changes_labels=foo
--major_changes_labels=bar
--minor_changes_labels=baz
--repository=T-Systems-MMS/ansible-collection-icinga-director
> cd /path/to/your/ansible/collection
> export SINCE_VERSION=1.17.0 # (or `latest`)
> export TO_VERSION=1.18.0 # optional. if unset, defaults to current date
> export REPOSITORY=T-Systems-MMS/ansible-collection-icinga-director
> export MAJOR_CHANGES_LABELS=["foo","bar"]
> export MINOR_CHANGES_LABELS=["baz"]
> antsichaut
这将为changelog.yaml
填充PR。然后运行antsibull-changelog generate
来创建最终的变更日志。
使用Github Actions的用法
输入
since_version
必需 获取PR的起始版本
to_version
获取PR的结束版本
用法
---
- name: "Get Previous tag"
id: previoustag
uses: "WyriHaximus/github-action-get-previous-tag@master"
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
- name: "Run antsichaut"
uses: ansible-community/antsichaut@main
with:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
since_version: "${{ steps.previoustag.outputs.tag }}"
示例
查看以下示例: telekom_mms.icinga_director prometheus.prometheus
致谢和赞扬
此脚本最初是从https://github.com/saadmk11/changelog-ci/分叉并修改的,由@rndmh3ro修改。感谢,@saadmk11!
从2021年5月到2023年5月,该项目由@rndmh3ro维护,然后慷慨地转让给了ansible社区组织。感谢@rndmh3ro!
许可证
此项目中的代码是在MIT许可下发布的。
项目详情
下载文件
下载您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源分布
antsichaut-0.4.0.tar.gz (8.5 kB 查看哈希值)
构建分布
antsichaut-0.4.0-py3-none-any.whl (9.4 kB 查看哈希值)
关闭
antsichaut-0.4.0.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 5bf981d29f99e47f98b1306004baa04e0f2d0bd10784ca9731ffc61f92cb679c |
|
MD5 | 90d87933e771760919643ed8d170c7a3 |
|
BLAKE2b-256 | e78b2bc72bd91dbffd5894e85badb0237fef7917dbbcf3495de3cc28a121531d |
关闭
antsichaut-0.4.0-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 86bf9c4f332a56b9bbacc8a158add4ac94ef21e05881bce3e8883f651551c0f1 |
|
MD5 | 2b758783c946e41a8742a11be2cd62da |
|
BLAKE2b-256 | e36b14594170a72c0d6008279bd0843674c8847d6da9c49c07071b9f75d4006a |