-
Notifications
You must be signed in to change notification settings - Fork 898
Patch Release 1.52.2 #4292
Copy link
Copy link
Closed
Labels
kind/releaseChecklist for a releaseChecklist for a release
Description
Patch Release 1.52.2
Modified release steps for creating a release patch version.
Includes the 1.52.1 patch release (the fix for the Bitnami image #4270), and the cherry picked commit fix for the hard coded main build in the release automation #4291.
Note: "If needed" means if this step only needs to be done if it was modified as part of the patch release or otherwise should be updated.
Prerequisites
- Editor-level access to the agones-images project.
- Permission to publish new versions of the App Engine application.
- Write access to the Agones GitHub repository.
- git remote -v should show:
- An origin remote pointing to your personal Agones fork (e.g., git@github.com:yourname/agones.git).
- An upstream remote pointing to git@github.com:googleforgames/agones.git.
- A gcloud config configurations configuration named agones-images pointing to the same project.
- Edit access to the Agones Release Calendar.
- Approval for any modifications to the Release Title and Description
Steps
- Run
make shelland rungcloud config configurations activate agones-images. - Create a new branch for the patch release, and base it off of the previous patch release. Note: In future releases this should be done with
make create-patch-release-branch PREVIOUS_VERSION=1.52.1 PATCH_VERSION=1.52.2.- Run
git remote update -p - Run
git fetch upstream --tags - Run
git checkout -b release-1.52.2 v1.52.1 - Run
git statusto confirm you are on the expected branch name. - Run
git logto confirm the most recent commits are what you expect. (They should be the same as the release tagged v1.52.1.) - Run
git push -u upstream release-1.52.2
- Run
- Ensure all example images exist on agones-images/examples repository and to deploy the 1.52.0-1 service on GCP/App Engine/Services. Note: in future releases this should be done with
make pre-build-release.- Run
cd build/release. - From within the
agones/build/releasedirectory rungcloud builds submit . --config=./pre_cloudbuild.yaml --substitutions=_BRANCH_NAME=release-1.52.0.
- Run
- Run
git cherry-pick 641286c8477e6443c83ac02b24f5d30857c293b6to pick up the changes in Updates the build scripts to allow for a patch release #4291. - From within the
agones/builddirectory runmake sdk-update-version release_stage=patch version=1.52.1to increment the previous version by 1 to 1.52.2 in the build/Makefile as well as the SDK files. - Update
_BASE_VERSIONincloudbuild.yamlto1.52.2. - Create a draft release with the release template.
- Run
make release-example-image-markdownto populate example images and append the output inImages available with this releasesection - Draft a new release with release draft. Update the
Tag versionandRelease titlewith the release version and click onGenerate release notesto generate the release notes withFull Changeloginfo for 1.52.2. Make sure to add the description. Include theImages available with this releasesection from the previous step that will be present after theFull Changelogand save the draft. - Copy the 1.52.2 release details from the
Full Changelogand paste it on top of the CHANGELOG.md file
- Run
- Site updated
- Create a new file named 1.52.2.md in
/site/content/en/blog/releases. Copy the draft release content in this file (this will be what you send via email)[refer the previous release file]. - Run
make site-serverfrequently to make sure everything looks fine for the release in your localhost - If needed: In
site/content/en/docs/Installation/_index.md #agones-and-kubernetes-supported-versions, for the current version, replace {{% k8s-version %}} with hardcoded Kubernetes versions supported by the current version. And add a row for the Agones release version with {{% k8s-version %}} as its supported Kubernetes versions. - Run
make del-data-proofer-ignore FILENAME=1.52.2-1.mdto remove thedata-proofer-ignoreattribute from the previous release blog. Review all occurrences of the link_test and data-proofer-ignore attributes globally. Exclude html and release files. - If needed: Add a link to previous version's documentation to nav dropdown in
site/layouts/partials/navbar.htmlon top and Runmake update-navbar-version FILENAME=site/layouts/partials/navbar.htmlto remove the older version from the dropdown list. - config.toml updates:
- Run
make make site-config-update-version release_stage=patchto update the release version and sync data between dev and prod. - If needed: Update documentation with updated example images tags.
- Run
- Create a new file named 1.52.2.md in
- If needed: Ensure that the alphaGates and betaGates for "Dev" in
test/upgrade/versionMap.yaml
match the Alpha features and Beta features in the patch release branch'spkg/util/runtime/features.go. - Create PR with these changes, and merge them with an approval.
- Run
git remote update && git checkout release-1.52.2 && git reset --hard upstream/release-1.52.2to ensure your code is in line with the upstream patch release branch. - Publish SDK packages
- Run
make sdk-shell-nodeto get interactive shell to publish node package. Requires Google internal process to publish. - Run
make sdk-publish-csharpto deploy to NuGet. Requires login credentials. Will need NuGet API Key from Agones account. - Run
make sdk-publish-rust. This command executes cargo login for authentication, performs a dry-run publish, and if that succeeds, does the actual publish. Will need crate's API TOKEN from your crate's account.
- Run
- Run
make post-build-releaseto build the artifacts in GCS (These files will be attached in the release notes) and to push the latest images in the release repository and push chart on agones-chart. - Run
make tag-deprecated-imagesto tag images from the previous version with adeprecated-public-image-<version>label, indicating they are no longer actively maintained. - Run
make shelland rungcloud config configurations activate <your development project>to switch Agones development tooling off of theagones-imagesproject within the shell. Runexitto exit the shell. - Run
gcloud config configurations activate <your development project>to make sure Agones development tooling is off of the agones-images project in your terminal. - Smoke Test: run
make install-releaseto view helm releases, uninstall agones-system namespace, fetch the latest version of Agones, verify the new version, installing agones-system namespace, and list all the pods of agones-system. - Attach all assets found in cloud storage with 1.52.2 to the draft GitHub Release.
- Copy any review changes from the release blog post into the draft GitHub release.
- Publish the draft GitHub Release.
- Run
git checkout main && git pull upstream main && git checkout -b post-release-1.52.2. - In test/sdk/go/Makefile, change release_version to
1.52.2.- Run
make shelland executegcloud config configurations activate agones-images. - Within the shell, cd to the test/sdk/go/ directory and run
make cloud-build.
- Run
- Verify and update Kubernetes version support and Agones version mappings in
test/upgrade/versionMap.yaml.- Update ReleaseVersion to the current release
1.52.2.
- Update ReleaseVersion to the current release
- Create a PR with these changes and merge into the patch release branch with approval.
- Email mailing lists with the release details (copy-paste the release blog post). Refer to the Internal Mailing list posting guide for details.
- Paste the announcement blog post to the #users Slack group.
- Post to the agonesdev Twitter account.
- Close this issue. Congratulations! - the patch release is now complete! 🎉 👏 😄 👍
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
kind/releaseChecklist for a releaseChecklist for a release