ci: auto-generate changelog (#66)

* ci: auto-generate changelog

* cleanup
This commit is contained in:
Robert Kaussow 2021-03-23 21:10:04 +01:00 committed by GitHub
parent f6fbf40648
commit 36a0764eee
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 68 additions and 22 deletions

23
.chglog/CHANGELOG.tpl.md Executable file
View File

@ -0,0 +1,23 @@
# Changelog
{{ range .Versions -}}
## {{ if .Tag.Previous }}[{{ .Tag.Name }}]({{ $.Info.RepositoryURL }}/compare/{{ .Tag.Previous.Name }}...{{ .Tag.Name }}){{ else }}{{ .Tag.Name }}{{ end }} ({{ datetime "2006-01-02" .Tag.Date }})
{{ range .CommitGroups -}}
### {{ .Title }}
{{ range .Commits -}}
- {{ if .Scope }}**{{ .Scope }}:** {{ end }}{{ .Subject }}
{{ end }}
{{ end -}}
{{- if .NoteGroups -}}
{{ range .NoteGroups -}}
### {{ .Title }}
{{ range .Notes }}
{{ .Body }}
{{ end }}
{{ end -}}
{{ end -}}
{{ end -}}

25
.chglog/config.yml Executable file
View File

@ -0,0 +1,25 @@
style: github
template: CHANGELOG.tpl.md
info:
title: CHANGELOG
repository_url: https://github.com/thegeeklab/ansible-doctor
options:
commit_groups:
title_maps:
feat: Features
fix: Bug Fixes
perf: Performance Improvements
refactor: Code Refactoring
chore: Others
test: Testing
ci: CI Pipeline
docs: Documentation
header:
pattern: "^(\\w*)(?:\\(([\\w\\$\\.\\-\\*\\s]*)\\))?\\:\\s(.*)$"
pattern_maps:
- Type
- Scope
- Subject
notes:
keywords:
- BREAKING CHANGE

View File

@ -141,6 +141,15 @@ local PipelineBuildPackage = {
'cd dist/ && sha256sum * > ../sha256sum.txt', 'cd dist/ && sha256sum * > ../sha256sum.txt',
], ],
}, },
{
name: 'changelog',
image: 'thegeeklab/git-chglog',
commands: [
'git fetch -tq',
'git-chglog --no-color --no-emoji ${DRONE_TAG:---next-tag unreleased unreleased}',
'git-chglog --no-color --no-emoji -o CHANGELOG.md ${DRONE_TAG:---next-tag unreleased unreleased}',
],
},
{ {
name: 'publish-github', name: 'publish-github',
image: 'plugins/github-release', image: 'plugins/github-release',

View File

@ -160,6 +160,13 @@ steps:
commands: commands:
- cd dist/ && sha256sum * > ../sha256sum.txt - cd dist/ && sha256sum * > ../sha256sum.txt
- name: changelog
image: thegeeklab/git-chglog
commands:
- git fetch -tq
- git-chglog --no-color --no-emoji ${DRONE_TAG:---next-tag unreleased unreleased}
- git-chglog --no-color --no-emoji -o CHANGELOG.md ${DRONE_TAG:---next-tag unreleased unreleased}
- name: publish-github - name: publish-github
image: plugins/github-release image: plugins/github-release
settings: settings:
@ -618,6 +625,6 @@ depends_on:
--- ---
kind: signature kind: signature
hmac: 83acc01800cba731f9428c073c8a81a4677d4e32156d3f239b438680dcd1b699 hmac: a7735a0b4f1c4f02313d41de0fda30fe4593858f7f1db5eb7066d246c4d39b00
... ...

3
.gitignore vendored
View File

@ -106,3 +106,6 @@ pip-wheel-metadata
docs/themes/ docs/themes/
docs/public/ docs/public/
resources/_gen/ resources/_gen/
# Misc
CHANGELOG.md

View File

@ -1,21 +0,0 @@
# Changelog
## v0.2.0 (2020-12-31)
### Docs
- update demo-role example
- add contributing information
### Breaking Changes
- drop Python 3.5 support
### Others
- migrate to poetry
- replace master by main as default branch
- **deps**: pin docker digests
- **docker**: switch to org.opencontainers image labels
- **docker**: use standalone dockerfiles for multiarch
- use renovate preset config