GoogleForGames/agones: Release v1.37.0
Name: agones
Owner: GoogleForGames
Release: v1.37.0
Released: 2023-12-19
License: Apache-2.0
Release Assets:
This is the 1.37.0 release of Agones.
This release sees the first milestone of a over-a-year series of work on the functionality of arbitrary Counters and Lists attached to each GameServer!
We’ve also upgraded the following features: CountsAndLists to alpha, FleetAllocationOverflow to Beta, and PodHostName, ResetMetricsOnDelete, and SplitControllerAndExtensions to Stable - with defaults below.
CountsAndLists: This feature flag provides functionality for a configurable set of Counters or Lists be attached to GameServers with attached allocation and autoscaling functionality to provide a flexible implementation that can handle a wide range of use cases such as player tracking, high density game server room tracking, and could even be used for game specific game server allocation prioritization.
Documentation is a little sparse in this release, but will grow! We’re focusing on the reference material first and will then expand into more in-depth guides and integration patterns.
Note: Counters and Lists will eventually replace the Alpha functionality of Player Tracking, which will subsequently be removed from Agones. If you are currently using this Alpha feature, we would love for you to test (and ideally migrate to!) this new functionality to ensure it will meet all your needs.
FleetAllocationOverflow: Labels and/or annotations to GameServers that exceed the desired number of replicas in a GameServerSet. This occurs when the allocation of GameServers surpasses the specified replica count.
PodHostName: Enables the assignment of the GameServer’s name as the PodHostname.
ResetMetricsOnDelete: This feature instructs the metrics service to unregister and then re-register the relevant metrics view to reset their state immediately whenever an Agones resource is deleted.
SplitControllerAndExtensions: This feature introduces an important change in Agones for high availability. It separates the system's responsibilities into two binaries: the controller
, which now handles Kubernetes object monitoring and uses a leader election system to keep only one active controller at a time, and a new horizontally scalable extensions
binary, focused on managing webhook endpoints.
What's Changed
Implemented enhancements
- Adds Counter conformance test by @igooch in https://github.com/googleforgames/agones/pull/3488
- Adds List SDK methods to simple-game-server by @igooch in https://github.com/googleforgames/agones/pull/3500
- Support appProtocol by @Kalaiselvi84 in https://github.com/googleforgames/agones/pull/3502
- Adds gameserver e2e test for Lists by @igooch in https://github.com/googleforgames/agones/pull/3507
- Adds fleet e2e test for lists by @igooch in https://github.com/googleforgames/agones/pull/3510
- Disable resync on SDK Server by @Kalaiselvi84 in https://github.com/googleforgames/agones/pull/3508
- Move PodHostName to Stable by @Kalaiselvi84 in https://github.com/googleforgames/agones/pull/3517
- Adds gameserverallocation e2e tests for Lists by @igooch in https://github.com/googleforgames/agones/pull/3516
- Move FleetAllocationOverflow to Beta by @Kalaiselvi84 in https://github.com/googleforgames/agones/pull/3515
- Move ResetMetricsOnDelete to Stable by @Kalaiselvi84 in https://github.com/googleforgames/agones/pull/3518
- Adds fleetauotscaler e2e test for Lists by @igooch in https://github.com/googleforgames/agones/pull/3519
- Another List fleet autoscaler e2e test by @igooch in https://github.com/googleforgames/agones/pull/3521
- Adds Go Conformance Tests for Lists by @igooch in https://github.com/googleforgames/agones/pull/3524
- Move CountsAndLists to Alpha by @Kalaiselvi84 in https://github.com/googleforgames/agones/pull/3527
- Move SplitControllerAndExtensions to Stable by @Kalaiselvi84 in https://github.com/googleforgames/agones/pull/3523
- Add clusterIP for agones-allocator in helm chart by @govargo in https://github.com/googleforgames/agones/pull/3526
- GKE Autopilot: Add support for Extended Duration pods by @zmerlynn in https://github.com/googleforgames/agones/pull/3387
- Counter and List Aggregate Fleet Metrics by @igooch in https://github.com/googleforgames/agones/pull/3528
- CountsAndLists: SDK Reference by @Kalaiselvi84 in https://github.com/googleforgames/agones/pull/3537
- Adds Counters and Lists REST API Conformance Tests by @igooch in https://github.com/googleforgames/agones/pull/3546
- CountsAndLists: Yaml Examples And References by @Kalaiselvi84 in https://github.com/googleforgames/agones/pull/3552
Fixed bugs
- Xonotic: gLibc incompatibility by @markmandel in https://github.com/googleforgames/agones/pull/3495
- Fixes occasional data race flake with TestSDKServerAddListValue by @igooch in https://github.com/googleforgames/agones/pull/3505
- handle static port policy by @ashutosji in https://github.com/googleforgames/agones/pull/3375
- Prevent Redundant Windows SDK Builds by @Kalaiselvi84 in https://github.com/googleforgames/agones/pull/3520
- CloudBuild: Fix for cache image rebuild by @markmandel in https://github.com/googleforgames/agones/pull/3535
Other
- Prep for release v1.37.0 by @Kalaiselvi84 in https://github.com/googleforgames/agones/pull/3493
- Test SuperTuxKart Image by @Kalaiselvi84 in https://github.com/googleforgames/agones/pull/3496
- Test Rust Image by @Kalaiselvi84 in https://github.com/googleforgames/agones/pull/3499
- Test cpp-simple image by @Kalaiselvi84 in https://github.com/googleforgames/agones/pull/3497
- Add steps to update performance test clusters when upgrading k8s version by @gongmax in https://github.com/googleforgames/agones/pull/3501
- Test NodeJS image by @Kalaiselvi84 in https://github.com/googleforgames/agones/pull/3498
- Bumps simple-game-server version to 0.22 by @igooch in https://github.com/googleforgames/agones/pull/3504
- xonotic image test by @Kalaiselvi84 in https://github.com/googleforgames/agones/pull/3494
- Bump helm install timeout to 10m by @zmerlynn in https://github.com/googleforgames/agones/pull/3506
- Add Shulker to the Agones adopters list by @jeremylvln in https://github.com/googleforgames/agones/pull/3503
- Remove warning on C# SDK Docs by @Kalaiselvi84 in https://github.com/googleforgames/agones/pull/3525
- Ensure ci/save_cache and ci/restore_cache images don't get deleted by cleanup policy by @Kalaiselvi84 in https://github.com/googleforgames/agones/pull/3522
- GH Action: Size label for PRs by @markmandel in https://github.com/googleforgames/agones/pull/3532
- Flake: TestControllerWatchGameServers by @markmandel in https://github.com/googleforgames/agones/pull/3534
- Go CRD Comment Updates for Counters and Lists by @markmandel in https://github.com/googleforgames/agones/pull/3536
- Simple Game Server Example: Upgrade Docker to 24.0.6 by @Kalaiselvi84 in https://github.com/googleforgames/agones/pull/3531
- CI: Fix 404 on CI link testing by @markmandel in https://github.com/googleforgames/agones/pull/3542
- Xonotic Example: Docker 24.0.6 by @Kalaiselvi84 in https://github.com/googleforgames/agones/pull/3538
- Bumps simple-game-server to 0.23 by @Kalaiselvi84 in https://github.com/googleforgames/agones/pull/3543
- Tweaks to Client SDK reference by @markmandel in https://github.com/googleforgames/agones/pull/3541
- Updates to Counter and List Alpha.proto Methods by @igooch in https://github.com/googleforgames/agones/pull/3544
- Docs: SDK implementation matrixes by @Kalaiselvi84 in https://github.com/googleforgames/agones/pull/3545
- Disable deletion protection for Autopilot test clusters by @gongmax in https://github.com/googleforgames/agones/pull/3468
New Contributors
- @jeremylvln made their first contribution in https://github.com/googleforgames/agones/pull/3503
Full Changelog: https://github.com/googleforgames/agones/compare/v1.36.0...v1.37.0
Images available with this release:
- us-docker.pkg.dev/agones-images/release/agones-controller:1.37.0
- us-docker.pkg.dev/agones-images/release/agones-sdk:1.37.0
- us-docker.pkg.dev/agones-images/release/agones-ping:1.37.0
- us-docker.pkg.dev/agones-images/release/agones-allocator:1.37.0
- us-docker.pkg.dev/agones-images/examples/allocation-endpoint-proxy:0.6
- us-docker.pkg.dev/agones-images/examples/autoscaler-webhook:0.9
- us-docker.pkg.dev/agones-images/examples/cpp-simple-server:0.16
- us-docker.pkg.dev/agones-images/examples/crd-client:0.12
- us-docker.pkg.dev/agones-images/examples/nodejs-simple-server:0.9
- us-docker.pkg.dev/agones-images/examples/rust-simple-server:0.12
- us-docker.pkg.dev/agones-images/examples/simple-game-server:0.23
- us-docker.pkg.dev/agones-images/examples/supertuxkart-example:0.10
- us-docker.pkg.dev/agones-images/examples/unity-simple-server:0.3
- us-docker.pkg.dev/agones-images/examples/xonotic-example:1.6
Helm chart available with this release:
Make sure to add our stable helm repository using
helm repo add agones https://agones.dev/chart/stable