diff --git a/release-team/role-handbooks/docs/Release-Timeline.md b/release-team/role-handbooks/docs/Release-Timeline.md index ea351665091..51e5fb09ea7 100644 --- a/release-team/role-handbooks/docs/Release-Timeline.md +++ b/release-team/role-handbooks/docs/Release-Timeline.md @@ -36,11 +36,11 @@ - [Style Guide Checklist (High to Low Level)](#style-guide-checklist-high-to-low-level) - [Nominate a Docs Lead for the Next Release](#nominate-a-docs-lead-for-the-next-release) - [Late-Middle Steps (Weeks 7-8) - Sync with Comms team on the release blog post](#late-middle-steps-weeks-7-8---sync-with-comms-team-on-the-release-blog-post) - - [Late Steps (Weeks 9-11) - Prep for the release](#late-steps-weeks-9-11---prep-for-the-release) - - [Touch base with SIG Docs](#touch-base-with-sig-docs) - - [Touch base with SIG Cluster Lifecycle (kubeadm)](#touch-base-with-sig-cluster-lifecycle-kubeadm) - - [Clean up and edit the final Release Notes](#clean-up-and-edit-the-final-release-notes) - - [Curate the External Dependencies section](#curate-the-external-dependencies-section) + - [Late Steps (Weeks 9-11) - Prep for the Release](#late-steps-weeks-9-11---prep-for-the-release) + - [⚠️ Final Release Notes Preparation (CRITICAL TASK)](#️-final-release-notes-preparation-critical-task) + - [Coordinate with SIG Docs for Release Day Support](#coordinate-with-sig-docs-for-release-day-support) + - [Verify SIG Cluster Lifecycle (kubeadm) Documentation](#verify-sig-cluster-lifecycle-kubeadm-documentation) + - [Curate the External Dependencies Section](#curate-the-external-dependencies-section) - [Update Releases Page (the week before the release)](#update-releases-page-the-week-before-the-release) - [Release Week (Week 12)](#release-week-week-12) - [Update the site configuration files for previous releases](#update-the-site-configuration-files-for-previous-releases) @@ -624,30 +624,116 @@ If unsure, send a message to their [Slack](https://kubernetes.slack.com/messages Be congnizant of the status of the release blog post as merging and publishing the release blog post is a significant step on release day e.g., [1.21 release blog](https://github.com/kubernetes/website/pull/27233). -## Late Steps (Weeks 9-11) - Prep for the release +## Late Steps (Weeks 9-11) - Prep for the Release + +During these weeks, the Docs Lead focuses on finalizing release notes, coordinating with SIG Docs and SIG Cluster Lifecycle, and ensuring all documentation is ready for release day. + +### ⚠️ Final Release Notes Preparation (CRITICAL TASK) + +> [!Important] +> This is a **Docs Lead responsibility** and a **time-intensive task**. Release notes accumulate throughout the cycle as changes progress through `alpha` → `beta` → `rc` (Release Candidate) → Final release cut. +> Start this process around **Docs Freeze** (as noted in the release calendar), since release notes typically diminish after each `rc`. Aim to have reviews completed before the final `rc.1` release, so you are in a comfortable position to incorporate any final `rc.1` changes and merge before the release cut. + +**What:** Perform a comprehensive final review of all release notes to ensure they conform to the [Documentation Style Guide](https://kubernetes.io/docs/contribute/style/style-guide/) and maintain consistent quality. + +**Process:** This is a manual process to review and clean up the accumulated release notes from the entire release cycle. + +1. **Fork and Setup** + ```bash + # Fork kubernetes/sig-release repo (if not already done) + # Clone your fork + git clone https://github.com/${USERNAME}/sig-release.git + cd sig-release + + # Create a new branch for final release notes review + git checkout -b ${USERNAME}/v[future-release]-final-release-notes-review + ``` + +2. **Review and Edit Release Notes Files** + - Navigate to `releases/release-[future-release]/release-notes/` + - Review and edit both files: `release-notes-draft.json` and `release-notes-draft.md` + - Ensure conformance to [Documentation Style Guide](https://kubernetes.io/docs/contribute/style/style-guide/) + - Check: consistent tone, grammar, clarity, appropriate technical detail + - **⚠️ Keep both files in sync with identical changes** + +3. **Commit and Create PR** + ```bash + git add releases/release-[future-release]/release-notes/ + git commit -m "Final review and cleanup of v[future-release] release notes" + git push origin ${USERNAME}/v[future-release]-final-release-notes-review + ``` + +4. **Open PR for Peer Review** + - Create PR against `kubernetes/sig-release` repository + - Title: `Final review and cleanup of v[future-release] release notes` + - Request review from: + - Docs Team Shadows + - SIG Docs reviewers + - Release Lead + - SIG Chairs and Tech Leads (they need to review release notes changes relevant to their SIGs) + - Post in [#chairs-and-techleads](https://kubernetes.slack.com/archives/CD6LAC15M) to notify SIG Chairs/Tech Leads to look through their release notes changes + +**Example PR:** [v1.35 Final Release Notes Review](https://github.com/kubernetes/sig-release/pull/2928) -### Touch base with SIG Docs +--- -The Kubernetes API reference, kubectl, and components documentation are generated by a SIG Docs tech lead. Check in with SIG Docs with a brief reminder, and confirm that they have everything they need to generate these docs. +### Coordinate with SIG Docs for Release Day Support -### Touch base with SIG Cluster Lifecycle (kubeadm) +The goal here is to identify a **Point of Contact (PoC)** within SIG Docs who can help the Docs Lead with release day tasks and answer questions. Reach out via the SIG Docs meeting or on [#sig-docs](https://kubernetes.slack.com/messages/sig-docs) to confirm: -Validate that SIG Cluster Lifecycle has all of the docs in place for the upcoming release. These are mainly kubeadm docs (upgrading, installing, changes, etc). If unsure, send a message to their [Slack](https://kubernetes.slack.com/messages/sig-cluster-lifecycle/) channel, e.g: +- **Who** will be available on release day to help with Netlify configuration updates and release blog post publication? +- **Generated docs readiness** — Confirm that the Kubernetes API reference, kubectl documentation, and components documentation are ready (these are generated by a SIG Docs tech lead). -> Hi SIG Cluster Lifecylce :wave: 1.21 Docs Lead here, can someone confirm that all docs are in place for the upcoming 1.21 release? - -### Clean up and edit the final Release Notes +**Sample Message (post in [#sig-docs](https://kubernetes.slack.com/messages/sig-docs) Slack channel and also bring to attention during the SIG Docs meeting):** + +``` +Hi @sig-docs-leads 👋 + +The v[future release] release is scheduled for **[Day], [Date] at [Time] [Timezone]**. + +Could someone from SIG Docs be the point of contact for the Docs Lead on release day? Specifically: +1. **Release day support** - Help with Netlify configuration updates and release blog post publication +2. **Generated docs status** - Please confirm these are ready: Kubernetes API reference, kubectl documentation, components documentation + +Thank you! +``` + +--- + +### Verify SIG Cluster Lifecycle (kubeadm) Documentation + +This is to ensure kubeadm-related documentation is complete and ready for the release. -The confirmed release notes are cleaned up and copy edited by the Docs team to ensure uniform language/style is used. The team must make sure that the final document conforms to the [Documentation Style Guide](https://kubernetes.io/docs/contribute/style/style-guide/). +**Action Items:** +- Validate kubeadm documentation completeness +- Send verification message to [#sig-cluster-lifecycle](https://kubernetes.slack.com/messages/sig-cluster-lifecycle/) Slack channel -### Curate the External Dependencies section +**Sample Message:** + +``` +Hi @sig-cluster-lifecycle 👋 + +v[future release] Docs Lead here. Can someone confirm all kubeadm documentation (upgrade guides, installation docs, changes) are in place for the v[future release] release on [Date]? + +Thank you! +``` + +--- + +### Curate the External Dependencies Section A "Dependencies" section should be curated which outlines how external dependency versions have changed since the last release. These changes are currently [automatically aggregated](https://github.com/kubernetes/community/issues/2234), but should still be manually validated for correct content and formatting. +--- + ### Update Releases Page (the week before the release) Create a PR against the dev-[future-release] branch to add an entry for [future-release] on https://kubernetes.io/releases. +**Actions:** +- Have a Release Manager `/lgtm` the dates on the PR +- This PR can be merged on release day by the Docs Lead + To update https://kubernetes.io/releases, update https://github.com/kubernetes/website/blob/main/data/releases/schedule.yaml. The following fields are required: - `release`: <1.xy> @@ -659,8 +745,7 @@ The following fields are required: - `endOfLifeDate`: # the 28th of the month after 1 year and 2 months after the release [Example PR for 1.29](https://github.com/kubernetes/website/pull/44135) -Have a Release Manager lgtm the dates on the PR. -This PR can be merged on release day by the Docs lead. + ## Release Week (Week 12) ⚠️ Everything in this section is important. It's OK to ask for advice if you're not sure.