Promote StatefulSetAutoDeletePVC to stable for 1.32.

This commit is contained in:
Kubernetes Prow Robot
2024-11-05 19:16:07 +00:00
committed by Matthew Cary
parent 9a2a7537f0
commit 50362ac7d0
21 changed files with 373 additions and 179 deletions

View File

@@ -31,14 +31,11 @@ import (
"k8s.io/apimachinery/pkg/util/dump"
"k8s.io/apimachinery/pkg/util/intstr"
"k8s.io/apimachinery/pkg/util/validation/field"
utilfeature "k8s.io/apiserver/pkg/util/feature"
featuregatetesting "k8s.io/component-base/featuregate/testing"
"k8s.io/kubernetes/pkg/api/pod"
podtest "k8s.io/kubernetes/pkg/api/pod/testing"
"k8s.io/kubernetes/pkg/apis/apps"
api "k8s.io/kubernetes/pkg/apis/core"
corevalidation "k8s.io/kubernetes/pkg/apis/core/validation"
"k8s.io/kubernetes/pkg/features"
"k8s.io/utils/ptr"
)
@@ -264,8 +261,6 @@ func TestValidateStatefulSet(t *testing.T) {
},
}
const enableStatefulSetAutoDeletePVC = "[enable StatefulSetAutoDeletePVC]"
type testCase struct {
name string
set apps.StatefulSet
@@ -295,7 +290,7 @@ func TestValidateStatefulSet(t *testing.T) {
tweakRollingUpdatePartition(2),
),
}, {
name: "PVC policy " + enableStatefulSetAutoDeletePVC,
name: "PVC policy",
set: mkStatefulSet(&validPodTemplate,
tweakPVCPolicy(mkPVCPolicy(
tweakPVCDeletedPolicy(apps.DeletePersistentVolumeClaimRetentionPolicyType),
@@ -466,7 +461,7 @@ func TestValidateStatefulSet(t *testing.T) {
field.Forbidden(field.NewPath("spec", "template", "spec", "activeDeadlineSeconds"), ""),
},
}, {
name: "empty PersistentVolumeClaimRetentionPolicy " + enableStatefulSetAutoDeletePVC,
name: "empty PersistentVolumeClaimRetentionPolicy",
set: mkStatefulSet(&validPodTemplate,
tweakPVCPolicy(mkPVCPolicy()),
),
@@ -475,7 +470,7 @@ func TestValidateStatefulSet(t *testing.T) {
field.NotSupported[string](field.NewPath("spec", "persistentVolumeClaimRetentionPolicy", "whenScaled"), nil, nil),
},
}, {
name: "invalid PersistentVolumeClaimRetentionPolicy " + enableStatefulSetAutoDeletePVC,
name: "invalid PersistentVolumeClaimRetentionPolicy",
set: mkStatefulSet(&validPodTemplate,
tweakPVCPolicy(mkPVCPolicy(
tweakPVCDeletedPolicy("invalid-retention-policy"),
@@ -539,10 +534,6 @@ func TestValidateStatefulSet(t *testing.T) {
}
t.Run(testTitle, func(t *testing.T) {
if strings.Contains(name, enableStatefulSetAutoDeletePVC) {
featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.StatefulSetAutoDeletePVC, true)
}
errs := ValidateStatefulSet(&testCase.set, pod.GetValidationOptionsFromPodTemplate(&testCase.set.Spec.Template, nil))
wantErrs := testCase.errs
if diff := cmp.Diff(wantErrs, errs, cmpOpts...); diff != "" {