Graduate ComponentFlagz feature gate to Beta

This commit is contained in:
Richa Banker
2026-03-03 16:48:19 -08:00
parent f6ca739265
commit a902b8ffdc
7 changed files with 12 additions and 5 deletions

View File

@@ -2182,6 +2182,7 @@ var defaultVersionedKubernetesFeatureGates = map[featuregate.Feature]featuregate
zpagesfeatures.ComponentFlagz: {
{Version: version.MustParse("1.32"), Default: false, PreRelease: featuregate.Alpha},
{Version: version.MustParse("1.36"), Default: true, PreRelease: featuregate.Beta},
},
zpagesfeatures.ComponentStatusz: {

View File

@@ -569,9 +569,9 @@ func TestStatusz(t *testing.T) {
t.Fatalf("Got error reading response body: %v", err)
}
reg := regexp.MustCompile(`Paths([:=\s]+)/configz /debug /healthz /metrics\n$`)
reg := regexp.MustCompile(`Paths([:=\s]+)/configz /debug /flagz /healthz /metrics\n$`)
if reg.FindStringSubmatch(string(resBody)) == nil {
t.Errorf("statusz paths missing: %s\n\nExpected: %q", string(resBody), "Paths<delimter> /configz /debug /healthz /metrics")
t.Errorf("statusz paths missing: %s\n\nExpected: %q", string(resBody), "Paths<delimter> /configz /debug /flagz /healthz /metrics")
}
}

View File

@@ -1001,6 +1001,7 @@ items:
name: system:monitoring
rules:
- nonResourceURLs:
- /flagz
- /healthz
- /healthz/*
- /livez

View File

@@ -40,6 +40,7 @@ func featureGates() map[featuregate.Feature]featuregate.VersionedSpecs {
return map[featuregate.Feature]featuregate.VersionedSpecs{
ComponentFlagz: {
{Version: version.MustParse("1.32"), Default: false, PreRelease: featuregate.Alpha},
{Version: version.MustParse("1.36"), Default: true, PreRelease: featuregate.Beta},
},
ComponentStatusz: {
{Version: version.MustParse("1.32"), Default: false, PreRelease: featuregate.Alpha},

View File

@@ -39,7 +39,7 @@
| CloudControllerManagerWebhook | | | 1.27 | | | | | [code](https://cs.k8s.io/?q=%5CbCloudControllerManagerWebhook%5Cb&i=nope&files=&excludeFiles=CHANGELOG&repos=kubernetes/kubernetes) [KEPs](https://cs.k8s.io/?q=%5CbCloudControllerManagerWebhook%5Cb&i=nope&files=&excludeFiles=CHANGELOG&repos=kubernetes/enhancements) |
| ClusterTrustBundle | | | 1.271.32 | 1.33 | | | | [code](https://cs.k8s.io/?q=%5CbClusterTrustBundle%5Cb&i=nope&files=&excludeFiles=CHANGELOG&repos=kubernetes/kubernetes) [KEPs](https://cs.k8s.io/?q=%5CbClusterTrustBundle%5Cb&i=nope&files=&excludeFiles=CHANGELOG&repos=kubernetes/enhancements) |
| ClusterTrustBundleProjection | | | 1.291.32 | 1.33 | | | ClusterTrustBundle | [code](https://cs.k8s.io/?q=%5CbClusterTrustBundleProjection%5Cb&i=nope&files=&excludeFiles=CHANGELOG&repos=kubernetes/kubernetes) [KEPs](https://cs.k8s.io/?q=%5CbClusterTrustBundleProjection%5Cb&i=nope&files=&excludeFiles=CHANGELOG&repos=kubernetes/enhancements) |
| ComponentFlagz | | | 1.32 | | | | | [code](https://cs.k8s.io/?q=%5CbComponentFlagz%5Cb&i=nope&files=&excludeFiles=CHANGELOG&repos=kubernetes/kubernetes) [KEPs](https://cs.k8s.io/?q=%5CbComponentFlagz%5Cb&i=nope&files=&excludeFiles=CHANGELOG&repos=kubernetes/enhancements) |
| ComponentFlagz | :ballot_box_with_check:&nbsp;1.36+ | | 1.321.35 | 1.36 | | | | [code](https://cs.k8s.io/?q=%5CbComponentFlagz%5Cb&i=nope&files=&excludeFiles=CHANGELOG&repos=kubernetes/kubernetes) [KEPs](https://cs.k8s.io/?q=%5CbComponentFlagz%5Cb&i=nope&files=&excludeFiles=CHANGELOG&repos=kubernetes/enhancements) |
| ComponentStatusz | :ballot_box_with_check:&nbsp;1.36+ | | 1.321.35 | 1.36 | | | | [code](https://cs.k8s.io/?q=%5CbComponentStatusz%5Cb&i=nope&files=&excludeFiles=CHANGELOG&repos=kubernetes/kubernetes) [KEPs](https://cs.k8s.io/?q=%5CbComponentStatusz%5Cb&i=nope&files=&excludeFiles=CHANGELOG&repos=kubernetes/enhancements) |
| ConcurrentWatchObjectDecode | | | | 1.31 | | | | [code](https://cs.k8s.io/?q=%5CbConcurrentWatchObjectDecode%5Cb&i=nope&files=&excludeFiles=CHANGELOG&repos=kubernetes/kubernetes) [KEPs](https://cs.k8s.io/?q=%5CbConcurrentWatchObjectDecode%5Cb&i=nope&files=&excludeFiles=CHANGELOG&repos=kubernetes/enhancements) |
| ConsistentListFromCache | :ballot_box_with_check:&nbsp;1.31+ | :closed_lock_with_key:&nbsp;1.34+ | 1.281.30 | 1.311.33 | 1.34 | | | [code](https://cs.k8s.io/?q=%5CbConsistentListFromCache%5Cb&i=nope&files=&excludeFiles=CHANGELOG&repos=kubernetes/kubernetes) [KEPs](https://cs.k8s.io/?q=%5CbConsistentListFromCache%5Cb&i=nope&files=&excludeFiles=CHANGELOG&repos=kubernetes/enhancements) |

View File

@@ -237,6 +237,10 @@
lockToDefault: false
preRelease: Alpha
version: "1.32"
- default: true
lockToDefault: false
preRelease: Beta
version: "1.36"
- name: ComponentStatusz
versionedSpecs:
- default: false

View File

@@ -309,7 +309,7 @@ func TestStatusz(t *testing.T) {
ObjectMeta: metav1.ObjectMeta{
Name: "apiserver",
},
Paths: []string{"/healthz", "/livez", "/metrics", "/readyz", "/statusz", "/version"},
Paths: []string{"/flagz", "/healthz", "/livez", "/metrics", "/readyz", "/statusz", "/version"},
}
wantBodyBeta := &statuszv1beta1.Statusz{
TypeMeta: metav1.TypeMeta{
@@ -319,7 +319,7 @@ func TestStatusz(t *testing.T) {
ObjectMeta: metav1.ObjectMeta{
Name: "apiserver",
},
Paths: []string{"/healthz", "/livez", "/metrics", "/readyz", "/statusz", "/version"},
Paths: []string{"/flagz", "/healthz", "/livez", "/metrics", "/readyz", "/statusz", "/version"},
}
for _, tc := range []struct {