Changelog generator
Write changelog to the console for the github
repository lorislab/release-notes
changelog generate --repository lorislab/release-notes --token **** --version 2.0.0 --console
Create release and close version for the github
repository lorislab/release-notes
changelog generate --repository lorislab/release-notes --token **** --version 2.0.0 --create-release --close-version
If the tool is running in the GitHub it will also check these environment variables if they are not specified:
- GITHUB_REF - version paremeter
- GITHUB_REPOSITORY - repository parameter
❯ changelog generate --help
Generate change for the release
Usage:
changelog generate [flags]
Flags:
--close-version close version
--console write changelog to the console
--create-release create release and changelog
-f, --file string changelog definition (default "changelog.yaml")
-h, --help help for generate
-r, --repository string repository name (mandatory)
-t, --token string access token
-e, --version string release version (mandatory)
Global Flags:
--config string config file (default is $HOME/.changelog.yaml)
-v, --verbosity string Log level (debug, info, warn, error, fatal, panic (default "info")
Example of changelog.yaml
sections:
- title: Major changes
labels:
- "release/super-fearure"
- title: Complete changelog
labels:
- "bug"
- "enhancement"
template: |
Maven dependency:
<dependency>
<groupId>io.quarkus</groupId>
<artifactId>quarkus-universe-bom</artifactId>
<version>{{ .Version }}</version>
</dependency>
{{ range $section := .Sections }}{{ if $section.Items }}### {{ $section.GetTitle }}{{ range $item := $section.Items }}
* [#{{ $item.GetID }}]({{ $item.GetURL }}) - {{ $item.GetTitle }}{{ end }}{{ end }}
{{ end }}
goreleaser release --snapshot --clean