Allow 1h to do a release.
Cherry-pick your changes from master onto the release branch.
The release branch should be green in CI before you start.
To generate new manifests and perform basic checks:
make prepare-release VERSION=v2.11.2
Publish the images and local Git changes (disabling K3D as this is faster and more reliable for releases):
make publish-release K3D=false VERSION=v2.11.2
- Check the images were pushed successfully.
- Check the correct versions are printed.
- Check the executor was correctly built.
docker run argoproj/workflow-controller:v2.11.2 version
docker run argoproj/argoexec:v2.11.2 version
docker run argoproj/argocli:v2.11.2 version
-
Check the manifests contain the correct tags: https://raw.githubusercontent.com/argoproj/argo/v2.11.2/manifests/install.yaml
-
Check the manifests apply:
kubectl -n argo apply -f https://raw.githubusercontent.com/argoproj/argo/v2.11.2/manifests/install.yaml
Create the release in Github. You can get some text for this using Github Toolkit:
ght relnote v2.7.1..v2.11.2
Release notes checklist:
- All breaking changes are listed with migration steps
- The release notes identify every publicly known vulnerability with a CVE assignment
If this is GA:
- Update the
stable
tag
git tag -f stable
git push -f origin stable
- Check the manifests contain the correct tags: https://raw.githubusercontent.com/argoproj/argo/stable/manifests/install.yaml
If this is GA:
- Update the Homebrew formula.
export HOMEBREW_GITHUB_API_TOKEN=******
brew bump-formula-pr argo --version 2.11.2
- Check that Homebrew was successfully updated after the PR was merged:
brew upgrade argo
/usr/local/bin/argo version
If this is GA:
- Update the Java SDK formula.
git clone [email protected]:argoproj-labs/argo-client-java.git
cd argo-client-java
make publish VERSION=v2.11.2
- Check package published: https://github.com/argoproj-labs/argo-client-java/packages