kubernetes-sigs / kubernetes-sigs/node-readiness-controller

Automate manual steps in release with a repeatable process

Open
#151 5 comments 2 reactions 0 assignees View on GitHub
kind/feature
Dominant language
Go
Stars
163
Forks
74
Avg merge
2d 18h
Merged PRs (30d)
9

Description

Currently release process (RELEASE.md) requires the Release Shepherd to generate deployment manifests and then verify them with tests before uploading them to the GitHub Release.

We could automate possible repeatable sections in this process using a post-submit GitHub Action that triggers when a new version tag is pushed.

Some ideas for exploring:

A scheduled cronjob that -
1. checks the latest VERSION tag available in k8s-registry
2. generate the release manifests
3. run test-e2e with prepared manifests
4. create gh action release (in draft)

This could be further utilized with [krel](https://github.com/kubernetes/release/blob/master/docs/krel/README.md) to add some structure to release automation by auto-generating release notes to a `previous-releases/vX.Y.Z/release-notes.md` target. This could be a `create-new-minor-release.sh` script to make changes to create the release-cut PR. The automation will utilize the metadata for release.

This would reduce the release toil while also ensuring a repeatable controlled process for the nrc releases.

cc @Priyankasaggu11929 we could break it down to subtasks and see how we could create good-first-issues for the project

[ajaysundark] Update: This project is now proposed for LFX mentorship program. Please refrain from self-assigning yourself this feature

Contributor guide

Open the contributing guide

Research direction

Start with RELEASE.md and the krel documentation linked in the issue, then trace the current manifest-generation, test-e2e, and GitHub Release steps. Define which repeatable steps a tag-triggered or scheduled GitHub Action should cover; done means the process is documented and can generate manifests, verify them, and create a draft release with release notes.

Written by the indexing model from the issue text.

Assessment

Tech stack
github-actions, kubernetes
Domain
ci-cd, release
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
28/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.