Merge pull request #51300 from caesarxuchao/remove-failure-policy

Automatic merge from submit-queue (batch tested with PRs 50919, 51410, 50099, 51300, 50296)

Remove failure policy from initializer configuration

A few reasons:
* Implementing fail open initializers increases complexity a lot
* We haven't seen strong use cases
* We can always add it back
pull/6/head
Kubernetes Submit Queue 2017-08-29 03:20:08 -07:00 committed by GitHub
commit 79d0c2d554
18 changed files with 87 additions and 295 deletions

View File

@ -54660,10 +54660,6 @@
"name"
],
"properties": {
"failurePolicy": {
"description": "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.",
"type": "string"
},
"name": {
"description": "Name is the identifier of the initializer. It will be added to the object that needs to be initialized. Name should be fully qualified, e.g., alwayspullimages.kubernetes.io, where \"alwayspullimages\" is the name of the webhook, and kubernetes.io is the name of the organization. Required",
"type": "string"

View File

@ -1814,10 +1814,6 @@
"$ref": "v1alpha1.Rule"
},
"description": "Rules describes what resources/subresources the initializer cares about. The initializer cares about an operation if it matches _any_ Rule. Rule.Resources must not include subresources."
},
"failurePolicy": {
"$ref": "v1alpha1.FailurePolicyType",
"description": "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."
}
}
},

View File

@ -977,13 +977,6 @@ Depending on the enclosing object, subresources might not be allowed. Required.<
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#_v1alpha1_rule">v1alpha1.Rule</a> array</p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">failurePolicy</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">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.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">false</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#_v1alpha1_failurepolicytype">v1alpha1.FailurePolicyType</a></p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
</tbody>
</table>

View File

@ -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"}: {},

View File

@ -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
},
}
}

View File

@ -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

View File

@ -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

View File

@ -162,7 +162,6 @@ func Convert_admissionregistration_ExternalAdmissionHookConfigurationList_To_v1a
func autoConvert_v1alpha1_Initializer_To_admissionregistration_Initializer(in *v1alpha1.Initializer, out *admissionregistration.Initializer, s conversion.Scope) error {
out.Name = in.Name
out.Rules = *(*[]admissionregistration.Rule)(unsafe.Pointer(&in.Rules))
out.FailurePolicy = (*admissionregistration.FailurePolicyType)(unsafe.Pointer(in.FailurePolicy))
return nil
}
@ -174,7 +173,6 @@ func Convert_v1alpha1_Initializer_To_admissionregistration_Initializer(in *v1alp
func autoConvert_admissionregistration_Initializer_To_v1alpha1_Initializer(in *admissionregistration.Initializer, out *v1alpha1.Initializer, s conversion.Scope) error {
out.Name = in.Name
out.Rules = *(*[]v1alpha1.Rule)(unsafe.Pointer(&in.Rules))
out.FailurePolicy = (*v1alpha1.FailurePolicyType)(unsafe.Pointer(in.FailurePolicy))
return nil
}

View File

@ -35,12 +35,6 @@ func RegisterDefaults(scheme *runtime.Scheme) error {
scheme.AddTypeDefaultingFunc(&v1alpha1.ExternalAdmissionHookConfigurationList{}, func(obj interface{}) {
SetObjectDefaults_ExternalAdmissionHookConfigurationList(obj.(*v1alpha1.ExternalAdmissionHookConfigurationList))
})
scheme.AddTypeDefaultingFunc(&v1alpha1.InitializerConfiguration{}, func(obj interface{}) {
SetObjectDefaults_InitializerConfiguration(obj.(*v1alpha1.InitializerConfiguration))
})
scheme.AddTypeDefaultingFunc(&v1alpha1.InitializerConfigurationList{}, func(obj interface{}) {
SetObjectDefaults_InitializerConfigurationList(obj.(*v1alpha1.InitializerConfigurationList))
})
return nil
}
@ -57,17 +51,3 @@ func SetObjectDefaults_ExternalAdmissionHookConfigurationList(in *v1alpha1.Exter
SetObjectDefaults_ExternalAdmissionHookConfiguration(a)
}
}
func SetObjectDefaults_InitializerConfiguration(in *v1alpha1.InitializerConfiguration) {
for i := range in.Initializers {
a := &in.Initializers[i]
SetDefaults_Initializer(a)
}
}
func SetObjectDefaults_InitializerConfigurationList(in *v1alpha1.InitializerConfigurationList) {
for i := range in.Items {
a := &in.Items[i]
SetObjectDefaults_InitializerConfiguration(a)
}
}

View File

@ -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
}

View File

@ -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 {

View File

@ -212,15 +212,6 @@ func (in *Initializer) DeepCopyInto(out *Initializer) {
(*in)[i].DeepCopyInto(&(*out)[i])
}
}
if in.FailurePolicy != nil {
in, out := &in.FailurePolicy, &out.FailurePolicy
if *in == nil {
*out = nil
} else {
*out = new(FailurePolicyType)
**out = **in
}
}
return
}

