diff --git a/pkg/api/defaulting_test.go b/pkg/api/defaulting_test.go index f5ba8780e74..40c04f6f9b8 100644 --- a/pkg/api/defaulting_test.go +++ b/pkg/api/defaulting_test.go @@ -22,7 +22,7 @@ import ( "sort" "testing" - "github.com/google/gofuzz" + fuzz "github.com/google/gofuzz" apiv1 "k8s.io/api/core/v1" extensionsv1beta1 "k8s.io/api/extensions/v1beta1" @@ -123,8 +123,6 @@ func TestDefaulting(t *testing.T) { {Group: "rbac.authorization.k8s.io", Version: "v1", Kind: "RoleBindingList"}: {}, {Group: "settings.k8s.io", Version: "v1alpha1", Kind: "PodPreset"}: {}, {Group: "settings.k8s.io", Version: "v1alpha1", Kind: "PodPresetList"}: {}, - {Group: "admissionregistration.k8s.io", Version: "v1alpha1", Kind: "InitializerConfiguration"}: {}, - {Group: "admissionregistration.k8s.io", Version: "v1alpha1", Kind: "InitializerConfigurationList"}: {}, {Group: "admissionregistration.k8s.io", Version: "v1alpha1", Kind: "ExternalAdmissionHookConfiguration"}: {}, {Group: "admissionregistration.k8s.io", Version: "v1alpha1", Kind: "ExternalAdmissionHookConfigurationList"}: {}, {Group: "networking.k8s.io", Version: "v1", Kind: "NetworkPolicy"}: {}, diff --git a/pkg/apis/admissionregistration/fuzzer/fuzzer.go b/pkg/apis/admissionregistration/fuzzer/fuzzer.go index 4029e02298c..7c0287f3cc3 100644 --- a/pkg/apis/admissionregistration/fuzzer/fuzzer.go +++ b/pkg/apis/admissionregistration/fuzzer/fuzzer.go @@ -31,10 +31,5 @@ var Funcs = func(codecs runtimeserializer.CodecFactory) []interface{} { p := admissionregistration.FailurePolicyType("Fail") obj.FailurePolicy = &p }, - func(obj *admissionregistration.Initializer, c fuzz.Continue) { - c.FuzzNoCustom(obj) // fuzz self without calling this function again - p := admissionregistration.FailurePolicyType("Fail") - obj.FailurePolicy = &p - }, } } diff --git a/pkg/apis/admissionregistration/types.go b/pkg/apis/admissionregistration/types.go index 888a3ebffae..b4676560037 100644 --- a/pkg/apis/admissionregistration/types.go +++ b/pkg/apis/admissionregistration/types.go @@ -70,13 +70,6 @@ type Initializer struct { // The initializer cares about an operation if it matches _any_ Rule. // Rule.Resources must not include subresources. Rules []Rule - - // FailurePolicy defines what happens if the responsible initializer controller - // fails to takes action. Allowed values are Ignore, or Fail. If "Ignore" is - // set, initializer is removed from the initializers list of an object if - // the timeout is reached; If "Fail" is set, admissionregistration returns timeout error - // if the timeout is reached. - FailurePolicy *FailurePolicyType } // Rule is a tuple of APIGroups, APIVersion, and Resources.It is recommended diff --git a/pkg/apis/admissionregistration/v1alpha1/defaults.go b/pkg/apis/admissionregistration/v1alpha1/defaults.go index 0757d1bfc76..92a37ad1ccd 100644 --- a/pkg/apis/admissionregistration/v1alpha1/defaults.go +++ b/pkg/apis/admissionregistration/v1alpha1/defaults.go @@ -25,13 +25,6 @@ func addDefaultingFuncs(scheme *runtime.Scheme) error { return RegisterDefaults(scheme) } -func SetDefaults_Initializer(obj *admissionregistrationv1alpha1.Initializer) { - if obj.FailurePolicy == nil { - policy := admissionregistrationv1alpha1.Ignore - obj.FailurePolicy = &policy - } -} - func SetDefaults_ExternalAdmissionHook(obj *admissionregistrationv1alpha1.ExternalAdmissionHook) { if obj.FailurePolicy == nil { policy := admissionregistrationv1alpha1.Ignore diff --git a/pkg/apis/admissionregistration/validation/validation.go b/pkg/apis/admissionregistration/validation/validation.go index 4c478f457e0..f161c98dee8 100644 --- a/pkg/apis/admissionregistration/validation/validation.go +++ b/pkg/apis/admissionregistration/validation/validation.go @@ -52,10 +52,6 @@ func validateInitializer(initializer *admissionregistration.Initializer, fldPath notAllowSubresources := false allErrors = append(allErrors, validateRule(&rule, fldPath.Child("rules").Index(i), notAllowSubresources)...) } - // TODO: relax the validation rule when admissionregistration is beta. - if initializer.FailurePolicy != nil && *initializer.FailurePolicy != admissionregistration.Ignore { - allErrors = append(allErrors, field.NotSupported(fldPath.Child("failurePolicy"), *initializer.FailurePolicy, []string{string(admissionregistration.Ignore)})) - } return allErrors } diff --git a/pkg/apis/admissionregistration/validation/validation_test.go b/pkg/apis/admissionregistration/validation/validation_test.go index a864ac3a866..eca9376a677 100644 --- a/pkg/apis/admissionregistration/validation/validation_test.go +++ b/pkg/apis/admissionregistration/validation/validation_test.go @@ -214,20 +214,6 @@ func TestValidateInitializerConfiguration(t *testing.T) { }), expectedError: ` "a/b": must not specify subresources`, }, - { - name: "FailurePolicy can only be \"Ignore\"", - config: getInitializerConfiguration( - []admissionregistration.Initializer{ - { - Name: "initializer.k8s.io", - FailurePolicy: func() *admissionregistration.FailurePolicyType { - r := admissionregistration.Fail - return &r - }(), - }, - }), - expectedError: `failurePolicy: Unsupported value: "Fail": supported values: Ignore`, - }, } for _, test := range tests { diff --git a/staging/src/k8s.io/api/admissionregistration/v1alpha1/types.go b/staging/src/k8s.io/api/admissionregistration/v1alpha1/types.go index 1b5f5be80b3..d4827e59d33 100644 --- a/staging/src/k8s.io/api/admissionregistration/v1alpha1/types.go +++ b/staging/src/k8s.io/api/admissionregistration/v1alpha1/types.go @@ -72,13 +72,6 @@ type Initializer struct { // The initializer cares about an operation if it matches _any_ Rule. // Rule.Resources must not include subresources. Rules []Rule `json:"rules,omitempty" protobuf:"bytes,2,rep,name=rules"` - - // FailurePolicy defines what happens if the responsible initializer controller - // fails to takes action. Allowed values are Ignore, or Fail. If "Ignore" is - // set, initializer is removed from the initializers list of an object if - // the timeout is reached; If "Fail" is set, admissionregistration returns timeout error - // if the timeout is reached. - FailurePolicy *FailurePolicyType `json:"failurePolicy,omitempty" protobuf:"bytes,3,opt,name=failurePolicy,casttype=FailurePolicyType"` } // Rule is a tuple of APIGroups, APIVersion, and Resources.It is recommended