Skip to content

Latest commit

 

History

History
41 lines (30 loc) · 1.76 KB

RELEASE.md

File metadata and controls

41 lines (30 loc) · 1.76 KB

Release Process

Overview

The Gateway API project is an API project that has the following two components:

  • Kubernetes Custom Resource Definitions (CRDs)
  • Corresponding Go API in the form of sigs.k8s.io/gateway-api Go package

This repository is the home for both of the above components.

Versioning strategy

The versioning strategy for this project is covered in detail in the release documentation.

Releasing a new version

  • Write the changelog with user-visible API changes. This must go through the regular PR review process and get merged into the master branch. Approval of the PR indicates community consensus for a new release.

The following steps must be done by one of the Gateway API maintainers:

For a major or minor release:

  • Cut a release-major.minor branch that we can tag things in as needed. For all releases:
  • Check out the release-major.minor branch locally
  • Update pkg/generator/main.go with the new semver tag and any updates to the API review URL.
  • Run the following commnand BASE_REF=vmajor.minor.patch make generate which will update generated docs and webhook with the correct version info. Note that the YAMLs will not work until the tag is actually published in the next step.
  • Publish a new Git tag. This can be done using the git CLI or Github's release page.
  • Run the make build-install-yaml command which will generate install files in the release/ directory and attach these files to the Github release.