chore(ci): tag-triggered release workflow and helpers
Release / build-and-push (push) Successful in 1m17s
Release / build-and-push (push) Successful in 1m17s
Add .gitea/workflows/release.yml: on v* tag push (or manual dispatch) build the Docker image and push git.linuxhg.com/games-database/games-api:<tag> plus :latest, then create/update the Gitea Release from the annotated tag message. Main-branch pushes do nothing so WIP never ships. Add cliff.toml (conventional-commit grouping for release notes), Makefile release target (cliff notes into annotated tag, then push), and ./release wrapper (accepts 1.0 or v1.0). Release flow: ./release v1.0, matching bookhoard. Requires a REGISTRY_TOKEN repo Actions secret (PAT with write:package and write:repository); Gitea's auto token lacks package scope.
This commit is contained in:
+37
@@ -0,0 +1,37 @@
|
||||
# git-cliff configuration — generates the body of each Gitea Release from
|
||||
# Conventional Commits accumulated since the previous tag. Used locally by
|
||||
# `make release` with --latest so only the current tag's section is emitted
|
||||
# (no full history, no header — the Gitea Release title is the tag).
|
||||
# Docs: https://git-cliff.org/docs/configuration
|
||||
|
||||
[changelog]
|
||||
header = ""
|
||||
body = """
|
||||
{% for group, commits in commits | group_by(attribute="group") %}\
|
||||
### {{ group | upper_first }}
|
||||
{% for commit in commits %}\
|
||||
- {% if commit.scope %}*({{ commit.scope }})* {% endif %}{{ commit.message | upper_first }} ({{ commit.id | truncate(length=7, end="") }})
|
||||
{% endfor %}\
|
||||
{% endfor %}\
|
||||
"""
|
||||
trim = true
|
||||
footer = ""
|
||||
|
||||
[git]
|
||||
conventional_commits = true
|
||||
filter_unconventional = false
|
||||
require_conventional = false
|
||||
split_commits = false
|
||||
commit_parsers = [
|
||||
{ message = "^feat", group = "Features" },
|
||||
{ message = "^fix", group = "Bug Fixes" },
|
||||
{ message = "^perf", group = "Performance" },
|
||||
{ message = "^refactor", group = "Refactor" },
|
||||
{ message = "^docs", group = "Documentation" },
|
||||
{ message = "^test", group = "Tests" },
|
||||
{ message = "^chore|^ci", group = "Miscellaneous Tasks" },
|
||||
{ message = ".*", group = "Other" },
|
||||
]
|
||||
filter_commits = false
|
||||
tag_pattern = "v[0-9].*"
|
||||
sort_commits = "oldest"
|
||||
Reference in New Issue
Block a user