Replies: 1 comment
-
Next steps:
|
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Background
Reno https://docs.openstack.org/reno/latest/ is a tool to manage release notes using note file approach.
Each note is a file committed to the repository, notes get aggregated into release report on release.
Motivation
Currently release notes for kanister are generated using goreleaser, which will list commit messages
as changelog.
This works if commit messages are well formatted and informative, but it's hard to edit or review.
This leads to some unclear changelog entries, also currently there is no categorization of commit messages
in the changelog.
Reno provides a different approach in which a change note is a file which is committed together with
the change. This allows to review and update the change notes if necessary.
Files and configuration
Reno files are stored in
releasenotes
directory.Reno configuration is stored in
releasenotes/config.yaml
file.Configuration reference can be found at https://docs.openstack.org/reno/latest/user/usage.html#configuring-reno
Usage
A new note can be added with
reno new <note_name>
wherenote_name
should be descriptive identifier of the change.This command will create a new file in
releasenotes/notes
directory.The file is in YAML format using reStructuredText for text.
The file will follow the template defined in
config.yaml
.After adding some items to the note, unused fields can be removed from the note file for simplicity.
When creating a release, notes can be aggregated using
reno report ./
command.Flow
When creating a new PR which introduces some noteworthy changes, add a note describing them.
When reviewing a PR which should have a note, a reviewer may ask to add a release note or add it themselves if they have push access to the branch.
OSS contributions: If OSS contributor change was merged without a release note, a follow-up PR should be added to add the note, but ideally
we'd want all noteworthy PRs to have notes in them.
By default
Allow edits from maintainers
is enabled, which allows PR reviewers to commit release notes to the contributers fork branch.Tooling
PR #2604 adds reno as a tool to build container, adds a new make command to generate notes
and adds reno changelog generation to goreleaser.sh
Beta Was this translation helpful? Give feedback.
All reactions