Skip to content

Commit bff54e4

Browse files
authored
Merge pull request kubernetes#130013 from yongruilin/crd-racheting-ga
KEP-4008: promote CRDValidationRatcheting to GA
2 parents 0e3a247 + 8ab0755 commit bff54e4

File tree

4 files changed

+8
-1
lines changed

4 files changed

+8
-1
lines changed

pkg/features/versioned_kube_features.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -127,6 +127,7 @@ var defaultVersionedKubernetesFeatureGates = map[featuregate.Feature]featuregate
127127
apiextensionsfeatures.CRDValidationRatcheting: {
128128
{Version: version.MustParse("1.28"), Default: false, PreRelease: featuregate.Alpha},
129129
{Version: version.MustParse("1.30"), Default: true, PreRelease: featuregate.Beta},
130+
{Version: version.MustParse("1.33"), Default: true, PreRelease: featuregate.GA, LockToDefault: true},
130131
},
131132

132133
CrossNamespaceVolumeDataSource: {

staging/src/k8s.io/apiextensions-apiserver/pkg/features/kube_features.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,7 @@ var defaultVersionedKubernetesFeatureGates = map[featuregate.Feature]featuregate
5656
CRDValidationRatcheting: {
5757
{Version: version.MustParse("1.28"), Default: false, PreRelease: featuregate.Alpha},
5858
{Version: version.MustParse("1.30"), Default: true, PreRelease: featuregate.Beta},
59+
{Version: version.MustParse("1.33"), Default: true, LockToDefault: true, PreRelease: featuregate.GA},
5960
},
6061
CustomResourceFieldSelectors: {
6162
{Version: version.MustParse("1.30"), Default: false, PreRelease: featuregate.Alpha},

staging/src/k8s.io/apiextensions-apiserver/test/integration/ratcheting_test.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ import (
4646
"k8s.io/apimachinery/pkg/runtime"
4747
"k8s.io/apimachinery/pkg/runtime/schema"
4848
"k8s.io/apimachinery/pkg/util/uuid"
49+
"k8s.io/apimachinery/pkg/util/version"
4950
"k8s.io/apimachinery/pkg/util/wait"
5051
utilyaml "k8s.io/apimachinery/pkg/util/yaml"
5152
utilfeature "k8s.io/apiserver/pkg/util/feature"
@@ -365,7 +366,6 @@ type ratchetingTestCase struct {
365366
}
366367

367368
func runTests(t *testing.T, cases []ratchetingTestCase) {
368-
featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.CRDValidationRatcheting, true)
369369
tearDown, apiExtensionClient, dynamicClient, err := fixtures.StartDefaultServerWithClients(t)
370370
if err != nil {
371371
t.Fatal(err)
@@ -1994,6 +1994,7 @@ func BenchmarkRatcheting(b *testing.B) {
19941994
}
19951995

19961996
func TestRatchetingDropFields(t *testing.T) {
1997+
featuregatetesting.SetFeatureGateEmulationVersionDuringTest(t, utilfeature.DefaultFeatureGate, version.MustParse("1.32"))
19971998
// Field dropping only takes effect when feature is disabled
19981999
featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.CRDValidationRatcheting, false)
19992000
tearDown, apiExtensionClient, _, err := fixtures.StartDefaultServerWithClients(t)

test/featuregates_linter/test_data/versioned_feature_list.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -322,6 +322,10 @@
322322
lockToDefault: false
323323
preRelease: Beta
324324
version: "1.30"
325+
- default: true
326+
lockToDefault: true
327+
preRelease: GA
328+
version: "1.33"
325329
- name: CronJobsScheduledAnnotation
326330
versionedSpecs:
327331
- default: true

0 commit comments

Comments
 (0)