Skip to content

Commit

Permalink
Graduate ResetMetricsOnDelete to Beta (#3154)
Browse files Browse the repository at this point in the history
  • Loading branch information
Kalaiselvi84 committed May 17, 2023
1 parent c7745fa commit 04ef20e
Show file tree
Hide file tree
Showing 6 changed files with 12 additions and 11 deletions.
2 changes: 1 addition & 1 deletion build/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ KIND_CONTAINER_NAME=$(KIND_PROFILE)-control-plane
GS_TEST_IMAGE ?= us-docker.pkg.dev/agones-images/examples/simple-game-server:0.16

# Enable all alpha feature gates. Keep in sync with `false` (alpha) entries in pkg/util/runtime/features.go:featureDefaults
ALPHA_FEATURE_GATES ?= "PlayerAllocationFilter=true&PlayerTracking=true&ResetMetricsOnDelete=true&SplitControllerAndExtensions=true&CountsAndLists=true&FleetAllocationOverflow=true&Example=true"
ALPHA_FEATURE_GATES ?= "PlayerAllocationFilter=true&PlayerTracking=true&SplitControllerAndExtensions=true&CountsAndLists=true&FleetAllocationOverflow=true&Example=true"

# Build with Windows support
WITH_WINDOWS=1
Expand Down
4 changes: 2 additions & 2 deletions cloudbuild.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -314,12 +314,12 @@ steps:
region=${versionsAndRegions[$version]}
if [ $cloudProduct = generic ]
then
featureWithGate="CustomFasSyncInterval=false&SDKGracefulTermination=false&StateAllocationFilter=false&PlayerAllocationFilter=true&PlayerTracking=true&ResetMetricsOnDelete=true&PodHostname=false&SplitControllerAndExtensions=true&FleetAllocationOverflow=true&Example=true"
featureWithGate="CustomFasSyncInterval=false&SDKGracefulTermination=false&StateAllocationFilter=false&PlayerAllocationFilter=true&PlayerTracking=true&ResetMetricsOnDelete=false&PodHostname=false&SplitControllerAndExtensions=true&FleetAllocationOverflow=true&Example=true"
featureWithoutGate=""
testClusterLocation="${region}-c"
testCluster="gke-standard-e2e-test-cluster-${version//./-}"
else
featureWithGate="CustomFasSyncInterval=false&SDKGracefulTermination=false&StateAllocationFilter=false&PlayerAllocationFilter=true&PlayerTracking=true&ResetMetricsOnDelete=true&PodHostname=false&SplitControllerAndExtensions=true&FleetAllocationOverflow=true&Example=true"
featureWithGate="CustomFasSyncInterval=false&SDKGracefulTermination=false&StateAllocationFilter=false&PlayerAllocationFilter=true&PlayerTracking=true&ResetMetricsOnDelete=false&PodHostname=false&SplitControllerAndExtensions=true&FleetAllocationOverflow=true&Example=true"
featureWithoutGate="SplitControllerAndExtensions=true"
testClusterLocation="${region}"
testCluster="gke-autopilot-e2e-test-cluster-${version//./-}"
Expand Down
4 changes: 2 additions & 2 deletions install/helm/agones/defaultfeaturegates.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,14 +16,14 @@

# Beta features
CustomFasSyncInterval: true
PodHostname: true
ResetMetricsOnDelete: true
SDKGracefulTermination: true
StateAllocationFilter: true
PodHostname: true

# Alpha features
PlayerAllocationFilter: false
PlayerTracking: false
ResetMetricsOnDelete: false
FleetAllocationOverflow: false
SplitControllerAndExtensions: false

Expand Down
9 changes: 5 additions & 4 deletions pkg/util/runtime/features.go
Original file line number Diff line number Diff line change
Expand Up @@ -92,11 +92,12 @@ var (
// * add it to site/content/en/docs/Guides/feature-stages.md
//
// To promote a feature from alpha->beta:
// * move from `false` to `true` in `featureDefaults`
// * move from `false` to `true` in `featureDefaults`.
// * move from `false` to `true` in install/helm/agones/defaultfeaturegates.yaml
// * remove from `ALPHA_FEATURE_GATES` in build/Makefile
// * invert in the e2e-runner config in cloudbuild.yaml
// * change the value in site/content/en/docs/Guides/feature-stages.md
// * change the value in site/content/en/docs/Guides/feature-stages.md.
// * Ensure that the features in each file are organized alphabetically.
//
// To promote a feature from beta->GA:
// * remove all places consuming the feature gate and fold logic to true
Expand All @@ -107,14 +108,14 @@ var (
featureDefaults = map[Feature]bool{
// Beta features
FeatureCustomFasSyncInterval: true,
FeaturePodHostname: true,
FeatureResetMetricsOnDelete: true,
FeatureSDKGracefulTermination: true,
FeatureStateAllocationFilter: true,
FeaturePodHostname: true,

// Alpha features
FeaturePlayerAllocationFilter: false,
FeaturePlayerTracking: false,
FeatureResetMetricsOnDelete: false,
FeatureFleetAllocateOverflow: false,
FeatureSplitControllerAndExtensions: false,

Expand Down
2 changes: 1 addition & 1 deletion site/content/en/docs/Guides/feature-stages.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,11 +47,11 @@ The current set of `alpha` and `beta` feature gates:
|-----------------------------------------------------------------------------------------------------------------------|--------------------------------|----------|---------|--------|
| [Custom resync period for FleetAutoscaler](https://github.com/googleforgames/agones/issues/1955) | `CustomFasSyncInterval` | Enabled | `Beta` | 1.25.0 |
| [GameServer Stable Network ID]({{% ref "/docs/Reference/gameserver.md#stable-network-id" %}}) | `PodHostname` | Enabled | `Beta` | 1.32.0 |
| [Reset Metric Export on Fleet / Autoscaler deletion]({{% relref "./metrics.md#dropping-metric-labels" %}}) | `ResetMetricsOnDelete` | Enabled | `Beta` | 1.26.0 |
| [Graceful Termination for GameServer SDK](https://github.com/googleforgames/agones/pull/2205) | `SDKGracefulTermination` | Enabled | `Beta` | 1.18.0 |
| [GameServer state filtering on GameServerAllocations](https://github.com/googleforgames/agones/issues/1239) | `StateAllocationFilter` | Enabled | `Beta` | 1.26.0 |
| [GameServer player capacity filtering on GameServerAllocations](https://github.com/googleforgames/agones/issues/1239) | `PlayerAllocationFilter` | Disabled | `Alpha` | 1.14.0 |
| [Player Tracking]({{< ref "/docs/Guides/player-tracking.md" >}}) | `PlayerTracking` | Disabled | `Alpha` | 1.6.0 |
| [Reset Metric Export on Fleet / Autoscaler deletion]({{% relref "./metrics.md#dropping-metric-labels" %}}) | `ResetMetricsOnDelete` | Disabled | `Alpha` | 1.26.0 |
| [Split `agones-controller` ](https://github.com/googleforgames/agones/issues/2797) | `SplitControllerAndExtensions` | Disabled | `Alpha` | 1.30.0 |
| [Allocated GameServers are notified on relevant Fleet Updates][fleet-updates] | `FleetAllocationOverflow` | Disabled | `Alpha` | 1.32.0 |
| Example Gate (not in use) | `Example` | Disabled | None | 0.13.0 |
Expand Down
2 changes: 1 addition & 1 deletion site/content/en/docs/Guides/metrics.md
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ Follow the [Google Cloud Monitoring installation steps](#google-cloud-monitoring

### Dropping Metric Labels

{{% alpha title="Reset Metric Export on Fleet / Autoscaler deletion" gate="ResetMetricsOnDelete" %}}
{{% beta title="Reset Metric Export on Fleet / Autoscaler deletion" gate="ResetMetricsOnDelete" %}}

When a Fleet or FleetAutoscaler is deleted from the system, Agones will automatically clear metrics that utilise
their name as a label from the exported metrics, so the metrics exported do not continuously grow in size over the
Expand Down

0 comments on commit 04ef20e

Please sign in to comment.