Back to Linkerd2

Linkerd2 Release

RELEASE.md

18.9.12.4 KB
Original Source

Linkerd2 Release

This document contains instructions for releasing Linkerd2.

1. Bump the proxy version

Determine the commit SHA or tag of the linkerd2-proxy repo to be included in the release.

The proxy-version file is kept in sync automatically by the sync-proxy workflow. If the file is already at the desired SHA or tag, skip to step 2.

If updating to linkerd-proxy HEAD, note the commit SHA at latest.txt (Look for linkerd2-proxy-<linkerd2-proxy-sha>.tar.gz).

2. Bump the proxy-init or CNI plugin version

If the linkerd2/proxy-init or linkerd2/cni-plugin projects have a new release (which is rare), the following updates are needed:

  • pkg/version/version.go (this also implies changes in unit test fixtures)

    go
    var ProxyInitVersion = "v2.3.0"
    var LinkerdCNIVersion = "v1.4.0"
    
  • charts/linkerd-control-plane/values.yaml

    Upgrade the version in global.proxyInit.image.version

  • charts/linkerd2-cni/values.yaml

    Upgrade the version in image.version

Create a new branch in the linkerd2 repo, username/proxy-init-version-bump.

Open a pull request that includes the changes.

3. Tag the release

  • Checkout the main branch, and be sure to pull the latest changes.
  • Tag the current state of main, with a tag of the form edge-YY.M.N, where YY is the year, M is the month, and N is the nth release of the month.
  • Push the tag to the repository.
sh
TAG="edge-YY.M.N"
git switch main
git pull --tags --prune
git tag $TAG HEAD
git push --tags

That will kick off a CI Release workflow run that will:

  • Build and push the docker images for the tag that was created
  • Run the k3d integration tests in the Github actions VMs themselves
  • Run a k3d integration test on a separate ARM64 host
  • Create a release in Github, and upload the CLI binaries with their checksums
  • Dispatch an event caught by the website repo that triggers a website rebuild which will update the edge version in the website
  • Retrieve the installation script from run.linkerd.io and verify it installs the current version being released
  • Deploy the updated helm charts

You can locate the CI run on the actions page.