Skip to content

Commit

Permalink
Add One Pager for the Release Signal Handbook
Browse files Browse the repository at this point in the history
Signed-off-by: Vyom-Yadav <[email protected]>
  • Loading branch information
Vyom-Yadav committed Sep 8, 2024
1 parent e07dcd2 commit 30986a9
Show file tree
Hide file tree
Showing 2 changed files with 83 additions and 3 deletions.
20 changes: 17 additions & 3 deletions release-team/role-handbooks/release-signal/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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)
Expand All @@ -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
Expand Down Expand Up @@ -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:

Expand Down Expand Up @@ -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:

Expand Down Expand Up @@ -279,6 +283,16 @@ 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

The rc.0 and rc.1 cuts are referred to as the release candidates. Release candidates are the final steps before the release. No enhancements are allowed
in the release branch rc.0 cuts. The release signal team should be vigilant in monitoring the testgrid dashboards and ensuring that the tests are passing.
The release signal team should also be prepared to give a go/no-go signal for the release cut in a timely manner.

The release-x.y-informing and release-x.y-blocking dashboards are set up after the rc.0 cut by the branch manager. The release signal team should
stay in touch with the branch manager to make sure the release-x.y dashboards are set up in the same week as the rc.0 cut. Release Signal Lead/Shadows
can also help the branch manager and release managers set up the dashboards, fix job misconfigurations, etc.

### Code Thaw

A week before the release target date, Code Freeze labelling restrictions are lifted. At this point, you need to make sure that
Expand Down
66 changes: 66 additions & 0 deletions release-team/role-handbooks/release-signal/one-pager.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
# Release Signal One Pager

<h3>Minimum text, maximum learning.</h3>

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"]
A -- Flake --> C["Confirm using Triage"]
C -- Is a flake --> B
C -- Not a flake --> A
B --> D["Add relevant details"]
D --> E["Add SIG label"]
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"]
I -- Is a blocker --> J["Mark as blocker"]
I -- Not a blocker --> K["Mark as non-blocker"]
J & K --> L["Update issue metadata on CI Signal Board"]
L --> M["Monitor issue for upcoming release cut"]
M -- Is a blocker --> N["Prioritize resolution"]
M -- Not a blocker --> O["Keep monitoring"]
N & O --> P["Regular status updates"]
P --> 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
classDef important fill:#FF9999,stroke:#333,stroke-width:2px,color:#000000;
class N important
```

## 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 <br> (Except those with approved exception requests)
par Monitor Post-Freeze Changes
Note over RS: Monitor bug fixes, regressions, and <br> important PRs added after code freeze
and Continue Release Process
Note over RS: Remove issues/PRs that could not be completed <br> even after additional exception request time
end
Note over RS, IO: Release Cycle Ends
```

0 comments on commit 30986a9

Please sign in to comment.