diff --git a/pkg/apis/core/validation/validation_test.go b/pkg/apis/core/validation/validation_test.go index f2be3cbc805..29c985a216a 100644 --- a/pkg/apis/core/validation/validation_test.go +++ b/pkg/apis/core/validation/validation_test.go @@ -2440,40 +2440,45 @@ func TestValidationOptionsForPersistentVolumeClaim(t *testing.T) { oldPvc: nil, enableReadWriteOncePod: true, expectValidationOpts: PersistentVolumeClaimSpecValidationOptions{ - AllowReadWriteOncePod: true, - EnableRecoverFromExpansionFailure: false, + AllowReadWriteOncePod: true, + EnableRecoverFromExpansionFailure: false, + EnableRetroactiveDefaultStorageClass: true, }, }, "rwop allowed because feature enabled": { oldPvc: pvcWithAccessModes([]core.PersistentVolumeAccessMode{core.ReadWriteOnce}), enableReadWriteOncePod: true, expectValidationOpts: PersistentVolumeClaimSpecValidationOptions{ - AllowReadWriteOncePod: true, - EnableRecoverFromExpansionFailure: false, + AllowReadWriteOncePod: true, + EnableRecoverFromExpansionFailure: false, + EnableRetroactiveDefaultStorageClass: true, }, }, "rwop not allowed because not used and feature disabled": { oldPvc: pvcWithAccessModes([]core.PersistentVolumeAccessMode{core.ReadWriteOnce}), enableReadWriteOncePod: false, expectValidationOpts: PersistentVolumeClaimSpecValidationOptions{ - AllowReadWriteOncePod: false, - EnableRecoverFromExpansionFailure: false, + AllowReadWriteOncePod: false, + EnableRecoverFromExpansionFailure: false, + EnableRetroactiveDefaultStorageClass: true, }, }, "rwop allowed because used and feature enabled": { oldPvc: pvcWithAccessModes([]core.PersistentVolumeAccessMode{core.ReadWriteOncePod}), enableReadWriteOncePod: true, expectValidationOpts: PersistentVolumeClaimSpecValidationOptions{ - AllowReadWriteOncePod: true, - EnableRecoverFromExpansionFailure: false, + AllowReadWriteOncePod: true, + EnableRecoverFromExpansionFailure: false, + EnableRetroactiveDefaultStorageClass: true, }, }, "rwop allowed because used and feature disabled": { oldPvc: pvcWithAccessModes([]core.PersistentVolumeAccessMode{core.ReadWriteOncePod}), enableReadWriteOncePod: false, expectValidationOpts: PersistentVolumeClaimSpecValidationOptions{ - AllowReadWriteOncePod: true, - EnableRecoverFromExpansionFailure: false, + AllowReadWriteOncePod: true, + EnableRecoverFromExpansionFailure: false, + EnableRetroactiveDefaultStorageClass: true, }, }, } diff --git a/pkg/features/kube_features.go b/pkg/features/kube_features.go index 6ae2eb086bd..e58fbab0087 100644 --- a/pkg/features/kube_features.go +++ b/pkg/features/kube_features.go @@ -1003,7 +1003,7 @@ var defaultKubernetesFeatureGates = map[featuregate.Feature]featuregate.FeatureS RecoverVolumeExpansionFailure: {Default: false, PreRelease: featuregate.Alpha}, - RetroactiveDefaultStorageClass: {Default: false, PreRelease: featuregate.Alpha}, + RetroactiveDefaultStorageClass: {Default: true, PreRelease: featuregate.Beta}, RotateKubeletServerCertificate: {Default: true, PreRelease: featuregate.Beta}, diff --git a/test/e2e/storage/pvc_storageclass.go b/test/e2e/storage/pvc_storageclass.go index a611b9e645a..ba38bbbf22f 100644 --- a/test/e2e/storage/pvc_storageclass.go +++ b/test/e2e/storage/pvc_storageclass.go @@ -60,7 +60,7 @@ var _ = utils.SIGDescribe("Persistent Volume Claim and StorageClass", func() { } }) - ginkgo.Describe("Retroactive StorageClass assignment [Serial][Disruptive][Feature:RetroactiveDefaultStorageClass]", func() { + ginkgo.Describe("Retroactive StorageClass assignment [Serial][Disruptive]", func() { ginkgo.It("should assign default SC to PVCs that have no SC set", func(ctx context.Context) { // Temporarily set all default storage classes as non-default