Move `SidecarContainers` to Beta
Is your feature request related to a problem? Please describe.
The SidecarContainers feature gate has been in Alpha since Agones v1.49.0. It refactors how the SDK server runs, utilizing Kubernetes native sidecar container support (or equivalent patterns) to decouple the SDK lifecycle from the GameServer container lifecycle.
We have received no error reports since its introduction. However, this is a significant architectural change that affects GameServer Pod lifecycle and restart policies. Promoting it to Beta (enabled by default) is the necessary next step to validate its robustness across a wider range of user scenarios.
Describe the solution you'd like
I would like to promote SidecarContainers to Beta.
Following the feature stage progression steps defined in pkg/util/runtime/features.go, the following changes are required:
- [ ] Update
pkg/util/runtime/features.go: Change the default value ofSidecarContainerstotrue. - [ ] Update documentation: Move the feature from the "Alpha" table to the "Beta" table in the Feature Stages guide.
- [ ] Review documentation: Search for all references to the
SidecarContainersfeature gate in the docs and update as needed (e.g., removing instructions that imply it must be manually enabled, moving fromalphatobetashortcode, etc) (documentation contribution guide). - [ ] Update Helm charts to reflect the new default state (if applicable).
- [ ] Ensure end-to-end tests are passing and cover the feature usage.
Describe alternatives you've considered Keeping it in Alpha. However, given the lack of bug reports, we need to move this to "Enabled by Default" to ensure it is battle-tested before eventually considering it for Stable.
Additional context
-
Feature Gate:
SidecarContainers - Introduced in: v1.49.0
- Relevant Issues: #3642 (Original Tracking Issue)
- Relevant PRs: #4146 (Implementation)
-
Implications: This changes the
RestartPolicybehavior and how the SDK sidecar interacts with the Game Server container. It is considered a breaking change for users relying on the legacy sidecar lifecycle behavior.
@markmandel hey can i work on it, would love to contribute to this project!
@markmandel hey can i work on it, would love to contribute to this project!
Welcome! Let us know if have any questions or get stuck!