diff --git a/release-team/README.md b/release-team/README.md index 8e6df5be84..d66d23b6b9 100644 --- a/release-team/README.md +++ b/release-team/README.md @@ -75,15 +75,14 @@ there are 3 types of Kubernetes releases: ![release-team](release-team.svg "Release Team Diagram") -| Role | Handbook | -|---|---| -| Release Team Lead | [Lead Handbook](role-handbooks/release-team-lead/README.md) | -| Enhancements | [Enhancements Handbook](role-handbooks/enhancements/README.md) | -| CI Signal | [CI Signal Handbook](role-handbooks/ci-signal/README.md) | -| Bug Triage | [Bug Triage Handbook](role-handbooks/bug-triage/README.md) | -| Docs | [Docs Handbook](role-handbooks/docs/README.md) | -| Release Notes | [Release Notes Handbook](role-handbooks/release-notes/README.md) | -| Communications | [Communications Handbook](role-handbooks/communications/README.md) | +| Role | Handbook | +|-------------------|--------------------------------------------------------------------| +| Release Team Lead | [Lead Handbook](role-handbooks/release-team-lead/README.md) | +| Enhancements | [Enhancements Handbook](role-handbooks/enhancements/README.md) | +| Release Signal | [Release Signal Handbook](role-handbooks/release-signal/README.md) | +| Docs | [Docs Handbook](role-handbooks/docs/README.md) | +| Release Notes | [Release Notes Handbook](role-handbooks/release-notes/README.md) | +| Communications | [Communications Handbook](role-handbooks/communications/README.md) | #### Retired Release Team roles diff --git a/release-team/release-team.svg b/release-team/release-team.svg index 6518e901cd..2dd5d36a87 100644 --- a/release-team/release-team.svg +++ b/release-team/release-team.svg @@ -1,191 +1,168 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Emeritus - - - Adviser - - - - - Release Lead - - - - - Release Lead - - - Shadows - - - - - Enhancements - - - Lead - - - - - Enhancements - - - Shadows - - - - - CI Signal Lead - - - - - CI Signal - - - Shadows - - - - - Bug Triage - - - Lead - - - - - Bug Triage - - - Shadows - - - - - Docs Lead - - - - - Docs - - - Shadows - - - - - Release Notes - - - Lead - - - - - Release Notes - - - Shadows - - - - - Comms Lead - - - - - Comms - - - Shadows - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Emeritus + + + Adviser + + + + + Release Lead + + + + + Release Lead + + + Shadows + + + + + Enhancements + + + Lead + + + + + Enhancements + + + Shadows + + + + + Comms Lead + + + + + Comms + + + Shadows + + + + + Release Signal + + + Lead + + + + + Release Signal + + + Shadows + + + + + Docs Lead + + + + + Docs + + + Shadows + + + + + Release Notes + + + Lead + + + + + Release Notes + + + Shadows + + - + + \ No newline at end of file diff --git a/release-team/role-handbooks/release-signal/README.md b/release-team/role-handbooks/release-signal/README.md index 3f4e312dcb..0d91a59914 100644 --- a/release-team/role-handbooks/release-signal/README.md +++ b/release-team/role-handbooks/release-signal/README.md @@ -17,6 +17,7 @@ * [Day Of The Code Freeze](#day-of-the-code-freeze) * [Once the Code Freeze starts - one week later](#once-the-code-freeze-starts---one-week-later) * [Week 1 of Code Freeze until Code Thaw starts](#week-1-of-code-freeze-until-code-thaw-starts) + * [Release Candidates](#release-candidates) * [Code Thaw](#code-thaw) * [Release Cutting - Go or No-Go](#release-cutting---go-or-no-go) * [Judging State of Testgrid dashboards](#judging-state-of-testgrid-dashboards) @@ -39,6 +40,10 @@ ## Overview +[**Quick Overview ~ _The One Pager_**](/release-team/role-handbooks/release-signal/one-pager.md) + +**_The One-Pager is just a brief summary and NOT A COMPREHENSIVE GUIDE_** + The release signal team is responsible for making sure that **both** Issues (`is:issue`) and Pull Requests (PRs) (`is:pr`), which are targeted for the ongoing release cycle, are dealt with in a timely fashion. It also assumes the responsibility of the quality gate for the release, checking the health status of testgrid dashboards. This team is a combination of old [CI Signal](https://github.com/kubernetes/sig-release/tree/master/release-team/role-handbooks/ci-signal) and [Bug @@ -73,7 +78,7 @@ For Release Signal Lead: For Release Signal Shadows: - 10 minutes daily, checking the state of testgrid, and tracking issues/PRs on the Bug Triage Board. 1/2 hour during assigned periods, where - shadow is the prime testgrid observer (to create issues, investigate and follow up). + shadow is the [main coordinator](#create-assignment-excel-sheet) (to create issues, investigate and follow up). For Both: @@ -189,8 +194,7 @@ Once the onboarding meetings have been organized, the following tasks are good t ### Mid-Release Cycle This stage lasts from around week 6 until the code freeze starts (usually week 9). At this point, the Release Signal team should -start [escalating issues/PRs](#how-to-escalate) and communicating deadlines with contributors and SIG leads. During this time, the -release-x.y-blocking and release-x.y-informing dashboards are also added to the testgrid. +start [escalating issues/PRs](#how-to-escalate) and communicating deadlines with contributors and SIG leads. The following are the major tasks: @@ -279,6 +283,14 @@ If the issue/PR has the `priority/critical-urgent` label, it should be coordinat to determine whether it should be allowed to stay or whether the priority should be decreased and the issue/PR moved to the next milestone. +### Release Candidates + +After the rc.0 and rc.1 cuts, referred to as release candidates, no enhancements are allowed—only bug fixes and regression fixes. + +The branch manager sets up the release-x.y-informing and release-x.y-blocking dashboards after the rc.0 cut. +The Release Signal team should coordinate with the branch manager to ensure the dashboards are set up within the same week. +The Release Signal Lead and Shadows can assist with dashboard setup and resolving any job misconfigurations. + ### Code Thaw A week before the release target date, Code Freeze labelling restrictions are lifted. At this point, you need to make sure that diff --git a/release-team/role-handbooks/release-signal/one-pager.md b/release-team/role-handbooks/release-signal/one-pager.md new file mode 100644 index 0000000000..71620a529c --- /dev/null +++ b/release-team/role-handbooks/release-signal/one-pager.md @@ -0,0 +1,70 @@ +# Release Signal One Pager + +

