From 812c1f4c1666a0ef9e61d24ad128b403ccf5ca32 Mon Sep 17 00:00:00 2001 From: Philipp Hugenroth Date: Thu, 28 Sep 2023 14:51:11 +0200 Subject: [PATCH] Update publishing.md Signed-off-by: Philipp Hugenroth --- docs/publishing.md | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/docs/publishing.md b/docs/publishing.md index 558e1c9141..6563addc97 100644 --- a/docs/publishing.md +++ b/docs/publishing.md @@ -16,8 +16,9 @@ PR is merged. This is typically done every Tuesday around noon CET. ## Next Line Release Process - PR Checks: Notify the teams & ensure there are no outstanding PRs pending to be merged for this version. This should be done in time to ensure a smooth release day. If there are any, reach out to maintainers and relevant owners of the affected code reminding them of the deadline for the release. -- [optional] Lock main branch - - Lock the main branch to prevent any new merges. +- Lock main branch + - Lock the main branch to prevent any new merges by other maintainers. Do not unlock the main branch until the release was published successfully + - Core maintainers can still merge last PRs using their admin override including the Version Packages PR - Note: Admin rights are required to lock the branch. If you lack the necessary permissions, contact a core maintainer to perform this action on your behalf. - Check [`Version Packages (next)` Pull Request](https://github.com/backstage/backstage/pulls?q=is%3Aopen+is%3Apr+in%3Atitle+%22Version+Packages+%28next%29%22) - Verify the version we are shipping is correct, by looking at the version packages PR title. It should be "Version Packages (next)" @@ -32,23 +33,28 @@ PR is merged. This is typically done every Tuesday around noon CET. Merging the `Version Packages (next)` Pull Request will trigger the deployment workflows. Follow along the [deployment workflow](https://github.com/backstage/backstage/actions/workflows/deploy_packages.yml). If you notice flakiness (e.g. if the build is flaky or if the release step runs into an error with releasing to npm) just restart the workflow. +Congratulations on the release! There should be now a post in the [`#announcements` channel](https://discord.com/channels/687207715902193673/705123584468582400) in Discord linking to the release tag - check if links & tag look as expected. Once the notification has gone out on Discord you can unlock the main branch & the release is complete. + ## Main Line Release Process Additional steps for the main line release - [Switch Release Mode](#switching-release-modes) to exit pre-release mode. This can be done at any time after the last Next Line Release. + - Check [`.changeset/pre.json`](https://github.com/backstage/backstage/blob/master/.changeset/pre.json) if the `mode` is set to `exit`. If you encounter `mode: "pre"` it indicates a next line release. - Check [`Version Packages` Pull Request](https://github.com/backstage/backstage/pulls?q=is%3Aopen+is%3Apr+in%3Atitle+%22Version+Packages) - Check for mentions of "major" & "breaking" and if they are expected in the current release - Verify the version we are shipping is correct - - Check [`.changeset/pre.json`](https://github.com/backstage/backstage/blob/master/.changeset/pre.json) if the `mode` is set to `exit`. If you encounter `mode: "pre"` it indicates a next line release. - Create Release Notes - - There exists a "Backstage Release Notes" template for creating the release notes. It can already be created after the last main line release to keep track of major changes during the month. - - The content is picked by relevancy for the community showcasing the work of the community during the month before the release. - - @0.1.0 - -- [Switch Release Mode](#switching-release-modes) to enter pre-release mode + - There exists a "Backstage Release Notes" template for creating the release notes. It can already be created after the last main line release to keep track of major changes during the month + - The content is picked by relevancy showcasing the work of the community during the month of the release + - Mention newly added packages or features + - Mention any security fixes +- Create Release Notes PR + - Add the release note file as [`/docs/releases/vx.y.0.md`](https://github.com/backstage/backstage/tree/master/docs/releases) + - Add an entry to [`/microsite/sidebar.json`](https://github.com/backstage/backstage/blob/master/microsite/sidebars.json) for the release note + - Update the navigation bar item in [`/microsite/docusaurus.config.js`](https://github.com/backstage/backstage/blob/master/microsite/docusaurus.config.js) to point to the new release note -Congratulations on the release! There should be now a post in the [`#announcements` channel](https://discord.com/channels/687207715902193673/705123584468582400) in Discord linking to the release tag - check if links & tag look as expected. Finally unlock the main branch again. Merging PRs in master directly after release should be done with caution as it potential complicates fixing issues introduced in the release. +Once the release has been published edit the newly created release in the [GitHub repository](https://github.com/backstage/backstage/releases) and replace the text content with the release notes. ## Switching Release Modes