View File

@ -309,12 +309,6 @@ func (m *Initializer) MarshalTo(dAtA []byte) (int, error) {
i += n
}
}
if m.FailurePolicy != nil {
dAtA[i] = 0x1a
i++
i = encodeVarintGenerated(dAtA, i, uint64(len(*m.FailurePolicy)))
i += copy(dAtA[i:], *m.FailurePolicy)
}
return i, nil
}
@ -622,10 +616,6 @@ func (m *Initializer) Size() (n int) {
n += 1 + l + sovGenerated(uint64(l))
}
}
if m.FailurePolicy != nil {
l = len(*m.FailurePolicy)
n += 1 + l + sovGenerated(uint64(l))
}
return n
}
@ -771,7 +761,6 @@ func (this *Initializer) String() string {
s := strings.Join([]string{`&Initializer{`,
`Name:` + fmt.Sprintf("%v", this.Name) + `,`,
`Rules:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.Rules), "Rule", "Rule", 1), `&`, ``, 1) + `,`,
`FailurePolicy:` + valueToStringGenerated(this.FailurePolicy) + `,`,
`}`,
}, "")
return s
@ -1432,36 +1421,6 @@ func (m *Initializer) Unmarshal(dAtA []byte) error {
return err
}
iNdEx = postIndex
case 3:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field FailurePolicy", wireType)
}
var stringLen uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenerated
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
stringLen |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
intStringLen := int(stringLen)
if intStringLen < 0 {
return ErrInvalidLengthGenerated
}
postIndex := iNdEx + intStringLen
if postIndex > l {
return io.ErrUnexpectedEOF
}
s := FailurePolicyType(dAtA[iNdEx:postIndex])
m.FailurePolicy = &s
iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := skipGenerated(dAtA[iNdEx:])
@ -2169,60 +2128,60 @@ func init() {
}
var fileDescriptorGenerated = []byte{
// 875 bytes of a gzipped FileDescriptorProto
// 871 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x55, 0xcd, 0x8b, 0x23, 0x45,
0x14, 0x4f, 0x65, 0x32, 0x6c, 0x52, 0x49, 0xd8, 0xdd, 0x42, 0x97, 0x38, 0x48, 0x77, 0xe8, 0xc3,
0x12, 0x11, 0xbb, 0x9d, 0x51, 0x16, 0x41, 0x44, 0xa7, 0xc7, 0xaf, 0x81, 0xfd, 0x18, 0xcb, 0x45,
0x41, 0x3c, 0x58, 0xe9, 0xbc, 0x24, 0x65, 0xfa, 0x8b, 0xaa, 0xea, 0xe0, 0x78, 0x10, 0xff, 0x04,
0xc1, 0x8b, 0x57, 0x6f, 0x5e, 0xfc, 0x3f, 0xe6, 0xb8, 0xe0, 0x65, 0x4f, 0xc1, 0x69, 0xc1, 0x8b,
0xe0, 0x1f, 0x30, 0x27, 0xe9, 0xaf, 0xa4, 0xb3, 0x49, 0xd8, 0xc4, 0x85, 0xb9, 0x75, 0xbd, 0x57,
0xbf, 0xf7, 0x7e, 0xef, 0xc7, 0xef, 0x55, 0x63, 0x3a, 0x79, 0x47, 0x9a, 0x3c, 0xb0, 0x26, 0x51,
0x1f, 0x84, 0x0f, 0x0a, 0xa4, 0x35, 0x05, 0x7f, 0x10, 0x08, 0x2b, 0x4f, 0xb0, 0x90, 0x5b, 0x6c,
0xe0, 0x71, 0x29, 0x79, 0xe0, 0x0b, 0x18, 0x71, 0xa9, 0x04, 0x53, 0x3c, 0xf0, 0xad, 0xe9, 0x21,
0x73, 0xc3, 0x31, 0x3b, 0xb4, 0x46, 0xe0, 0x83, 0x60, 0x0a, 0x06, 0x66, 0x28, 0x02, 0x15, 0x90,
0xd7, 0x32, 0xa8, 0xc9, 0x42, 0x6e, 0xae, 0x85, 0x9a, 0x05, 0xf4, 0xe0, 0x8d, 0x11, 0x57, 0xe3,
0xa8, 0x6f, 0x3a, 0x81, 0x67, 0x8d, 0x82, 0x51, 0x60, 0xa5, 0x15, 0xfa, 0xd1, 0x30, 0x3d, 0xa5,
0x87, 0xf4, 0x2b, 0xab, 0x7c, 0xf0, 0xf6, 0x82, 0x94, 0xc7, 0x9c, 0x31, 0xf7, 0x41, 0x9c, 0x5b,
0xe1, 0x64, 0x94, 0x04, 0xa4, 0xe5, 0x81, 0x62, 0xd6, 0x74, 0x85, 0xcf, 0x81, 0xb5, 0x09, 0x25,
0x22, 0x5f, 0x71, 0x0f, 0x56, 0x00, 0xf7, 0x9e, 0x07, 0x90, 0xce, 0x18, 0x3c, 0xb6, 0x82, 0x7b,
0x6b, 0x13, 0x2e, 0x52, 0xdc, 0xb5, 0xb8, 0xaf, 0xa4, 0x12, 0xcf, 0x82, 0x8c, 0xdf, 0x11, 0x7e,
0xe5, 0xb8, 0x50, 0xe9, 0xd3, 0x20, 0x98, 0x9c, 0xb8, 0x1c, 0x7c, 0x75, 0x12, 0xf8, 0x43, 0x3e,
0x22, 0x43, 0x7c, 0x43, 0x82, 0x98, 0x72, 0x07, 0x3a, 0xa8, 0x8b, 0x7a, 0xcd, 0xa3, 0x77, 0xcd,
0xad, 0xd5, 0x35, 0x3f, 0xcf, 0x90, 0x14, 0x86, 0x20, 0xc0, 0x77, 0xc0, 0xbe, 0x79, 0x31, 0xd3,
0x2b, 0xf1, 0x4c, 0xbf, 0x51, 0x64, 0x8a, 0xe2, 0xa4, 0x87, 0xeb, 0x0e, 0xb3, 0x23, 0x7f, 0xe0,
0x42, 0xa7, 0xda, 0x45, 0xbd, 0x96, 0xdd, 0x8a, 0x67, 0x7a, 0xfd, 0xe4, 0x38, 0x8b, 0xd1, 0x79,
0xd6, 0xf8, 0xa7, 0x8a, 0x5f, 0xfe, 0xe8, 0x3b, 0x05, 0xc2, 0x67, 0xee, 0x12, 0x6f, 0xd2, 0xc5,
0x35, 0x9f, 0x79, 0x19, 0xd1, 0x86, 0xdd, 0xca, 0x7b, 0xd5, 0x1e, 0x32, 0x0f, 0x68, 0x9a, 0x21,
0x3f, 0xe0, 0x96, 0x53, 0x9a, 0x2e, 0xed, 0xd4, 0x3c, 0xfa, 0x70, 0x87, 0x91, 0x36, 0x2a, 0x65,
0xbf, 0x94, 0xf7, 0x6b, 0x95, 0xa3, 0x74, 0xa9, 0x1f, 0xe9, 0xe3, 0x7d, 0x11, 0xb9, 0x20, 0x3b,
0x7b, 0xdd, 0xbd, 0x5e, 0xf3, 0xe8, 0xbd, 0x1d, 0x1a, 0xd3, 0xc8, 0x85, 0x2f, 0xb9, 0x1a, 0x3f,
0x0a, 0x21, 0x4b, 0x49, 0xbb, 0x9d, 0x77, 0xdc, 0x4f, 0x72, 0x92, 0x66, 0xa5, 0xc9, 0x7d, 0xdc,
0x1e, 0x32, 0xee, 0x46, 0x02, 0xce, 0x02, 0x97, 0x3b, 0xe7, 0x9d, 0x5a, 0x2a, 0xc7, 0xdd, 0x78,
0xa6, 0xb7, 0x3f, 0x2e, 0x27, 0xae, 0x66, 0xfa, 0xed, 0xa5, 0xc0, 0xe3, 0xf3, 0x10, 0xe8, 0x32,
0xd8, 0xf8, 0xb5, 0x8a, 0x8d, 0xb5, 0x6a, 0x67, 0x13, 0x45, 0x19, 0x17, 0xf2, 0x0d, 0xae, 0x27,
0xee, 0x1f, 0x30, 0xc5, 0x72, 0x9f, 0xbc, 0x59, 0x9a, 0x6d, 0x6e, 0x46, 0x33, 0x9c, 0x8c, 0x92,
0x80, 0x34, 0x93, 0xdb, 0xe6, 0xf4, 0xd0, 0x7c, 0xd4, 0xff, 0x16, 0x1c, 0xf5, 0x00, 0x14, 0xb3,
0x49, 0x3e, 0x0e, 0x5e, 0xc4, 0xe8, 0xbc, 0x2a, 0xf9, 0x05, 0xe1, 0x3b, 0xb0, 0x8e, 0x88, 0xec,
0x54, 0x53, 0x31, 0x3f, 0xd8, 0x41, 0xcc, 0xb5, 0x13, 0xd9, 0x5a, 0x4e, 0xe0, 0xce, 0xda, 0xb4,
0xa4, 0x1b, 0xfa, 0x1b, 0x57, 0x08, 0xdf, 0x7d, 0xbe, 0x46, 0xf7, 0xb9, 0x54, 0xe4, 0xeb, 0x15,
0x9d, 0xcc, 0xed, 0x74, 0x4a, 0xd0, 0xa9, 0x4a, 0xb7, 0x72, 0x92, 0xf5, 0x22, 0x52, 0xd2, 0x48,
0xe0, 0x7d, 0xae, 0xc0, 0x2b, 0x14, 0x79, 0xf0, 0xa2, 0x8a, 0x2c, 0xf1, 0x5f, 0xd8, 0xed, 0x34,
0xe9, 0x41, 0xb3, 0x56, 0xc6, 0x1f, 0x08, 0x37, 0x4f, 0x7d, 0xae, 0x38, 0x73, 0xf9, 0xf7, 0x20,
0xb6, 0x58, 0xc2, 0xc7, 0xc5, 0x12, 0x64, 0x2c, 0xad, 0x1d, 0x97, 0x60, 0x5b, 0xdb, 0xef, 0xbd,
0x88, 0xed, 0xff, 0x45, 0xb8, 0x53, 0x9a, 0xea, 0xba, 0xcd, 0x1e, 0xe2, 0x16, 0x5f, 0x74, 0x2f,
0x94, 0xba, 0xb7, 0x83, 0x52, 0x25, 0xf2, 0x8b, 0x97, 0xa9, 0x14, 0x94, 0x74, 0xa9, 0x83, 0xf1,
0x37, 0xc2, 0xaf, 0x6e, 0x1a, 0xf8, 0x1a, 0x9c, 0x3b, 0x5e, 0x76, 0xee, 0xc9, 0xff, 0x9b, 0x74,
0x1b, 0xbf, 0xfe, 0x8c, 0x70, 0x2d, 0x31, 0x0e, 0x79, 0x1d, 0x37, 0x58, 0xc8, 0x3f, 0x11, 0x41,
0x14, 0xca, 0x0e, 0xea, 0xee, 0xf5, 0x1a, 0x76, 0x3b, 0x9e, 0xe9, 0x8d, 0xe3, 0xb3, 0xd3, 0x2c,
0x48, 0x17, 0x79, 0x72, 0x88, 0x9b, 0x2c, 0xe4, 0x5f, 0x80, 0x48, 0x78, 0x64, 0x2c, 0x1b, 0xf6,
0xcd, 0x78, 0xa6, 0x37, 0x8f, 0xcf, 0x4e, 0x8b, 0x30, 0x2d, 0xdf, 0x49, 0xea, 0x0b, 0x90, 0x41,
0x24, 0x9c, 0xfc, 0xbd, 0xcf, 0xeb, 0xd3, 0x22, 0x48, 0x17, 0x79, 0xe3, 0x37, 0x84, 0xc9, 0xea,
0x0b, 0x4f, 0xde, 0xc7, 0x38, 0x98, 0x9f, 0x72, 0x92, 0x7a, 0xea, 0x9a, 0x79, 0xf4, 0x6a, 0xa6,
0xb7, 0xe7, 0xa7, 0xd4, 0xca, 0x25, 0x08, 0xf9, 0x0c, 0xd7, 0x92, 0xf5, 0xc8, 0x7f, 0x74, 0x3b,
0xaf, 0xda, 0x7c, 0x7d, 0x93, 0x13, 0x4d, 0x4b, 0x19, 0x80, 0x6f, 0x3d, 0xfb, 0x5f, 0x27, 0x16,
0x6e, 0x24, 0xab, 0x2d, 0x43, 0xe6, 0x14, 0x9b, 0x7f, 0x3b, 0x87, 0x36, 0x1e, 0x16, 0x09, 0xba,
0xb8, 0x33, 0x7f, 0x25, 0xaa, 0x9b, 0x5e, 0x09, 0xdb, 0xbc, 0xb8, 0xd4, 0x2a, 0x4f, 0x2e, 0xb5,
0xca, 0xd3, 0x4b, 0xad, 0xf2, 0x63, 0xac, 0xa1, 0x8b, 0x58, 0x43, 0x4f, 0x62, 0x0d, 0x3d, 0x8d,
0x35, 0xf4, 0x67, 0xac, 0xa1, 0x9f, 0xfe, 0xd2, 0x2a, 0x5f, 0xd5, 0x0b, 0xbe, 0xff, 0x05, 0x00,
0x00, 0xff, 0xff, 0xd2, 0x64, 0x2c, 0xcb, 0x49, 0x0a, 0x00, 0x00,
0x41, 0x3c, 0x58, 0xe9, 0xbc, 0x24, 0x65, 0xfa, 0x8b, 0xaa, 0xea, 0xe0, 0x78, 0x10, 0x2f, 0xde,
0x05, 0x2f, 0x5e, 0xbd, 0x79, 0xf1, 0xff, 0x98, 0xe3, 0x1e, 0xf7, 0x14, 0x9c, 0x16, 0xbc, 0x08,
0xfe, 0x01, 0x73, 0x92, 0xfe, 0x4a, 0x3a, 0x9b, 0x84, 0x4d, 0x5c, 0x98, 0x5b, 0xea, 0xf7, 0xea,
0xf7, 0xde, 0xef, 0xfd, 0xf2, 0x5e, 0x35, 0xa6, 0x93, 0x77, 0xa4, 0xc9, 0x03, 0x6b, 0x12, 0xf5,
0x41, 0xf8, 0xa0, 0x40, 0x5a, 0x53, 0xf0, 0x07, 0x81, 0xb0, 0xf2, 0x00, 0x0b, 0xb9, 0xc5, 0x06,
0x1e, 0x97, 0x92, 0x07, 0xbe, 0x80, 0x11, 0x97, 0x4a, 0x30, 0xc5, 0x03, 0xdf, 0x9a, 0x1e, 0x32,
0x37, 0x1c, 0xb3, 0x43, 0x6b, 0x04, 0x3e, 0x08, 0xa6, 0x60, 0x60, 0x86, 0x22, 0x50, 0x01, 0x79,
0x2d, 0xa3, 0x9a, 0x2c, 0xe4, 0xe6, 0x5a, 0xaa, 0x59, 0x50, 0x0f, 0xde, 0x18, 0x71, 0x35, 0x8e,
0xfa, 0xa6, 0x13, 0x78, 0xd6, 0x28, 0x18, 0x05, 0x56, 0x9a, 0xa1, 0x1f, 0x0d, 0xd3, 0x53, 0x7a,
0x48, 0x7f, 0x65, 0x99, 0x0f, 0xde, 0x5e, 0x88, 0xf2, 0x98, 0x33, 0xe6, 0x3e, 0x88, 0x73, 0x2b,
0x9c, 0x8c, 0x12, 0x40, 0x5a, 0x1e, 0x28, 0x66, 0x4d, 0x57, 0xf4, 0x1c, 0x58, 0x9b, 0x58, 0x22,
0xf2, 0x15, 0xf7, 0x60, 0x85, 0x70, 0xef, 0x79, 0x04, 0xe9, 0x8c, 0xc1, 0x63, 0x2b, 0xbc, 0xb7,
0x36, 0xf1, 0x22, 0xc5, 0x5d, 0x8b, 0xfb, 0x4a, 0x2a, 0xf1, 0x2c, 0xc9, 0xf8, 0x03, 0xe1, 0x57,
0x8e, 0x0b, 0x97, 0x3e, 0x0d, 0x82, 0xc9, 0x89, 0xcb, 0xc1, 0x57, 0x27, 0x81, 0x3f, 0xe4, 0x23,
0x32, 0xc4, 0x37, 0x24, 0x88, 0x29, 0x77, 0xa0, 0x83, 0xba, 0xa8, 0xd7, 0x3c, 0x7a, 0xd7, 0xdc,
0xda, 0x5d, 0xf3, 0xf3, 0x8c, 0x49, 0x61, 0x08, 0x02, 0x7c, 0x07, 0xec, 0x9b, 0x17, 0x33, 0xbd,
0x12, 0xcf, 0xf4, 0x1b, 0x45, 0xa4, 0x48, 0x4e, 0x7a, 0xb8, 0xee, 0x30, 0x3b, 0xf2, 0x07, 0x2e,
0x74, 0xaa, 0x5d, 0xd4, 0x6b, 0xd9, 0xad, 0x78, 0xa6, 0xd7, 0x4f, 0x8e, 0x33, 0x8c, 0xce, 0xa3,
0xc6, 0x3f, 0x55, 0xfc, 0xf2, 0x47, 0xdf, 0x29, 0x10, 0x3e, 0x73, 0x97, 0x74, 0x93, 0x2e, 0xae,
0xf9, 0xcc, 0xcb, 0x84, 0x36, 0xec, 0x56, 0x5e, 0xab, 0xf6, 0x90, 0x79, 0x40, 0xd3, 0x08, 0xf9,
0x01, 0xb7, 0x9c, 0x52, 0x77, 0x69, 0xa5, 0xe6, 0xd1, 0x87, 0x3b, 0xb4, 0xb4, 0xd1, 0x29, 0xfb,
0xa5, 0xbc, 0x5e, 0xab, 0x8c, 0xd2, 0xa5, 0x7a, 0xa4, 0x8f, 0xf7, 0x45, 0xe4, 0x82, 0xec, 0xec,
0x75, 0xf7, 0x7a, 0xcd, 0xa3, 0xf7, 0x76, 0x28, 0x4c, 0x23, 0x17, 0xbe, 0xe4, 0x6a, 0xfc, 0x28,
0x84, 0x2c, 0x24, 0xed, 0x76, 0x5e, 0x71, 0x3f, 0x89, 0x49, 0x9a, 0xa5, 0x26, 0xf7, 0x71, 0x7b,
0xc8, 0xb8, 0x1b, 0x09, 0x38, 0x0b, 0x5c, 0xee, 0x9c, 0x77, 0x6a, 0xa9, 0x1d, 0x77, 0xe3, 0x99,
0xde, 0xfe, 0xb8, 0x1c, 0xb8, 0x9a, 0xe9, 0xb7, 0x97, 0x80, 0xc7, 0xe7, 0x21, 0xd0, 0x65, 0xb2,
0xf1, 0x5b, 0x15, 0x1b, 0x6b, 0xdd, 0xce, 0x3a, 0x8a, 0x32, 0x2d, 0xe4, 0x1b, 0x5c, 0x4f, 0xa6,
0x7f, 0xc0, 0x14, 0xcb, 0xe7, 0xe4, 0xcd, 0x52, 0x6f, 0xf3, 0x61, 0x34, 0xc3, 0xc9, 0x28, 0x01,
0xa4, 0x99, 0xdc, 0x36, 0xa7, 0x87, 0xe6, 0xa3, 0xfe, 0xb7, 0xe0, 0xa8, 0x07, 0xa0, 0x98, 0x4d,
0xf2, 0x76, 0xf0, 0x02, 0xa3, 0xf3, 0xac, 0xe4, 0x57, 0x84, 0xef, 0xc0, 0x3a, 0x21, 0xb2, 0x53,
0x4d, 0xcd, 0xfc, 0x60, 0x07, 0x33, 0xd7, 0x76, 0x64, 0x6b, 0xb9, 0x80, 0x3b, 0x6b, 0xc3, 0x92,
0x6e, 0xa8, 0x6f, 0x5c, 0x21, 0x7c, 0xf7, 0xf9, 0x1e, 0xdd, 0xe7, 0x52, 0x91, 0xaf, 0x57, 0x7c,
0x32, 0xb7, 0xf3, 0x29, 0x61, 0xa7, 0x2e, 0xdd, 0xca, 0x45, 0xd6, 0x0b, 0xa4, 0xe4, 0x91, 0xc0,
0xfb, 0x5c, 0x81, 0x57, 0x38, 0xf2, 0xe0, 0x45, 0x1d, 0x59, 0xd2, 0xbf, 0x18, 0xb7, 0xd3, 0xa4,
0x06, 0xcd, 0x4a, 0x19, 0x3f, 0x21, 0xdc, 0x3c, 0xf5, 0xb9, 0xe2, 0xcc, 0xe5, 0xdf, 0x83, 0xd8,
0x62, 0x09, 0x1f, 0x17, 0x4b, 0x90, 0xa9, 0xb4, 0x76, 0x5c, 0x82, 0xf5, 0x63, 0x6f, 0xfc, 0x8b,
0x70, 0xa7, 0xa4, 0xe3, 0xba, 0xc7, 0x33, 0xc4, 0x2d, 0xbe, 0xa8, 0x5e, 0xf4, 0x76, 0x6f, 0x87,
0xde, 0x4a, 0xe2, 0x17, 0x6f, 0x49, 0x09, 0x94, 0x74, 0xa9, 0x82, 0xf1, 0x37, 0xc2, 0xaf, 0x6e,
0x6a, 0xf8, 0x1a, 0x66, 0x6d, 0xbc, 0x3c, 0x6b, 0x27, 0xff, 0xaf, 0xd3, 0x6d, 0x26, 0xec, 0x17,
0x84, 0x6b, 0xc9, 0x5f, 0x4d, 0x5e, 0xc7, 0x0d, 0x16, 0xf2, 0x4f, 0x44, 0x10, 0x85, 0xb2, 0x83,
0xba, 0x7b, 0xbd, 0x86, 0xdd, 0x8e, 0x67, 0x7a, 0xe3, 0xf8, 0xec, 0x34, 0x03, 0xe9, 0x22, 0x4e,
0x0e, 0x71, 0x93, 0x85, 0xfc, 0x0b, 0x10, 0x89, 0x8e, 0x4c, 0x65, 0xc3, 0xbe, 0x19, 0xcf, 0xf4,
0xe6, 0xf1, 0xd9, 0x69, 0x01, 0xd3, 0xf2, 0x9d, 0x24, 0xbf, 0x00, 0x19, 0x44, 0xc2, 0xc9, 0x5f,
0xe8, 0x3c, 0x3f, 0x2d, 0x40, 0xba, 0x88, 0x1b, 0xbf, 0x23, 0x4c, 0x56, 0xdf, 0x64, 0xf2, 0x3e,
0xc6, 0xc1, 0xfc, 0x94, 0x8b, 0xd4, 0xd3, 0xa9, 0x99, 0xa3, 0x57, 0x33, 0xbd, 0x3d, 0x3f, 0xa5,
0x6f, 0x6e, 0x89, 0x42, 0x3e, 0xc3, 0xb5, 0x64, 0xa0, 0xf3, 0x4f, 0xd3, 0xce, 0xcb, 0x31, 0x5f,
0xb8, 0xe4, 0x44, 0xd3, 0x54, 0x06, 0xe0, 0x5b, 0xcf, 0x7e, 0x89, 0x89, 0x85, 0x1b, 0xc9, 0x32,
0xca, 0x90, 0x39, 0xc5, 0xae, 0xde, 0xce, 0xa9, 0x8d, 0x87, 0x45, 0x80, 0x2e, 0xee, 0xcc, 0xf7,
0xba, 0xba, 0x69, 0xaf, 0x6d, 0xf3, 0xe2, 0x52, 0xab, 0x3c, 0xb9, 0xd4, 0x2a, 0x4f, 0x2f, 0xb5,
0xca, 0x8f, 0xb1, 0x86, 0x2e, 0x62, 0x0d, 0x3d, 0x89, 0x35, 0xf4, 0x34, 0xd6, 0xd0, 0x9f, 0xb1,
0x86, 0x7e, 0xfe, 0x4b, 0xab, 0x7c, 0x55, 0x2f, 0xf4, 0xfe, 0x17, 0x00, 0x00, 0xff, 0xff, 0xe7,
0xb5, 0x5f, 0xd5, 0xfb, 0x09, 0x00, 0x00,
}

View File

@ -107,13 +107,6 @@ message Initializer {
// The initializer cares about an operation if it matches _any_ Rule.
// Rule.Resources must not include subresources.
repeated Rule rules = 2;
// 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.
optional string failurePolicy = 3;
}
// InitializerConfiguration describes the configuration of initializers.

View File

@ -826,14 +826,13 @@ func (x *Initializer) CodecEncodeSelf(e *codec1978.Encoder) {
} else {
yysep2 := !z.EncBinary()
yy2arr2 := z.EncBasicHandle().StructToArray
var yyq2 [3]bool
var yyq2 [2]bool
_, _, _ = yysep2, yyq2, yy2arr2
const yyr2 bool = false
yyq2[1] = len(x.Rules) != 0
yyq2[2] = x.FailurePolicy != nil
var yynn2 int
if yyr2 || yy2arr2 {
r.EncodeArrayStart(3)
r.EncodeArrayStart(2)
} else {
yynn2 = 1
for _, b := range yyq2 {
@ -896,31 +895,6 @@ func (x *Initializer) CodecEncodeSelf(e *codec1978.Encoder) {
}
}
}
if yyr2 || yy2arr2 {
z.EncSendContainerState(codecSelfer_containerArrayElem1234)
if yyq2[2] {
if x.FailurePolicy == nil {
r.EncodeNil()
} else {
yy10 := *x.FailurePolicy
yy10.CodecEncodeSelf(e)
}
} else {
r.EncodeNil()
}
} else {
if yyq2[2] {
z.EncSendContainerState(codecSelfer_containerMapKey1234)
r.EncodeString(codecSelferC_UTF81234, string("failurePolicy"))
z.EncSendContainerState(codecSelfer_containerMapValue1234)
if x.FailurePolicy == nil {
r.EncodeNil()
} else {
yy12 := *x.FailurePolicy
yy12.CodecEncodeSelf(e)
}
}
}
if yyr2 || yy2arr2 {
z.EncSendContainerState(codecSelfer_containerArrayEnd1234)
} else {
@ -1006,17 +980,6 @@ func (x *Initializer) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) {
h.decSliceRule((*[]Rule)(yyv6), d)
}
}
case "failurePolicy":
if r.TryDecodeAsNil() {
if x.FailurePolicy != nil {
x.FailurePolicy = nil
}
} else {
if x.FailurePolicy == nil {
x.FailurePolicy = new(FailurePolicyType)
}
x.FailurePolicy.CodecDecodeSelf(d)
}
default:
z.DecStructFieldNotFound(-1, yys3)
} // end switch yys3
@ -1028,16 +991,16 @@ func (x *Initializer) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) {
var h codecSelfer1234
z, r := codec1978.GenHelperDecoder(d)
_, _, _ = h, z, r
var yyj9 int
var yyb9 bool
var yyhl9 bool = l >= 0
yyj9++
if yyhl9 {
yyb9 = yyj9 > l
var yyj8 int
var yyb8 bool
var yyhl8 bool = l >= 0
yyj8++
if yyhl8 {
yyb8 = yyj8 > l
} else {
yyb9 = r.CheckBreak()
yyb8 = r.CheckBreak()
}
if yyb9 {
if yyb8 {
z.DecSendContainerState(codecSelfer_containerArrayEnd1234)
return
}
@ -1045,21 +1008,21 @@ func (x *Initializer) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) {
if r.TryDecodeAsNil() {
x.Name = ""
} else {
yyv10 := &x.Name
yym11 := z.DecBinary()
_ = yym11
yyv9 := &x.Name
yym10 := z.DecBinary()
_ = yym10
if false {
} else {
*((*string)(yyv10)) = r.DecodeString()
*((*string)(yyv9)) = r.DecodeString()
}
}
yyj9++
if yyhl9 {
yyb9 = yyj9 > l
yyj8++
if yyhl8 {
yyb8 = yyj8 > l
} else {
yyb9 = r.CheckBreak()
yyb8 = r.CheckBreak()
}
if yyb9 {
if yyb8 {
z.DecSendContainerState(codecSelfer_containerArrayEnd1234)
return
}
@ -1067,47 +1030,26 @@ func (x *Initializer) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) {
if r.TryDecodeAsNil() {
x.Rules = nil
} else {
yyv12 := &x.Rules
yym13 := z.DecBinary()
_ = yym13
yyv11 := &x.Rules
yym12 := z.DecBinary()
_ = yym12
if false {
} else {
h.decSliceRule((*[]Rule)(yyv12), d)
h.decSliceRule((*[]Rule)(yyv11), d)
}
}
yyj9++
if yyhl9 {
yyb9 = yyj9 > l
} else {
yyb9 = r.CheckBreak()
}
if yyb9 {
z.DecSendContainerState(codecSelfer_containerArrayEnd1234)
return
}
z.DecSendContainerState(codecSelfer_containerArrayElem1234)
if r.TryDecodeAsNil() {
if x.FailurePolicy != nil {
x.FailurePolicy = nil
}
} else {
if x.FailurePolicy == nil {
x.FailurePolicy = new(FailurePolicyType)
}
x.FailurePolicy.CodecDecodeSelf(d)
}
for {
yyj9++
if yyhl9 {
yyb9 = yyj9 > l
yyj8++
if yyhl8 {
yyb8 = yyj8 > l
} else {
yyb9 = r.CheckBreak()
yyb8 = r.CheckBreak()
}
if yyb9 {
if yyb8 {
break
}
z.DecSendContainerState(codecSelfer_containerArrayElem1234)
z.DecStructFieldNotFound(yyj9-1, "")
z.DecStructFieldNotFound(yyj8-1, "")
}
z.DecSendContainerState(codecSelfer_containerArrayEnd1234)
}
@ -3443,7 +3385,7 @@ func (x codecSelfer1234) decSliceInitializer(v *[]Initializer, d *codec1978.Deco
yyrg1 := len(yyv1) > 0
yyv21 := yyv1
yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 48)
yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 40)
if yyrt1 {
if yyrl1 <= cap(yyv1) {
yyv1 = yyv1[:yyrl1]

View File

@ -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

View File

@ -70,10 +70,9 @@ func (ExternalAdmissionHookConfigurationList) SwaggerDoc() map[string]string {
}
var map_Initializer = map[string]string{
"": "Initializer describes the name and the failure policy of an initializer, and what resources it applies to.",
"name": "Name is the identifier of the initializer. It will be added to the object that needs to be initialized. Name should be fully qualified, e.g., alwayspullimages.kubernetes.io, where \"alwayspullimages\" is the name of the webhook, and kubernetes.io is the name of the organization. Required",
"rules": "Rules describes what resources/subresources the initializer cares about. The initializer cares about an operation if it matches _any_ Rule. Rule.Resources must not include subresources.",
"failurePolicy": "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.",
"": "Initializer describes the name and the failure policy of an initializer, and what resources it applies to.",
"name": "Name is the identifier of the initializer. It will be added to the object that needs to be initialized. Name should be fully qualified, e.g., alwayspullimages.kubernetes.io, where \"alwayspullimages\" is the name of the webhook, and kubernetes.io is the name of the organization. Required",
"rules": "Rules describes what resources/subresources the initializer cares about. The initializer cares about an operation if it matches _any_ Rule. Rule.Resources must not include subresources.",
}
func (Initializer) SwaggerDoc() map[string]string {

View File

@ -212,15 +212,6 @@ func (in *Initializer) DeepCopyInto(out *Initializer) {
(*in)[i].DeepCopyInto(&(*out)[i])
}
}
if in.FailurePolicy != nil {
in, out := &in.FailurePolicy, &out.FailurePolicy
if *in == nil {
*out = nil
} else {
*out = new(FailurePolicyType)
**out = **in
}
}
return
}