Minimum text, maximum learning.

+ +Detailed version of this is the [Release Signal Handbook](/release-team/role-handbooks/release-signal/README.md). This is meant to be a quick +reference rather than a comprehensive guide. + +Also refer to [tips and tricks of the game](/release-team/role-handbooks/release-signal/README.md#tips-and-tricks-of-the-game). + +## Release Signal - Testgrid Observation Loop + +```mermaid +flowchart TD + A["Observe Testgrid"] -- Failure --> B["Create GitHub Issue using flake/failure template"] + A -- Flake --> C["Confirm using Triage"] + C -- Is a flake --> B + C -- Not a flake --> A + B --> D["Add relevant details"] + D --> A1["Add labels:
#8226; Priority
#8226; Milestone
#8226; SIG Label"] + A1 --> E["Tag @kubernetes/release-team-release-signal"] + E --> F["Message #release-signal Slack channel"] + F --> G["Reach out to SIG on Slack"] + G --> H["Ping SIG TLs/Chairs/Active Members"] + H --> I["Ask if it's a blocker for upcoming release cut"] + I -- Is a blocker --> J["Mark as blocker"] + I -- Not a blocker --> K["Mark as non-blocker"] + J & K --> L["Add issue with Metadata (e.g. Links, Notes, etc.) \n to CI Signal Board"] + L --> A + + style H fill:#FFD700,color:#000000 + style I fill:#90EE90,color:#000000 + style J fill:#FF6347,color:#FFFFFF + style K fill:#87CEFA,color:#000000 + + linkStyle 0 stroke:red,stroke-width:2px; + linkStyle 1,2 stroke:purple,stroke-width:2px; + + classDef important fill:#FF9999,stroke:#333,stroke-width:2px,color:#000000; + class N important +``` + +## Release Signal - Go or No-Go + +Go or No-Go signal with diagrams and steps can be found [here](/release-team/role-handbooks/release-signal/README.md#release-cutting---go-or-no-go). + +## Release Signal - Following up on issues/PRs in milestone + +```mermaid +sequenceDiagram + participant RS as Release Signal Team + participant IO as Issue/PR Owners + Note over RS, IO: Release Cycle Starts + RS ->> IO: Send Code Freeze Reminder (1 month+ before) + Note over IO: Review issues/PRs + RS ->> IO: Send Code Freeze Reminder (1.5 weeks before) + Note over IO: Finalize issues/PRs + Note over RS, IO: Code Freeze Deadline + RS ->> IO: Help merge PRs + Note over IO: Submit exception requests + Note over RS, IO: Post Code Freeze + Note over RS: Remove non-release issues/PRs from milestone
(Except those with approved exception requests) + + par Monitor Post-Freeze Changes + Note over RS: Monitor bug fixes, regressions, and
important PRs added after code freeze + and Continue Release Process + Note over RS: Remove issues/PRs that could not be completed
even after additional exception request time + end + + Note over RS, IO: Release Cycle Ends +```