What is reno ?¶
Nova uses reno for providing release notes in-tree. That means that a patch can include a reno file or a series can have a follow-on change containing that file explaining what the impact is.
A reno file is a YAML file written in the releasenotes/notes tree which is generated using the reno tool this way:
$ tox -e venv -- reno new <name-your-file>
<name-your-file> can be
bp-<blueprint_name> for a
bug-XXXXXX for a bugfix.
Refer to the reno documentation for the full list of sections.
When a release note is needed¶
A release note is required anytime a reno section is needed. Below are some examples for each section. Any sections that would be blank should be left out of the note file entirely. If no section is needed, then you know you don’t need to provide a release note :-)
- The patch has an UpgradeImpact tag
- A DB change needs some deployer modification (like a migration)
- A configuration option change (deprecation, removal or modified default)
- some specific changes that have a DocImpact tag but require further action from an deployer perspective
- any patch that requires an action from the deployer in general
- If the patch fixes a known vulnerability
- If the patch has an APIImpact tag
- For nova-manage and python-novaclient changes, if it adds or changes a new command, including adding new options to existing commands
- not all blueprints in general, just the ones impacting a contractual API
- a new virt driver is provided or an existing driver impacts the HypervisorSupportMatrix
- Bugfixes categorized as Critical in Launchpad impacting users
- No clear definition of such bugfixes. Hairy long-standing bugs with high importance that have been fixed are good candidates though.
Three sections are left intentionally unexplained (
other). Those are targeted to be filled in close to the release time for
providing details about the soon-ish release. Don’t use them unless you know
exactly what you are doing.