Skip to content

Release v1.23 #401

Description

@dsimansk

Timeline of a Knative release

We release each repository of knative.dev roughly every 3 months. Please check the release schedule to calculate when to start work on each checkpoint of a release timeline.

Repos to be released

  • All repos to be released are listed in this document
  • Each repo indicates its releasability and other statuses, when applicable
  • Each repo needs to be successfully updated to use the latest version of all dependencies before cutting its release branch

T-minus 30 days

  • Release leads have been updated for the upcoming release (see procedure)
    • See workflow to check rollout: Owner Workflow

T-minus 14 days

  • Update release version in the following workflows

    • Releasability (see: procedure)
    • Check if Dependency Updates are working and the Knobots update-deps job has been bumped to the next release version (see: procedure)
  • An announcement has been made in the #knative Slack channel that knative.dev/pkg will be released in a week

T-minus 7 days - releasing supporting repos

Guidance on releasing a repository.

  • An announcement has been made in the #knative Slack channel that the cut of knative.dev/pkg is imminent
  • Check the status of the nightly builds. See the badge against each core repo in Phase 1. Let the working group leads know about failures and ask them to investigate.Repeat this process throughout the week. This should not be a blocker to start cutting the supporting repositories mentioned below.

Notes

  • Some of the supporting repos can be cut in parallel. Refer Aligning dependencies.
  • The release branch for each supporting repos must be done only after the branch for their dependencies is cut.

Cut Supporting Repositories (Cut these in descending order (top to bottom) if unsure)

Check the update-deps workflow to monitor dependency updates across repos.

T-minus 1 day

  • Obtained ACK from each working group lead that the release is imminent and is green-lighted.

  • Re-check for status of the nightly releases and notify working group leads of failures. Repeat until all are passing.

Release Day(s)

  • If no acknowledgement is received from any of the WGL, send another message on slack and start working on the release after sometime.
  • Review the PROCEDURE on how to release a repo.
  • Check the update-deps workflow to monitor dependency updates across repos.
    Notes
  • It is not required that all repos in the included sub-sections be released on the same day the release is scheduled to start.
  • The release notes of a dependency are not a blocker for proceeding to cut a release for a repo.
  • The prow job web page is very slow to respond and you need to click only once to rerun the job.
  • Some repos can be released in parallel.Refer Aligning dependencies.

Phase 0 - Core-Required Repositories (Can be started after knative/hack branch has been cut)

Phase 1 - Core Repositories (Can be started after all the supporting and core-required repos have been successfully released)

Phase 2 - Eventing Dependant Repositories (Can be started after knative/eventing has been successfully released)

Phase 3 - Serving and Eventing Dependant Repositories (Can be started after knative/eventing & knative/serving have been successfully released)

Phase 4 - Remaining Repositories (Can be started after all the previous repos has been successfully released)

Final Phase

  • Talk to Vincent (Operator WG Lead) and have him cut (or help you cut) the knative/operator Releases
  • Knative Client Homebrew has been updated (see procedure)
  • Knative Client Plugins Homebrew has been updated (see procedure)

Post Release - after operator is cut

  • Update the supported version(s) of Serving/Eventing in the operator page in the Knative docs
  • Release the knative.dev/docs (see procedure)
  • Release schedule has been updated in RELEASE-SCHEDULE.md
  • Collect release notes into the blog post and publish it (see procedure)
  • Knobots update-deps job has been bumped to the next release version (see procedure)
  • An announcement was made in the #knative Slack channels that the new Knative release is out
  • Revoke release leads permissions for the current release (see procedure)
  • Document any change(s) needed to improve the release process

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions