Verified Commit 37232f71 authored by Kevin Morris's avatar Kevin Morris
Browse files

feat: add git-cliff configuration

git-cliff is a tool which allows us to generate changelog
based off of conventional commits in the repository.

This commit provides an initial cliff.toml configuration
file which formats changelog output with tables and branch
state metadata.

Upstream: https://github.com/orhun/git-cliff

Signed-off-by: Kevin Morris's avatarKevin Morris <kevr@0cost.org>
parent d22580fa
Pipeline #12264 passed with stage
in 9 minutes and 32 seconds
# configuration file for git-cliff (0.1.0)
[changelog]
# changelog header
header = """
# Changelog
All notable feature additions, bug fixes and changes to this project will be \
documented in this file.\n
"""
# template for the changelog body
# https://tera.netlify.app/docs/#introduction
body = """
{% if version %}\
#### Release [{{ version | trim_start_matches(pat="v") }}] - {{ timestamp | date(format="%Y-%m-%d") }}
{% else %}\
{% set head = commits | last %}\
| Branch | HEAD | Status | Coverage |
|--------|------|--------|----------|
| [pu](https://gitlab.archlinux.org/archlinux/aurweb/-/tree/pu) | [{{ head.id | truncate(length=8, end="") }}](https://gitlab.archlinux.org/archlinux/aurweb/-/commits/{{ head.id }}) | ![pipeline](https://gitlab.archlinux.org/archlinux/aurweb/badges/pu/pipeline.svg?key_text=build) | ![coverage](https://gitlab.archlinux.org/archlinux/aurweb/badges/pu/coverage.svg) |
{% endif %}\
{% for group, commits in commits | group_by(attribute="group") %}
### {{ group | lower }}
| Commit | Message |
|--------|---------| \
{% for commit in commits %}
| [{{ commit.id | truncate(length=8, end="") }}](https://gitlab.archlinux.org/archlinux/aurweb/-/commit/{{ commit.id }}) | {{ commit.message }} |\
{% endfor %}
{% endfor %}\n
"""
# remove the leading and trailing whitespaces from the template
trim = true
# changelog footer
footer = """
## Notes
See a general project status overview at \
https://gitlab.archlinux.org/archlinux/aurweb/-/wikis/Home.
To contribute with testing of the modern aurweb FastAPI port development, visit \
https://gitlab.archlinux.org/archlinux/aurweb/-/wikis/Testing-Guide.
To file a bug, create an issue using the Bug template by following the link: \
https://gitlab.archlinux.org/archlinux/aurweb/-/issues/new?issuable_template=Bug.
To provide feedback, create an issue using the Feedback template by following
the link: \
https://gitlab.archlinux.org/archlinux/aurweb/-/issues/new?issuable_template=Feedback.
<!-- generated by git-cliff -->
"""
[git]
# allow only conventional commits
# https://www.conventionalcommits.org
conventional_commits = true
# regex for parsing and grouping commits
commit_parsers = [
{ message = "^feat", group = "Features"},
{ message = "^fix", group = "Bug Fixes"},
{ message = "^doc", group = "Documentation"},
{ message = "^perf", group = "Performance"},
{ message = "^change", group = "Changes" },
{ message = "^refactor", group = "Refactor"},
{ message = "^style", group = "Styling"},
{ message = "^test", group = "Testing"},
{ message = "^chore\\(release\\): prepare for", skip = true},
{ message = "^chore", group = "Miscellaneous Tasks"},
{ body = ".*security", group = "Security"},
]
# filter out the commits that are not matched by commit parsers
filter_commits = false
# glob pattern for matching git tags
tag_pattern = "v[0-9]*"
# regex for skipping tags
skip_tags = "v0.1.0-beta.1"
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment