Skip to content

Documentation for rc0 tasks #2819

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 18 commits into
base: master
Choose a base branch
from

Conversation

mbianchidev
Copy link
Member

@mbianchidev mbianchidev commented Jul 31, 2025

This pull request introduces significant updates to the Kubernetes release engineering docs, focusing on post-release candidate (rc.0) tasks and branch management.

The changes I made aim to streamline the release workflow, improve clarity around the process and consolidate relevant documentation into a single SRE-handbook style source.

Similar to the work done for the release cut handbook.

What type of PR is this:

/kind documentation

What this PR does / why we need it:

We need to document the post rc.0 release tasks, currently fragmentally documented in multiple repos and in a format that is not easy to understand.

Which issue(s) this PR fixes:

Fixes #2776
Fixes #2826

Special notes for your reviewer:

I also tried my best to de-duplicate content.
The milestone rules applier is all done in Code Freeze/Thaw, so I removed also that bit.

Some considerations on alpha releases have been moved to the "new" release cut handbook, too.

@k8s-ci-robot k8s-ci-robot added kind/documentation Categorizes issue or PR as related to documentation. do-not-merge/contains-merge-commits cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. needs-priority labels Jul 31, 2025
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: mbianchidev
Once this PR has been reviewed and has the lgtm label, please assign jeremyrickard for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot added area/release-eng Issues or PRs related to the Release Engineering subproject sig/release Categorizes an issue or PR as relevant to SIG Release. size/XL Denotes a PR that changes 500-999 lines, ignoring generated files. labels Jul 31, 2025
@mbianchidev
Copy link
Member Author

/priority important-soon

@k8s-ci-robot k8s-ci-robot added priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. and removed needs-priority labels Jul 31, 2025
@Vyom-Yadav
Copy link
Member

/cc @Vyom-Yadav

@k8s-ci-robot k8s-ci-robot requested a review from Vyom-Yadav August 1, 2025 06:11
@wendy-ha18
Copy link
Member

wendy-ha18 commented Aug 4, 2025

Thanks a lot for this comprehensive doco @mbianchidev 🙏, I couldn't be able to review in details the full post-rc0-release-task but just left a few comments based on my personal thoughts.

@wendy-ha18
Copy link
Member

wendy-ha18 commented Aug 4, 2025

Tbh I'm little confused by the current organization and structure of the release-engineering docs when I review this PR and navigating back and forth a few linked pages inside it 😿, so I just wanted to suggest a revised structure that I think might make things a bit clearer. Would love to hear your thoughts, does the structure below make sense to you?

release-engineering/
├── README.md  # overview of the team, communication channels, responsibilities, etc.
├── release-cut/  # Shared resources for both Branch Managers (X.Y.0) and Patch Release Managers (X.Y.Z)
│   ├── k8s-release-cut.md
│   ├── go.md
│   └── ......  
├── branch-manager-role/  # Tasks and guides specific to major (X.Y.0) release cycles – for Branch Manager role
│   ├── branch-manager-handbook.md
│   ├── post-rc0-release-task.md
│   └── ......  
└── patch-release-role/  # Tasks and guides specific to patch (X.Y.Z) releases – for Patch Release Manager role
    ├── patch-release-handbook.md
    └── ......  

@mbianchidev
Copy link
Member Author

mbianchidev commented Aug 4, 2025

Tbh I'm little confused by the current organization and structure of the release-engineering docs when I review this PR and navigating back and forth a few linked pages inside it 😿, so I just wanted to suggest a revised structure that I think might make things a bit clearer. Would love to hear your thoughts, does the structure below make sense to you?

release-engineering/
├── README.md  # overview of the team, communication channels, responsibilities, etc.
├── release-cut/  # Shared resources for both Branch Managers (X.Y.0) and Patch Release Managers (X.Y.Z)
│   ├── k8s-release-cut.md
│   ├── go.md
│   └── ......  
├── branch-manager-role/  # Tasks and guides specific to major (X.Y.0) release cycles – for Branch Manager role
│   ├── branch-manager-handbook.md
│   ├── post-rc0-release-task.md
│   └── ......  
└── patch-release-role/  # Tasks and guides specific to patch (X.Y.Z) releases – for Patch Release Manager role
    ├── patch-release-handbook.md
    └── ......  

This is kinda similar to the bigger picture change I have in mind for these docs.
Still seeking consensus from the rest of the team on that.

My structure idea as mentioned above, it's more byte sized and designed SRE style, while there should still be an index.md that makes everything easier to navigate.
BUT not really based on the patch release and branch manager roles as they do overlap quite a bit, we want to have people that can do most things in releng rather than specialize in (1) task like branch management during release periods.
At least this is what was discussed in various occasions with different folks, I think it makes more sense overall.

Can you post your comment here? #2797 (just edited to include a reorg of general content in the task itself)
I think your comment it's very valuable but out of scope of this PR, thanks!

Thanks a lot for the review, great work 🙏

EDIT

so it would be something like

release-engineering/
├── README.md  # overview of the team, communication channels, responsibilities, etc.
├── handbooks/  # Shared resources for both Branch Managers (X.Y.0) and Patch Release Managers (X.Y.Z)
    ├── k8s-release-cut.md
    ├── go.md
    ├── post-rc0-release-task.md
    ├── patch-releases.md
    ├── cherry-picks.md
    ├── cve-patch.md
    ├── ....
   └── README.md # explaining everything contained in the hadnbooks and grouping them a bit based on (maybe even roles, but more situations, things to do)

Copy link
Member

@drewhagen drewhagen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A few comments to start as I continue to review

Copy link
Member

@xmudrii xmudrii left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some initial comments on the checklist

@mbianchidev
Copy link
Member Author

/hold

Do not merge until the RC.0 cut is done so we can validate these docs and fix the last few things.

Will still create an issue using the latest template

@k8s-ci-robot k8s-ci-robot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Aug 5, 2025
Copy link
Member

@Vyom-Yadav Vyom-Yadav left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for working on this Matteo 💙

- [ ] Create a thread on #release-management: <!-- Paste link to slack -->
- [ ] Remove EOL version jobs from test-infra (if it's the appropriate timing to do so)
- [ ] Update milestone applier rules and check milestone requirements
- [ ] Update kubekins-e2e variants.yaml with new version config
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Linking to examples, maybe: kubernetes/test-infra#34651. I know examples can go obsolete, but having some context helps (and examples can be updated if config management changes) (edit - same above example comment)

@mbianchidev mbianchidev requested a review from xmudrii August 5, 2025 11:13
@xmudrii
Copy link
Member

xmudrii commented Aug 5, 2025

@mbianchidev We should consider adding a table of contents if possible to all new handbooks.

@mbianchidev mbianchidev requested a review from xmudrii August 6, 2025 11:14
@xmudrii
Copy link
Member

xmudrii commented Aug 6, 2025

@mbianchidev Please also fix do-not-merge/contains-merge-commits so that we can merge this PR once comments are addressed :shipit:

@mbianchidev
Copy link
Member Author

@mbianchidev Please also fix do-not-merge/contains-merge-commits so that we can merge this PR once comments are addressed :shipit:

Solved!

@mbianchidev mbianchidev requested a review from xmudrii August 6, 2025 17:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/release-eng Issues or PRs related to the Release Engineering subproject cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. kind/documentation Categorizes issue or PR as related to documentation. priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. sig/release Categorizes an issue or PR as relevant to SIG Release. size/XL Denotes a PR that changes 500-999 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Post Release Branch Creation Tasks for v1.34.0-rc.0 Documentation for post rc.0 cut tasks
6 participants