Release Plan: Release Notes Automation¶
Summary¶
- Automate weekly packaging of Vemo Manage release notes by promoting
unreleasedmarkdown artifacts into dated files underdocs/release-notes/releases/and resetting the base templates for the next cycle. - Scope is internal release-note operations; no direct customer-facing product change.
Included Scope¶
- GitLab CI job
02 publish:releaseinbf-release/Changes.gitlab-ci.ymlrunning in stageStaging(changes). - On each run, clones projects listed in
PROJECTS(defaultevenergi/vemo/vemo-manage), computescode(YYYY.WW) anddatefromSCHEDULE(default "next tuesday"), and processes base artifactsdocs/release-notes/unreleased(.internal).md. - Generates new release notes in
docs/release-notes/releases/<YYYY.WW>.md(and.internal.mdfor variants), preserves existing files by refusing to overwrite, and commits/pushes branchrelease-notes-<YYYY.WW>with messagedocs(release): publish release notes for <code> [skip ci]. - Resets the base
unreleasedartifacts to a default template with empty Added/Changed/Fixed sections after promotion.
Release Notes¶
- Expected outputs per run:
docs/release-notes/releases/<YYYY.WW>.mdanddocs/release-notes/releases/<YYYY.WW>.internal.mdcontaining front matter (title =<YYYY.WW>, release_date = computed date) plus the prior unreleased content body. - Base artifacts
docs/release-notes/unreleased.mdanddocs/release-notes/unreleased.internal.mdare rewritten to the default stub template ready for the next cycle.
Rollout Controls¶
- Scheduled runs require
PUBLISH_RELEASE=trueand the CI schedule; manual invocation is allowed via the same job when explicit pushes are needed. - Branch output is isolated to
release-notes-<YYYY.WW>; target projects must haveGITLAB_TOKENpush access.
Validation¶
- GitLab pipeline run has been executed to verify cloning, release-note generation, template reset, and push to the target branch.