From e7341f4debfa6432ae1ece98047bbcfd1763c3d2 Mon Sep 17 00:00:00 2001 From: Nikhita Raghunath Date: Thu, 8 Feb 2018 08:18:46 +0530 Subject: [PATCH 1/2] Add Categories to CRD spec We can group custom resources into categories i.e. use them with kubectl get all. --- .../pkg/apis/apiextensions/types.go | 3 +++ .../pkg/apis/apiextensions/v1beta1/types.go | 3 +++ .../apis/apiextensions/validation/validation.go | 7 ++++++- .../customresource_discovery_controller.go | 1 + .../pkg/apiserver/customresource_handler.go | 2 +- .../pkg/controller/status/naming_controller.go | 2 ++ .../pkg/registry/customresource/etcd.go | 17 +++++++++++++---- .../pkg/registry/customresource/etcd_test.go | 16 +++++++++++++++- .../test/integration/basic_test.go | 4 ++++ .../test/integration/testserver/resources.go | 1 + 10 files changed, 49 insertions(+), 7 deletions(-) diff --git a/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/types.go b/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/types.go index b7a20d9188..0deb7cbd08 100644 --- a/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/types.go +++ b/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/types.go @@ -49,6 +49,9 @@ type CustomResourceDefinitionNames struct { Kind string // ListKind is the serialized kind of the list for this resource. Defaults to List. ListKind string + // Categories is a list of grouped resources custom resources belong to (e.g. 'all') + // +optional + Categories []string } // ResourceScope is an enum defining the different scopes available to a custom resource diff --git a/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1/types.go b/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1/types.go index 1afa457df2..3a4da9aea8 100644 --- a/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1/types.go +++ b/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1/types.go @@ -53,6 +53,9 @@ type CustomResourceDefinitionNames struct { Kind string `json:"kind" protobuf:"bytes,4,opt,name=kind"` // ListKind is the serialized kind of the list for this resource. Defaults to List. ListKind string `json:"listKind,omitempty" protobuf:"bytes,5,opt,name=listKind"` + // Categories is a list of grouped resources custom resources belong to (e.g. 'all') + // +optional + Categories []string `json:"categories,omitempty" protobuf:"bytes,6,rep,name=categories"` } // ResourceScope is an enum defining the different scopes available to a custom resource diff --git a/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/validation/validation.go b/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/validation/validation.go index afec55cda9..be4a0e34f4 100644 --- a/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/validation/validation.go +++ b/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/validation/validation.go @@ -165,7 +165,6 @@ func ValidateCustomResourceDefinitionNames(names *apiextensions.CustomResourceDe if errs := validationutil.IsDNS1035Label(shortName); len(errs) > 0 { allErrs = append(allErrs, field.Invalid(fldPath.Child("shortNames").Index(i), shortName, strings.Join(errs, ","))) } - } // kind and listKind may not be the same or parsing become ambiguous @@ -173,6 +172,12 @@ func ValidateCustomResourceDefinitionNames(names *apiextensions.CustomResourceDe allErrs = append(allErrs, field.Invalid(fldPath.Child("listKind"), names.ListKind, "kind and listKind may not be the same")) } + for i, category := range names.Categories { + if errs := validationutil.IsDNS1035Label(category); len(errs) > 0 { + allErrs = append(allErrs, field.Invalid(fldPath.Child("categories").Index(i), category, strings.Join(errs, ","))) + } + } + return allErrs } diff --git a/staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/customresource_discovery_controller.go b/staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/customresource_discovery_controller.go index c794517401..b180e105b4 100644 --- a/staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/customresource_discovery_controller.go +++ b/staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/customresource_discovery_controller.go @@ -117,6 +117,7 @@ func (c *DiscoveryController) sync(version schema.GroupVersion) error { Kind: crd.Status.AcceptedNames.Kind, Verbs: verbs, ShortNames: crd.Status.AcceptedNames.ShortNames, + Categories: crd.Status.AcceptedNames.Categories, }) if crd.Spec.Subresources != nil && crd.Spec.Subresources.Status != nil { diff --git a/staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/customresource_handler.go b/staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/customresource_handler.go index dcc185c5f9..40c58e0421 100644 --- a/staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/customresource_handler.go +++ b/staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/customresource_handler.go @@ -459,7 +459,7 @@ func (r *crdHandler) getOrCreateServingInfoFor(crd *apiextensions.CustomResource statusSpec, scaleSpec, ), - r.restOptionsGetter, + r.restOptionsGetter, crd.Status.AcceptedNames.Categories, ) selfLinkPrefix := "" diff --git a/staging/src/k8s.io/apiextensions-apiserver/pkg/controller/status/naming_controller.go b/staging/src/k8s.io/apiextensions-apiserver/pkg/controller/status/naming_controller.go index c0a7cc86f9..16016e493a 100644 --- a/staging/src/k8s.io/apiextensions-apiserver/pkg/controller/status/naming_controller.go +++ b/staging/src/k8s.io/apiextensions-apiserver/pkg/controller/status/naming_controller.go @@ -182,6 +182,8 @@ func (c *NamingConditionController) calculateNamesAndConditions(in *apiextension newNames.ListKind = requestedNames.ListKind } + newNames.Categories = requestedNames.Categories + // if we haven't changed the condition, then our names must be good. if namesAcceptedCondition.Status == apiextensions.ConditionUnknown { namesAcceptedCondition.Status = apiextensions.ConditionTrue diff --git a/staging/src/k8s.io/apiextensions-apiserver/pkg/registry/customresource/etcd.go b/staging/src/k8s.io/apiextensions-apiserver/pkg/registry/customresource/etcd.go index aef806a779..305cee3b66 100644 --- a/staging/src/k8s.io/apiextensions-apiserver/pkg/registry/customresource/etcd.go +++ b/staging/src/k8s.io/apiextensions-apiserver/pkg/registry/customresource/etcd.go @@ -39,8 +39,8 @@ type CustomResourceStorage struct { Scale *ScaleREST } -func NewStorage(resource schema.GroupResource, listKind schema.GroupVersionKind, strategy customResourceStrategy, optsGetter generic.RESTOptionsGetter) CustomResourceStorage { - customResourceREST, customResourceStatusREST := newREST(resource, listKind, strategy, optsGetter) +func NewStorage(resource schema.GroupResource, listKind schema.GroupVersionKind, strategy customResourceStrategy, optsGetter generic.RESTOptionsGetter, categories []string) CustomResourceStorage { + customResourceREST, customResourceStatusREST := newREST(resource, listKind, strategy, optsGetter, categories) customResourceRegistry := NewRegistry(customResourceREST) s := CustomResourceStorage{ @@ -71,10 +71,11 @@ func NewStorage(resource schema.GroupResource, listKind schema.GroupVersionKind, // REST implements a RESTStorage for API services against etcd type REST struct { *genericregistry.Store + categories []string } // newREST returns a RESTStorage object that will work against API services. -func newREST(resource schema.GroupResource, listKind schema.GroupVersionKind, strategy customResourceStrategy, optsGetter generic.RESTOptionsGetter) (*REST, *StatusREST) { +func newREST(resource schema.GroupResource, listKind schema.GroupVersionKind, strategy customResourceStrategy, optsGetter generic.RESTOptionsGetter, categories []string) (*REST, *StatusREST) { store := &genericregistry.Store{ NewFunc: func() runtime.Object { return &unstructured.Unstructured{} }, NewListFunc: func() runtime.Object { @@ -97,7 +98,15 @@ func newREST(resource schema.GroupResource, listKind schema.GroupVersionKind, st statusStore := *store statusStore.UpdateStrategy = NewStatusStrategy(strategy) - return &REST{store}, &StatusREST{store: &statusStore} + return &REST{store, categories}, &StatusREST{store: &statusStore} +} + +// Implement CategoriesProvider +var _ rest.CategoriesProvider = &REST{} + +// Categories implements the CategoriesProvider interface. Returns a list of categories a resource is part of. +func (r *REST) Categories() []string { + return r.categories } // StatusREST implements the REST endpoint for changing the status of a CustomResource diff --git a/staging/src/k8s.io/apiextensions-apiserver/pkg/registry/customresource/etcd_test.go b/staging/src/k8s.io/apiextensions-apiserver/pkg/registry/customresource/etcd_test.go index 6b4bb02e66..f550285451 100644 --- a/staging/src/k8s.io/apiextensions-apiserver/pkg/registry/customresource/etcd_test.go +++ b/staging/src/k8s.io/apiextensions-apiserver/pkg/registry/customresource/etcd_test.go @@ -18,6 +18,7 @@ package customresource_test import ( "io" + "reflect" "strings" "testing" @@ -82,7 +83,7 @@ func newStorage(t *testing.T) (customresource.CustomResourceStorage, *etcdtestin status, scale, ), - restOptions, + restOptions, []string{"all"}, ) return storage, server @@ -153,6 +154,19 @@ func TestDelete(t *testing.T) { test.TestDelete(validNewCustomResource()) } +func TestCategories(t *testing.T) { + storage, server := newStorage(t) + defer server.Terminate(t) + defer storage.CustomResource.Store.DestroyFunc() + + expected := []string{"all"} + actual := storage.CustomResource.Categories() + ok := reflect.DeepEqual(actual, expected) + if !ok { + t.Errorf("categories are not equal. expected = %v actual = %v", expected, actual) + } +} + func TestStatusUpdate(t *testing.T) { storage, server := newStorage(t) defer server.Terminate(t) diff --git a/staging/src/k8s.io/apiextensions-apiserver/test/integration/basic_test.go b/staging/src/k8s.io/apiextensions-apiserver/test/integration/basic_test.go index 2df2076bf0..e373a178a2 100644 --- a/staging/src/k8s.io/apiextensions-apiserver/test/integration/basic_test.go +++ b/staging/src/k8s.io/apiextensions-apiserver/test/integration/basic_test.go @@ -388,6 +388,10 @@ func TestDiscovery(t *testing.T) { if !reflect.DeepEqual([]string(r.Verbs), expectedVerbs) { t.Fatalf("Unexpected verbs for resource \"noxus\" in group version %v/%v via discovery: expected=%v got=%v", group, version, expectedVerbs, r.Verbs) } + + if !reflect.DeepEqual(r.Categories, []string{"all"}) { + t.Fatalf("Expected exactly the category \"all\" in group version %v/%v via discovery, got: %v", group, version, r.Categories) + } } func TestNoNamespaceReject(t *testing.T) { diff --git a/staging/src/k8s.io/apiextensions-apiserver/test/integration/testserver/resources.go b/staging/src/k8s.io/apiextensions-apiserver/test/integration/testserver/resources.go index 9398afd972..bf54e14908 100644 --- a/staging/src/k8s.io/apiextensions-apiserver/test/integration/testserver/resources.go +++ b/staging/src/k8s.io/apiextensions-apiserver/test/integration/testserver/resources.go @@ -72,6 +72,7 @@ func NewNoxuCustomResourceDefinition(scope apiextensionsv1beta1.ResourceScope) * Kind: "WishIHadChosenNoxu", ShortNames: []string{"foo", "bar", "abc", "def"}, ListKind: "NoxuItemList", + Categories: []string{"all"}, }, Scope: scope, }, From 7ac2b3c8f2c4d07be76448ad5aa09eed0ea80b5f Mon Sep 17 00:00:00 2001 From: Nikhita Raghunath Date: Tue, 13 Feb 2018 02:54:23 +0530 Subject: [PATCH 2/2] update generated files --- api/openapi-spec/swagger.json | 7 + .../apiextensions/v1beta1/generated.pb.go | 316 ++++++++++-------- .../apiextensions/v1beta1/generated.proto | 4 + .../v1beta1/zz_generated.conversion.go | 2 + .../v1beta1/zz_generated.deepcopy.go | 5 + .../apiextensions/zz_generated.deepcopy.go | 5 + 6 files changed, 207 insertions(+), 132 deletions(-) diff --git a/api/openapi-spec/swagger.json b/api/openapi-spec/swagger.json index d96a60c778..ccbdf047bb 100644 --- a/api/openapi-spec/swagger.json +++ b/api/openapi-spec/swagger.json @@ -83859,6 +83859,13 @@ "kind" ], "properties": { + "categories": { + "description": "Categories is a list of grouped resources custom resources belong to (e.g. 'all')", + "type": "array", + "items": { + "type": "string" + } + }, "kind": { "description": "Kind is the serialized kind of the resource. It is normally CamelCase and singular.", "type": "string" diff --git a/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1/generated.pb.go b/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1/generated.pb.go index 176a3ce499..e7325da23e 100644 --- a/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1/generated.pb.go +++ b/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1/generated.pb.go @@ -338,6 +338,21 @@ func (m *CustomResourceDefinitionNames) MarshalTo(dAtA []byte) (int, error) { i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.ListKind))) i += copy(dAtA[i:], m.ListKind) + if len(m.Categories) > 0 { + for _, s := range m.Categories { + dAtA[i] = 0x32 + i++ + l = len(s) + for l >= 1<<7 { + dAtA[i] = uint8(uint64(l)&0x7f | 0x80) + l >>= 7 + i++ + } + dAtA[i] = uint8(l) + i++ + i += copy(dAtA[i:], s) + } + } return i, nil } @@ -1228,6 +1243,12 @@ func (m *CustomResourceDefinitionNames) Size() (n int) { n += 1 + l + sovGenerated(uint64(l)) l = len(m.ListKind) n += 1 + l + sovGenerated(uint64(l)) + if len(m.Categories) > 0 { + for _, s := range m.Categories { + l = len(s) + n += 1 + l + sovGenerated(uint64(l)) + } + } return n } @@ -1582,6 +1603,7 @@ func (this *CustomResourceDefinitionNames) String() string { `ShortNames:` + fmt.Sprintf("%v", this.ShortNames) + `,`, `Kind:` + fmt.Sprintf("%v", this.Kind) + `,`, `ListKind:` + fmt.Sprintf("%v", this.ListKind) + `,`, + `Categories:` + fmt.Sprintf("%v", this.Categories) + `,`, `}`, }, "") return s @@ -2422,6 +2444,35 @@ func (m *CustomResourceDefinitionNames) Unmarshal(dAtA []byte) error { } m.ListKind = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Categories", 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 + } + m.Categories = append(m.Categories, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipGenerated(dAtA[iNdEx:]) @@ -5190,136 +5241,137 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 2081 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x58, 0xdb, 0x6f, 0x5b, 0x49, - 0x19, 0xcf, 0xd8, 0xb9, 0x4e, 0x92, 0x4d, 0x32, 0x6d, 0xca, 0x69, 0x68, 0xed, 0xc4, 0xcb, 0xae, - 0x02, 0x6c, 0x6d, 0xba, 0x17, 0x76, 0x41, 0xe2, 0x21, 0x6e, 0x02, 0xea, 0x92, 0x34, 0xd1, 0xb8, - 0x2d, 0x82, 0xbd, 0x4e, 0x8e, 0xc7, 0xce, 0x34, 0xe7, 0xd6, 0x33, 0x73, 0xdc, 0x44, 0x02, 0xc4, - 0x45, 0x2b, 0x24, 0x24, 0x2e, 0x82, 0xbe, 0x20, 0xf1, 0x02, 0x8f, 0x08, 0xc1, 0x03, 0x3c, 0xf2, - 0xc8, 0x43, 0x1f, 0x57, 0xe2, 0x65, 0x9f, 0x2c, 0x6a, 0xfe, 0x05, 0x10, 0x52, 0x9e, 0x56, 0x73, - 0x39, 0x37, 0x3b, 0xde, 0xad, 0xb4, 0x76, 0xfb, 0xe6, 0xf3, 0xdd, 0x7e, 0xbf, 0xf9, 0xe6, 0x9b, - 0x6f, 0xbe, 0x31, 0x6c, 0x1d, 0xbf, 0xc1, 0xab, 0xcc, 0xaf, 0x1d, 0x47, 0x87, 0x34, 0xf4, 0xa8, - 0xa0, 0xbc, 0xd6, 0xa1, 0x5e, 0xd3, 0x0f, 0x6b, 0x46, 0x41, 0x02, 0x46, 0x4f, 0x04, 0xf5, 0x38, - 0xf3, 0x3d, 0x7e, 0x8d, 0x04, 0x8c, 0xd3, 0xb0, 0x43, 0xc3, 0x5a, 0x70, 0xdc, 0x96, 0x3a, 0x9e, - 0x37, 0xa8, 0x75, 0xae, 0x1f, 0x52, 0x41, 0xae, 0xd7, 0xda, 0xd4, 0xa3, 0x21, 0x11, 0xb4, 0x59, - 0x0d, 0x42, 0x5f, 0xf8, 0xe8, 0x1b, 0x3a, 0x5c, 0x35, 0x67, 0xfd, 0x5e, 0x12, 0xae, 0x1a, 0x1c, - 0xb7, 0xa5, 0x8e, 0xe7, 0x0d, 0xaa, 0x26, 0xdc, 0xda, 0xb5, 0x36, 0x13, 0x47, 0xd1, 0x61, 0xd5, - 0xf6, 0xdd, 0x5a, 0xdb, 0x6f, 0xfb, 0x35, 0x15, 0xf5, 0x30, 0x6a, 0xa9, 0x2f, 0xf5, 0xa1, 0x7e, - 0x69, 0xb4, 0xb5, 0x57, 0x53, 0xf2, 0x2e, 0xb1, 0x8f, 0x98, 0x47, 0xc3, 0xd3, 0x94, 0xb1, 0x4b, - 0x05, 0xa9, 0x75, 0x06, 0x38, 0xae, 0xd5, 0x86, 0x79, 0x85, 0x91, 0x27, 0x98, 0x4b, 0x07, 0x1c, - 0xbe, 0xfa, 0x69, 0x0e, 0xdc, 0x3e, 0xa2, 0x2e, 0x19, 0xf0, 0x7b, 0x65, 0x98, 0x5f, 0x24, 0x98, - 0x53, 0x63, 0x9e, 0xe0, 0x22, 0xec, 0x77, 0xaa, 0xfc, 0xb4, 0x08, 0xad, 0x1b, 0x11, 0x17, 0xbe, - 0x8b, 0x29, 0xf7, 0xa3, 0xd0, 0xa6, 0xdb, 0xb4, 0xc5, 0x3c, 0x26, 0x98, 0xef, 0xa1, 0xf7, 0xe1, - 0xac, 0x5c, 0x55, 0x93, 0x08, 0x62, 0x81, 0x75, 0xb0, 0x39, 0xff, 0xf2, 0x57, 0xaa, 0x69, 0xc6, - 0x13, 0x90, 0x34, 0xcd, 0xd2, 0xba, 0xda, 0xb9, 0x5e, 0xdd, 0x3f, 0xbc, 0x47, 0x6d, 0xb1, 0x47, - 0x05, 0xa9, 0xa3, 0x47, 0xdd, 0xf2, 0x44, 0xaf, 0x5b, 0x86, 0xa9, 0x0c, 0x27, 0x51, 0xd1, 0x0f, - 0xe0, 0x24, 0x0f, 0xa8, 0x6d, 0x15, 0x54, 0xf4, 0xb7, 0xaa, 0x9f, 0x69, 0x3f, 0xab, 0xc3, 0x16, - 0xd2, 0x08, 0xa8, 0x5d, 0x5f, 0x30, 0x44, 0x26, 0xe5, 0x17, 0x56, 0xb0, 0xe8, 0x03, 0x00, 0xa7, - 0xb9, 0x20, 0x22, 0xe2, 0x56, 0x51, 0x31, 0x78, 0x67, 0x5c, 0x0c, 0x14, 0x48, 0xfd, 0x39, 0xc3, - 0x61, 0x5a, 0x7f, 0x63, 0x03, 0x5e, 0xf9, 0x6f, 0x01, 0x6e, 0x0c, 0x73, 0xbd, 0xe1, 0x7b, 0x4d, - 0xbd, 0x1d, 0x37, 0xe1, 0xa4, 0x38, 0x0d, 0xa8, 0xda, 0x8a, 0xb9, 0xfa, 0x6b, 0xf1, 0x7a, 0x6e, - 0x9f, 0x06, 0xf4, 0xac, 0x5b, 0x7e, 0xe1, 0x53, 0x03, 0x48, 0x43, 0xac, 0x42, 0xa0, 0xaf, 0x25, - 0xeb, 0x2e, 0xa8, 0x60, 0x1b, 0x79, 0x62, 0x67, 0xdd, 0xf2, 0x52, 0xe2, 0x96, 0xe7, 0x8a, 0x3a, - 0x10, 0x39, 0x84, 0x8b, 0xdb, 0x21, 0xf1, 0xb8, 0x0e, 0xcb, 0x5c, 0x6a, 0xd2, 0xf7, 0xa5, 0x27, - 0x2b, 0x0f, 0xe9, 0x51, 0x5f, 0x33, 0x90, 0x68, 0x77, 0x20, 0x1a, 0x3e, 0x07, 0x01, 0xbd, 0x08, - 0xa7, 0x43, 0x4a, 0xb8, 0xef, 0x59, 0x93, 0x8a, 0x72, 0x92, 0x4b, 0xac, 0xa4, 0xd8, 0x68, 0xd1, - 0x17, 0xe1, 0x8c, 0x4b, 0x39, 0x27, 0x6d, 0x6a, 0x4d, 0x29, 0xc3, 0x25, 0x63, 0x38, 0xb3, 0xa7, - 0xc5, 0x38, 0xd6, 0x57, 0xce, 0x00, 0xbc, 0x32, 0x2c, 0x6b, 0xbb, 0x8c, 0x0b, 0xf4, 0xf6, 0xc0, - 0x01, 0xa8, 0x3e, 0xd9, 0x0a, 0xa5, 0xb7, 0x2a, 0xff, 0x65, 0x03, 0x3e, 0x1b, 0x4b, 0x32, 0xc5, - 0xff, 0x7d, 0x38, 0xc5, 0x04, 0x75, 0xe5, 0x1e, 0x14, 0x37, 0xe7, 0x5f, 0xfe, 0xce, 0x98, 0x6a, - 0xaf, 0xbe, 0x68, 0x38, 0x4c, 0xdd, 0x94, 0x68, 0x58, 0x83, 0x56, 0xfe, 0x07, 0xe0, 0xd5, 0x61, - 0x2e, 0xb7, 0x88, 0x4b, 0xb9, 0xcc, 0x78, 0xe0, 0x44, 0x21, 0x71, 0x4c, 0xc5, 0x25, 0x19, 0x3f, - 0x50, 0x52, 0x6c, 0xb4, 0xe8, 0x25, 0x38, 0xcb, 0x99, 0xd7, 0x8e, 0x1c, 0x12, 0x9a, 0x72, 0x4a, - 0x56, 0xdd, 0x30, 0x72, 0x9c, 0x58, 0xa0, 0x2a, 0x84, 0xfc, 0xc8, 0x0f, 0x85, 0xc2, 0xb0, 0x8a, - 0xeb, 0x45, 0x19, 0x59, 0x36, 0x88, 0x46, 0x22, 0xc5, 0x19, 0x0b, 0xb4, 0x0e, 0x27, 0x8f, 0x99, - 0xd7, 0x34, 0xbb, 0x9e, 0x9c, 0xe2, 0x6f, 0x33, 0xaf, 0x89, 0x95, 0x46, 0xe2, 0x3b, 0x8c, 0x0b, - 0x29, 0x31, 0x5b, 0x9e, 0xcb, 0xba, 0xb2, 0x4c, 0x2c, 0x2a, 0xff, 0x9c, 0x1c, 0xbe, 0xe9, 0xb2, - 0x35, 0xa0, 0xe7, 0xe1, 0x54, 0x3b, 0xf4, 0xa3, 0xc0, 0xac, 0x3a, 0xc9, 0xde, 0xb7, 0xa4, 0x10, - 0x6b, 0x9d, 0xac, 0xb2, 0x0e, 0x0d, 0xe5, 0x06, 0x98, 0x25, 0x27, 0x55, 0x76, 0x57, 0x8b, 0x71, - 0xac, 0x47, 0x3f, 0x06, 0x70, 0xca, 0x33, 0x8b, 0x95, 0x25, 0xf4, 0xf6, 0x98, 0xf6, 0x59, 0xa5, - 0x2b, 0xa5, 0xab, 0x33, 0xa9, 0x91, 0xd1, 0xab, 0x70, 0x8a, 0xdb, 0x7e, 0x40, 0x4d, 0x16, 0x4b, - 0xb1, 0x51, 0x43, 0x0a, 0xcf, 0xba, 0xe5, 0xc5, 0x38, 0x9c, 0x12, 0x60, 0x6d, 0x8c, 0x7e, 0x06, - 0x20, 0xec, 0x10, 0x87, 0x35, 0x89, 0x8c, 0xaf, 0x72, 0x3b, 0xea, 0x32, 0xbd, 0x9b, 0x84, 0xd7, - 0x45, 0x90, 0x7e, 0xe3, 0x0c, 0x34, 0xfa, 0x15, 0x80, 0x0b, 0x3c, 0x3a, 0x0c, 0x8d, 0x17, 0xb7, - 0xa6, 0x15, 0x97, 0xef, 0x8e, 0x94, 0x4b, 0x23, 0x03, 0x50, 0x5f, 0xee, 0x75, 0xcb, 0x0b, 0x59, - 0x09, 0xce, 0x11, 0xa8, 0xfc, 0xab, 0x00, 0x4b, 0x9f, 0xdc, 0xed, 0xd1, 0x43, 0x00, 0xa1, 0x1d, - 0x77, 0x51, 0x6e, 0x01, 0x75, 0xca, 0xdf, 0x1f, 0xd3, 0xee, 0x27, 0xed, 0x3a, 0xbd, 0x71, 0x13, - 0x11, 0xc7, 0x19, 0x1e, 0xe8, 0x77, 0x00, 0x2e, 0x12, 0xdb, 0xa6, 0x81, 0xa0, 0x4d, 0x7d, 0x08, - 0x0b, 0x4f, 0xa1, 0x2e, 0x57, 0x0d, 0xab, 0xc5, 0xad, 0x2c, 0x34, 0xce, 0x33, 0xa9, 0xfc, 0x1f, - 0xf4, 0x67, 0x35, 0xb3, 0x05, 0x0d, 0x9b, 0x38, 0x14, 0x6d, 0xc3, 0x65, 0x79, 0x77, 0x63, 0x1a, - 0x38, 0xcc, 0x26, 0xfc, 0x80, 0x88, 0x23, 0x73, 0x52, 0x2d, 0x03, 0xb1, 0xdc, 0xe8, 0xd3, 0xe3, - 0x01, 0x0f, 0xf4, 0x26, 0x44, 0xfa, 0x3e, 0xcb, 0xc5, 0xd1, 0x47, 0x39, 0xb9, 0x99, 0x1a, 0x03, - 0x16, 0xf8, 0x1c, 0x2f, 0x74, 0x03, 0xae, 0x38, 0xe4, 0x90, 0x3a, 0x0d, 0xea, 0x50, 0x5b, 0xf8, - 0xa1, 0x0a, 0x55, 0x54, 0xa1, 0x56, 0x7b, 0xdd, 0xf2, 0xca, 0x6e, 0xbf, 0x12, 0x0f, 0xda, 0x57, - 0x36, 0x60, 0x79, 0xf8, 0xc2, 0xf5, 0x94, 0xf0, 0x87, 0x02, 0x5c, 0x1b, 0x5e, 0xb1, 0xe8, 0x27, - 0xe9, 0x30, 0xa3, 0xef, 0xaa, 0x77, 0xc7, 0x75, 0x3a, 0xcc, 0x34, 0x03, 0x07, 0x27, 0x19, 0xf4, - 0x43, 0xd9, 0x68, 0x88, 0x43, 0x4d, 0x4d, 0xbd, 0x33, 0x36, 0x0a, 0x12, 0xa4, 0x3e, 0xa7, 0x7b, - 0x18, 0x71, 0x54, 0xcb, 0x22, 0x0e, 0xad, 0xfc, 0x09, 0xf4, 0xcf, 0xb3, 0x69, 0x47, 0x41, 0xbf, - 0x00, 0x70, 0xc9, 0x0f, 0xa8, 0xb7, 0x75, 0x70, 0xf3, 0xee, 0x2b, 0x0d, 0x35, 0x45, 0x9b, 0x54, - 0xdd, 0xfa, 0x8c, 0x3c, 0xdf, 0x6c, 0xec, 0xdf, 0xd2, 0x01, 0x0f, 0x42, 0x3f, 0xe0, 0xf5, 0x0b, - 0xbd, 0x6e, 0x79, 0x69, 0x3f, 0x0f, 0x85, 0xfb, 0xb1, 0x2b, 0x2e, 0x5c, 0xdd, 0x39, 0x11, 0x34, - 0xf4, 0x88, 0xb3, 0xed, 0xdb, 0x91, 0x4b, 0x3d, 0xa1, 0x89, 0xbe, 0x06, 0xe7, 0x9b, 0x94, 0xdb, - 0x21, 0x0b, 0x54, 0xe3, 0xd5, 0xe5, 0x7d, 0xc1, 0x94, 0xe5, 0xfc, 0x76, 0xaa, 0xc2, 0x59, 0x3b, - 0x74, 0x15, 0x16, 0xa3, 0xd0, 0x31, 0x55, 0x3c, 0x6f, 0xcc, 0x8b, 0x77, 0xf0, 0x2e, 0x96, 0xf2, - 0xca, 0x06, 0x9c, 0x94, 0x3c, 0xd1, 0x65, 0x58, 0x0c, 0xc9, 0x03, 0x15, 0x75, 0xa1, 0x3e, 0x23, - 0x4d, 0x30, 0x79, 0x80, 0xa5, 0xac, 0xf2, 0xe7, 0x2b, 0x70, 0xa9, 0x6f, 0x2d, 0x68, 0x0d, 0x16, - 0x58, 0xd3, 0x70, 0x80, 0x26, 0x68, 0xe1, 0xe6, 0x36, 0x2e, 0xb0, 0x26, 0x7a, 0x1d, 0x4e, 0xeb, - 0xd7, 0x88, 0x01, 0x2d, 0x27, 0x73, 0xa4, 0x92, 0xca, 0x9b, 0x25, 0x0d, 0x27, 0x89, 0x18, 0x73, - 0xc5, 0x81, 0xb6, 0xcc, 0x29, 0xd1, 0x1c, 0x68, 0x0b, 0x4b, 0x59, 0xff, 0xe2, 0x27, 0x9f, 0x70, - 0xf1, 0xeb, 0x66, 0x3a, 0x9e, 0xca, 0xcf, 0x09, 0x99, 0xa1, 0xf7, 0x45, 0x38, 0xdd, 0xf2, 0x43, - 0x97, 0x08, 0x75, 0x7b, 0x64, 0xe6, 0x99, 0x6f, 0x2a, 0x29, 0x36, 0x5a, 0x39, 0x00, 0x08, 0x26, - 0x1c, 0x6a, 0xcd, 0xe4, 0x07, 0x80, 0xdb, 0x52, 0x88, 0xb5, 0x0e, 0xdd, 0x83, 0x33, 0x4d, 0xda, - 0x22, 0x91, 0x23, 0xac, 0x59, 0x55, 0x42, 0x37, 0x46, 0x50, 0x42, 0xf5, 0x79, 0x39, 0x41, 0x6c, - 0xeb, 0xb8, 0x38, 0x06, 0x40, 0x2f, 0xc0, 0x19, 0x97, 0x9c, 0x30, 0x37, 0x72, 0xad, 0xb9, 0x75, - 0xb0, 0x09, 0xb4, 0xd9, 0x9e, 0x16, 0xe1, 0x58, 0x27, 0x3b, 0x23, 0x3d, 0xb1, 0x9d, 0x88, 0xb3, - 0x0e, 0x35, 0x4a, 0x0b, 0xae, 0x83, 0xcd, 0xd9, 0xb4, 0x33, 0xee, 0xf4, 0xe9, 0xf1, 0x80, 0x87, - 0x02, 0x63, 0x9e, 0x72, 0x9e, 0xcf, 0x80, 0x69, 0x11, 0x8e, 0x75, 0x79, 0x30, 0x63, 0xbf, 0x30, - 0x0c, 0xcc, 0x38, 0x0f, 0x78, 0xa0, 0x2f, 0xc3, 0x39, 0x97, 0x9c, 0xec, 0x52, 0xaf, 0x2d, 0x8e, - 0xac, 0xc5, 0x75, 0xb0, 0x59, 0xac, 0x2f, 0xf6, 0xba, 0xe5, 0xb9, 0xbd, 0x58, 0x88, 0x53, 0xbd, - 0x32, 0x66, 0x9e, 0x31, 0x7e, 0x2e, 0x63, 0x1c, 0x0b, 0x71, 0xaa, 0x97, 0x03, 0x5a, 0x40, 0x84, - 0x3c, 0x5c, 0xd6, 0x52, 0x7e, 0x40, 0x3b, 0xd0, 0x62, 0x1c, 0xeb, 0xd1, 0x26, 0x9c, 0x75, 0xc9, - 0x89, 0x1a, 0x8e, 0xad, 0x65, 0x15, 0x76, 0x41, 0xce, 0x8e, 0x7b, 0x46, 0x86, 0x13, 0xad, 0xb2, - 0x64, 0x9e, 0xb6, 0x5c, 0xc9, 0x58, 0x1a, 0x19, 0x4e, 0xb4, 0xb2, 0x88, 0x23, 0x8f, 0xdd, 0x8f, - 0xa8, 0x36, 0x46, 0x2a, 0x33, 0x49, 0x11, 0xdf, 0x49, 0x55, 0x38, 0x6b, 0x27, 0x87, 0x63, 0x37, - 0x72, 0x04, 0x0b, 0x1c, 0xba, 0xdf, 0xb2, 0x2e, 0xa8, 0xfc, 0xab, 0xb9, 0x68, 0x2f, 0x91, 0xe2, - 0x8c, 0x05, 0xa2, 0x70, 0x92, 0x7a, 0x91, 0x6b, 0x5d, 0x54, 0xb3, 0xc5, 0x48, 0x4a, 0x30, 0x39, - 0x39, 0x3b, 0x5e, 0xe4, 0x62, 0x15, 0x1e, 0xbd, 0x0e, 0x17, 0x5d, 0x72, 0x22, 0xdb, 0x01, 0x0d, - 0x05, 0xa3, 0xdc, 0x5a, 0x55, 0x8b, 0x5f, 0x91, 0xf7, 0xf9, 0x5e, 0x56, 0x81, 0xf3, 0x76, 0xca, - 0x91, 0x79, 0x19, 0xc7, 0x4b, 0x19, 0xc7, 0xac, 0x02, 0xe7, 0xed, 0x64, 0xa6, 0x43, 0x7a, 0x3f, - 0x62, 0x21, 0x6d, 0x5a, 0x9f, 0x53, 0x6f, 0x04, 0x95, 0x69, 0x6c, 0x64, 0x38, 0xd1, 0xa2, 0x4e, - 0xfc, 0x8a, 0xb2, 0xd4, 0x31, 0xbc, 0x33, 0xda, 0x4e, 0xbe, 0x1f, 0x6e, 0x85, 0x21, 0x39, 0xd5, - 0x37, 0x4d, 0xf6, 0xfd, 0x84, 0x38, 0x9c, 0x22, 0x8e, 0xb3, 0xdf, 0xb2, 0x2e, 0xab, 0xdc, 0x8f, - 0xfa, 0x06, 0x49, 0xba, 0xce, 0x96, 0x04, 0xc1, 0x1a, 0x4b, 0x82, 0xfa, 0x9e, 0x2c, 0x8d, 0xb5, - 0xf1, 0x82, 0xee, 0x4b, 0x10, 0xac, 0xb1, 0xd4, 0x4a, 0xbd, 0xd3, 0xfd, 0x96, 0xf5, 0xf9, 0x31, - 0xaf, 0x54, 0x82, 0x60, 0x8d, 0x85, 0x18, 0x2c, 0x7a, 0xbe, 0xb0, 0xae, 0x8c, 0xe5, 0x7a, 0x56, - 0x17, 0xce, 0x2d, 0x5f, 0x60, 0x89, 0x81, 0x7e, 0x03, 0x20, 0x0c, 0xd2, 0x12, 0xbd, 0xaa, 0x56, - 0xf9, 0xee, 0x68, 0x21, 0xab, 0x69, 0x6d, 0xef, 0x78, 0x22, 0x3c, 0x4d, 0xa7, 0xf4, 0xcc, 0x19, - 0xc8, 0xb0, 0x40, 0x7f, 0x04, 0xf0, 0x22, 0x69, 0xea, 0x99, 0x9d, 0x38, 0x99, 0x13, 0x54, 0x52, - 0x19, 0xb9, 0x3d, 0xea, 0x32, 0xaf, 0xfb, 0xbe, 0x53, 0xb7, 0x7a, 0xdd, 0xf2, 0xc5, 0xad, 0x73, - 0x50, 0xf1, 0xb9, 0x5c, 0xd0, 0x5f, 0x00, 0x5c, 0x31, 0x5d, 0x34, 0xc3, 0xb0, 0xac, 0x12, 0x48, - 0x47, 0x9d, 0xc0, 0x7e, 0x1c, 0x9d, 0xc7, 0xcb, 0x26, 0x8f, 0x2b, 0x03, 0x7a, 0x3c, 0x48, 0x0d, - 0xfd, 0x1d, 0xc0, 0x85, 0x26, 0x0d, 0xa8, 0xd7, 0xa4, 0x9e, 0x2d, 0xb9, 0xae, 0x8f, 0xe4, 0x51, - 0xd6, 0xcf, 0x75, 0x3b, 0x03, 0xa1, 0x69, 0x56, 0x0d, 0xcd, 0x85, 0xac, 0xea, 0xac, 0x5b, 0xbe, - 0x94, 0xba, 0x66, 0x35, 0x38, 0xc7, 0x12, 0xfd, 0x16, 0xc0, 0xa5, 0x74, 0x03, 0xf4, 0x95, 0xb2, - 0x31, 0xc6, 0x3a, 0x50, 0xe3, 0xeb, 0x56, 0x1e, 0x10, 0xf7, 0x33, 0x40, 0x7f, 0x05, 0x72, 0x52, - 0x8b, 0x9f, 0x79, 0xdc, 0xaa, 0xa8, 0x5c, 0xbe, 0x37, 0xf2, 0x5c, 0x26, 0x08, 0x3a, 0x95, 0x2f, - 0xa5, 0xa3, 0x60, 0xa2, 0x39, 0xeb, 0x96, 0x57, 0xb3, 0x99, 0x4c, 0x14, 0x38, 0xcb, 0x10, 0xfd, - 0x1c, 0xc0, 0x05, 0x9a, 0x4e, 0xdc, 0xdc, 0x7a, 0x7e, 0x24, 0x49, 0x3c, 0x77, 0x88, 0xd7, 0xff, - 0x20, 0x64, 0x54, 0x1c, 0xe7, 0xb0, 0xe5, 0x04, 0x49, 0x4f, 0x88, 0x1b, 0x38, 0xd4, 0xfa, 0xc2, - 0x88, 0x27, 0xc8, 0x1d, 0x1d, 0x17, 0xc7, 0x00, 0x6b, 0xf2, 0xe5, 0xd3, 0x77, 0x72, 0xd0, 0x32, - 0x2c, 0x1e, 0xd3, 0x53, 0x3d, 0xd8, 0x63, 0xf9, 0x13, 0x35, 0xe1, 0x54, 0x87, 0x38, 0x51, 0xfc, - 0x78, 0x1b, 0x71, 0xd7, 0xc5, 0x3a, 0xf8, 0xd7, 0x0b, 0x6f, 0x80, 0xb5, 0x87, 0x00, 0x5e, 0x3a, - 0xff, 0x40, 0x3f, 0x53, 0x5a, 0xbf, 0x07, 0x70, 0x65, 0xe0, 0xec, 0x9e, 0xc3, 0xe8, 0x7e, 0x9e, - 0xd1, 0x5b, 0xa3, 0x3e, 0x84, 0x0d, 0x11, 0x32, 0xaf, 0xad, 0x26, 0x8f, 0x2c, 0xbd, 0x5f, 0x02, - 0xb8, 0xdc, 0x7f, 0x1c, 0x9e, 0x65, 0xbe, 0x2a, 0x0f, 0x0b, 0xf0, 0xd2, 0xf9, 0x03, 0x13, 0x0a, - 0x93, 0x97, 0xe1, 0x78, 0x5e, 0xd8, 0x30, 0x7d, 0x65, 0x26, 0x8f, 0xca, 0x0f, 0x00, 0x9c, 0xbf, - 0x97, 0xd8, 0xc5, 0xff, 0xab, 0x8f, 0xfc, 0x6d, 0x1f, 0xf7, 0x9f, 0x54, 0xc1, 0x71, 0x16, 0xb7, - 0xf2, 0x37, 0x00, 0x57, 0xcf, 0x6d, 0xac, 0xf2, 0x09, 0x4a, 0x1c, 0xc7, 0x7f, 0xa0, 0xff, 0xa2, - 0x99, 0x4d, 0x9f, 0xa0, 0x5b, 0x4a, 0x8a, 0x8d, 0x36, 0x93, 0xbd, 0xc2, 0xd3, 0xca, 0x5e, 0xe5, - 0x1f, 0x00, 0x5e, 0xf9, 0xa4, 0x4a, 0x7c, 0x26, 0x5b, 0xba, 0x09, 0x67, 0xcd, 0x50, 0x74, 0xaa, - 0xb6, 0xd3, 0xbc, 0x03, 0x4c, 0xd3, 0x38, 0xc5, 0x89, 0xb6, 0x7e, 0xed, 0xd1, 0xe3, 0xd2, 0xc4, - 0x87, 0x8f, 0x4b, 0x13, 0x1f, 0x3d, 0x2e, 0x4d, 0xfc, 0xa8, 0x57, 0x02, 0x8f, 0x7a, 0x25, 0xf0, - 0x61, 0xaf, 0x04, 0x3e, 0xea, 0x95, 0xc0, 0xbf, 0x7b, 0x25, 0xf0, 0xeb, 0xff, 0x94, 0x26, 0xbe, - 0x37, 0x63, 0xc0, 0x3f, 0x0e, 0x00, 0x00, 0xff, 0xff, 0x35, 0x69, 0x71, 0xa6, 0xa3, 0x1e, 0x00, - 0x00, + // 2102 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x58, 0xcb, 0x6f, 0x63, 0x49, + 0xd5, 0x4f, 0xd9, 0x79, 0x56, 0x92, 0x49, 0x52, 0xdd, 0xe9, 0xef, 0x76, 0xbe, 0x6e, 0x3b, 0xf1, + 0x30, 0xa3, 0x00, 0xd3, 0x36, 0x3d, 0x0f, 0x66, 0x40, 0x62, 0x11, 0x27, 0x01, 0xf5, 0x90, 0x74, + 0xa2, 0x72, 0x77, 0x23, 0x98, 0x67, 0xe5, 0xba, 0xec, 0x54, 0xe7, 0xbe, 0xfa, 0x56, 0x5d, 0x77, + 0x22, 0x01, 0xe2, 0xa1, 0x11, 0x12, 0x12, 0x0f, 0x41, 0x6f, 0x90, 0xd8, 0x80, 0xc4, 0x06, 0x21, + 0x58, 0xc0, 0x92, 0x25, 0x8b, 0x5e, 0x8e, 0xc4, 0x66, 0x56, 0x16, 0x6d, 0xfe, 0x05, 0x24, 0xa4, + 0xac, 0x50, 0x3d, 0xee, 0xcb, 0x8e, 0x67, 0x5a, 0x1a, 0x7b, 0x7a, 0xe7, 0x7b, 0x5e, 0xbf, 0x5f, + 0x9d, 0x3a, 0x75, 0xea, 0x94, 0x61, 0xeb, 0xe4, 0x0d, 0x5e, 0x65, 0x7e, 0xed, 0x24, 0x3a, 0xa2, + 0xa1, 0x47, 0x05, 0xe5, 0xb5, 0x0e, 0xf5, 0x9a, 0x7e, 0x58, 0x33, 0x0a, 0x12, 0x30, 0x7a, 0x2a, + 0xa8, 0xc7, 0x99, 0xef, 0xf1, 0x1b, 0x24, 0x60, 0x9c, 0x86, 0x1d, 0x1a, 0xd6, 0x82, 0x93, 0xb6, + 0xd4, 0xf1, 0xbc, 0x41, 0xad, 0x73, 0xf3, 0x88, 0x0a, 0x72, 0xb3, 0xd6, 0xa6, 0x1e, 0x0d, 0x89, + 0xa0, 0xcd, 0x6a, 0x10, 0xfa, 0xc2, 0x47, 0x5f, 0xd3, 0xe1, 0xaa, 0x39, 0xeb, 0xf7, 0x92, 0x70, + 0xd5, 0xe0, 0xa4, 0x2d, 0x75, 0x3c, 0x6f, 0x50, 0x35, 0xe1, 0xd6, 0x6e, 0xb4, 0x99, 0x38, 0x8e, + 0x8e, 0xaa, 0xb6, 0xef, 0xd6, 0xda, 0x7e, 0xdb, 0xaf, 0xa9, 0xa8, 0x47, 0x51, 0x4b, 0x7d, 0xa9, + 0x0f, 0xf5, 0x4b, 0xa3, 0xad, 0xbd, 0x9a, 0x92, 0x77, 0x89, 0x7d, 0xcc, 0x3c, 0x1a, 0x9e, 0xa5, + 0x8c, 0x5d, 0x2a, 0x48, 0xad, 0x33, 0xc0, 0x71, 0xad, 0x36, 0xcc, 0x2b, 0x8c, 0x3c, 0xc1, 0x5c, + 0x3a, 0xe0, 0xf0, 0xe5, 0x4f, 0x72, 0xe0, 0xf6, 0x31, 0x75, 0xc9, 0x80, 0xdf, 0x2b, 0xc3, 0xfc, + 0x22, 0xc1, 0x9c, 0x1a, 0xf3, 0x04, 0x17, 0x61, 0xbf, 0x53, 0xe5, 0xc7, 0x45, 0x68, 0x6d, 0x47, + 0x5c, 0xf8, 0x2e, 0xa6, 0xdc, 0x8f, 0x42, 0x9b, 0xee, 0xd0, 0x16, 0xf3, 0x98, 0x60, 0xbe, 0x87, + 0xde, 0x87, 0xb3, 0x72, 0x55, 0x4d, 0x22, 0x88, 0x05, 0xd6, 0xc1, 0xe6, 0xfc, 0xcb, 0x5f, 0xaa, + 0xa6, 0x19, 0x4f, 0x40, 0xd2, 0x34, 0x4b, 0xeb, 0x6a, 0xe7, 0x66, 0xf5, 0xe0, 0xe8, 0x3e, 0xb5, + 0xc5, 0x3e, 0x15, 0xa4, 0x8e, 0x1e, 0x77, 0xcb, 0x13, 0xbd, 0x6e, 0x19, 0xa6, 0x32, 0x9c, 0x44, + 0x45, 0xdf, 0x83, 0x93, 0x3c, 0xa0, 0xb6, 0x55, 0x50, 0xd1, 0xdf, 0xaa, 0x7e, 0xaa, 0xfd, 0xac, + 0x0e, 0x5b, 0x48, 0x23, 0xa0, 0x76, 0x7d, 0xc1, 0x10, 0x99, 0x94, 0x5f, 0x58, 0xc1, 0xa2, 0x0f, + 0x00, 0x9c, 0xe6, 0x82, 0x88, 0x88, 0x5b, 0x45, 0xc5, 0xe0, 0x9d, 0x71, 0x31, 0x50, 0x20, 0xf5, + 0xe7, 0x0c, 0x87, 0x69, 0xfd, 0x8d, 0x0d, 0x78, 0xe5, 0x3f, 0x05, 0xb8, 0x31, 0xcc, 0x75, 0xdb, + 0xf7, 0x9a, 0x7a, 0x3b, 0x6e, 0xc1, 0x49, 0x71, 0x16, 0x50, 0xb5, 0x15, 0x73, 0xf5, 0xd7, 0xe2, + 0xf5, 0xdc, 0x39, 0x0b, 0xe8, 0x79, 0xb7, 0xfc, 0xc2, 0x27, 0x06, 0x90, 0x86, 0x58, 0x85, 0x40, + 0x5f, 0x49, 0xd6, 0x5d, 0x50, 0xc1, 0x36, 0xf2, 0xc4, 0xce, 0xbb, 0xe5, 0xa5, 0xc4, 0x2d, 0xcf, + 0x15, 0x75, 0x20, 0x72, 0x08, 0x17, 0x77, 0x42, 0xe2, 0x71, 0x1d, 0x96, 0xb9, 0xd4, 0xa4, 0xef, + 0x0b, 0x4f, 0x57, 0x1e, 0xd2, 0xa3, 0xbe, 0x66, 0x20, 0xd1, 0xde, 0x40, 0x34, 0x7c, 0x01, 0x02, + 0x7a, 0x11, 0x4e, 0x87, 0x94, 0x70, 0xdf, 0xb3, 0x26, 0x15, 0xe5, 0x24, 0x97, 0x58, 0x49, 0xb1, + 0xd1, 0xa2, 0xcf, 0xc3, 0x19, 0x97, 0x72, 0x4e, 0xda, 0xd4, 0x9a, 0x52, 0x86, 0x4b, 0xc6, 0x70, + 0x66, 0x5f, 0x8b, 0x71, 0xac, 0xaf, 0x9c, 0x03, 0x78, 0x6d, 0x58, 0xd6, 0xf6, 0x18, 0x17, 0xe8, + 0xed, 0x81, 0x03, 0x50, 0x7d, 0xba, 0x15, 0x4a, 0x6f, 0x55, 0xfe, 0xcb, 0x06, 0x7c, 0x36, 0x96, + 0x64, 0x8a, 0xff, 0xbb, 0x70, 0x8a, 0x09, 0xea, 0xca, 0x3d, 0x28, 0x6e, 0xce, 0xbf, 0xfc, 0xad, + 0x31, 0xd5, 0x5e, 0x7d, 0xd1, 0x70, 0x98, 0xba, 0x25, 0xd1, 0xb0, 0x06, 0xad, 0xfc, 0xa1, 0x00, + 0xaf, 0x0f, 0x73, 0xb9, 0x4d, 0x5c, 0xca, 0x65, 0xc6, 0x03, 0x27, 0x0a, 0x89, 0x63, 0x2a, 0x2e, + 0xc9, 0xf8, 0xa1, 0x92, 0x62, 0xa3, 0x45, 0x2f, 0xc1, 0x59, 0xce, 0xbc, 0x76, 0xe4, 0x90, 0xd0, + 0x94, 0x53, 0xb2, 0xea, 0x86, 0x91, 0xe3, 0xc4, 0x02, 0x55, 0x21, 0xe4, 0xc7, 0x7e, 0x28, 0x14, + 0x86, 0x55, 0x5c, 0x2f, 0xca, 0xc8, 0xb2, 0x41, 0x34, 0x12, 0x29, 0xce, 0x58, 0xa0, 0x75, 0x38, + 0x79, 0xc2, 0xbc, 0xa6, 0xd9, 0xf5, 0xe4, 0x14, 0x7f, 0x93, 0x79, 0x4d, 0xac, 0x34, 0x12, 0xdf, + 0x61, 0x5c, 0x48, 0x89, 0xd9, 0xf2, 0x5c, 0xd6, 0x95, 0x65, 0x62, 0x21, 0xf1, 0x6d, 0x22, 0x68, + 0xdb, 0x0f, 0x19, 0xe5, 0xd6, 0x74, 0x8a, 0xbf, 0x9d, 0x48, 0x71, 0xc6, 0xa2, 0xf2, 0x8f, 0xc9, + 0xe1, 0x45, 0x22, 0x5b, 0x09, 0x7a, 0x1e, 0x4e, 0xb5, 0x43, 0x3f, 0x0a, 0x4c, 0x96, 0x92, 0x6c, + 0x7f, 0x43, 0x0a, 0xb1, 0xd6, 0xc9, 0xaa, 0xec, 0xd0, 0x50, 0x6e, 0x98, 0x49, 0x51, 0x52, 0x95, + 0xf7, 0xb4, 0x18, 0xc7, 0x7a, 0xf4, 0x43, 0x00, 0xa7, 0x3c, 0x93, 0x1c, 0x59, 0x72, 0x6f, 0x8f, + 0xa9, 0x2e, 0x54, 0x7a, 0x53, 0xba, 0x3a, 0xf3, 0x1a, 0x19, 0xbd, 0x0a, 0xa7, 0xb8, 0xed, 0x07, + 0xd4, 0x64, 0xbd, 0x14, 0x1b, 0x35, 0xa4, 0xf0, 0xbc, 0x5b, 0x5e, 0x8c, 0xc3, 0x29, 0x01, 0xd6, + 0xc6, 0xe8, 0x27, 0x00, 0xc2, 0x0e, 0x71, 0x58, 0x93, 0xc8, 0xf8, 0x6a, 0x2f, 0x46, 0x5d, 0xd6, + 0xf7, 0x92, 0xf0, 0x7a, 0xd3, 0xd2, 0x6f, 0x9c, 0x81, 0x46, 0xbf, 0x00, 0x70, 0x81, 0x47, 0x47, + 0xa1, 0xf1, 0x92, 0xfb, 0x2c, 0xb9, 0x7c, 0x7b, 0xa4, 0x5c, 0x1a, 0x19, 0x80, 0xfa, 0x72, 0xaf, + 0x5b, 0x5e, 0xc8, 0x4a, 0x70, 0x8e, 0x40, 0xe5, 0x9f, 0x05, 0x58, 0xfa, 0xf8, 0xdb, 0x01, 0x3d, + 0x02, 0x10, 0xda, 0x71, 0xd7, 0xe5, 0x16, 0x50, 0x5d, 0xe1, 0xfd, 0x31, 0xed, 0x7e, 0xd2, 0xde, + 0xd3, 0x1b, 0x3a, 0x11, 0xc9, 0x03, 0x90, 0xfc, 0x46, 0xbf, 0x01, 0x70, 0x91, 0xd8, 0x36, 0x0d, + 0x04, 0x6d, 0xea, 0x43, 0x5b, 0xf8, 0x0c, 0xea, 0x72, 0xd5, 0xb0, 0x5a, 0xdc, 0xca, 0x42, 0xe3, + 0x3c, 0x93, 0xca, 0x7f, 0x41, 0x7f, 0x56, 0x33, 0x5b, 0xd0, 0xb0, 0x89, 0x43, 0xd1, 0x0e, 0x5c, + 0x96, 0x77, 0x3d, 0xa6, 0x81, 0xc3, 0x6c, 0xc2, 0x0f, 0x89, 0x38, 0x36, 0x27, 0xd5, 0x32, 0x10, + 0xcb, 0x8d, 0x3e, 0x3d, 0x1e, 0xf0, 0x40, 0x6f, 0x42, 0xa4, 0xef, 0xbf, 0x5c, 0x1c, 0x7d, 0x94, + 0x93, 0x9b, 0xac, 0x31, 0x60, 0x81, 0x2f, 0xf0, 0x42, 0xdb, 0x70, 0xc5, 0x21, 0x47, 0xd4, 0x69, + 0x50, 0x87, 0xda, 0xc2, 0x0f, 0x55, 0xa8, 0xa2, 0x0a, 0xb5, 0xda, 0xeb, 0x96, 0x57, 0xf6, 0xfa, + 0x95, 0x78, 0xd0, 0xbe, 0xb2, 0x01, 0xcb, 0xc3, 0x17, 0xae, 0xa7, 0x8a, 0xdf, 0x15, 0xe0, 0xda, + 0xf0, 0x8a, 0x45, 0x3f, 0x4a, 0x87, 0x1f, 0x7d, 0xb7, 0xbd, 0x3b, 0xae, 0xd3, 0x61, 0xa6, 0x1f, + 0x38, 0x38, 0xf9, 0xa0, 0xef, 0xcb, 0x46, 0x43, 0x1c, 0x6a, 0x6a, 0xea, 0x9d, 0xb1, 0x51, 0x90, + 0x20, 0xf5, 0x39, 0xdd, 0xc3, 0x88, 0xa3, 0x5a, 0x16, 0x71, 0x68, 0xe5, 0x8f, 0xa0, 0x7f, 0xfe, + 0x4d, 0x3b, 0x0a, 0xfa, 0x19, 0x80, 0x4b, 0x7e, 0x40, 0xbd, 0xad, 0xc3, 0x5b, 0xf7, 0x5e, 0x69, + 0xa8, 0xa9, 0xdb, 0xa4, 0xea, 0xf6, 0xa7, 0xe4, 0xf9, 0x66, 0xe3, 0xe0, 0xb6, 0x0e, 0x78, 0x18, + 0xfa, 0x01, 0xaf, 0x5f, 0xea, 0x75, 0xcb, 0x4b, 0x07, 0x79, 0x28, 0xdc, 0x8f, 0x5d, 0x71, 0xe1, + 0xea, 0xee, 0xa9, 0xa0, 0xa1, 0x47, 0x9c, 0x1d, 0xdf, 0x8e, 0x5c, 0xea, 0x09, 0x4d, 0xf4, 0x35, + 0x38, 0xdf, 0xa4, 0xdc, 0x0e, 0x59, 0xa0, 0x1a, 0xaf, 0x2e, 0xef, 0x4b, 0xa6, 0x2c, 0xe7, 0x77, + 0x52, 0x15, 0xce, 0xda, 0xa1, 0xeb, 0xb0, 0x18, 0x85, 0x8e, 0xa9, 0xe2, 0x79, 0x63, 0x5e, 0xbc, + 0x8b, 0xf7, 0xb0, 0x94, 0x57, 0x36, 0xe0, 0xa4, 0xe4, 0x89, 0xae, 0xc2, 0x62, 0x48, 0x1e, 0xaa, + 0xa8, 0x0b, 0xf5, 0x19, 0x69, 0x82, 0xc9, 0x43, 0x2c, 0x65, 0x95, 0x3f, 0x5d, 0x83, 0x4b, 0x7d, + 0x6b, 0x41, 0x6b, 0xb0, 0xc0, 0x9a, 0x86, 0x03, 0x34, 0x41, 0x0b, 0xb7, 0x76, 0x70, 0x81, 0x35, + 0xd1, 0xeb, 0x70, 0x5a, 0xbf, 0x5e, 0x0c, 0x68, 0x39, 0x99, 0x3b, 0x95, 0x54, 0xde, 0x2c, 0x69, + 0x38, 0x49, 0xc4, 0x98, 0x2b, 0x0e, 0xb4, 0x65, 0x4e, 0x89, 0xe6, 0x40, 0x5b, 0x58, 0xca, 0xfa, + 0x17, 0x3f, 0xf9, 0x94, 0x8b, 0x5f, 0x37, 0xd3, 0xf4, 0x54, 0x7e, 0xae, 0xc8, 0x0c, 0xc9, 0x2f, + 0xc2, 0xe9, 0x96, 0x1f, 0xba, 0x44, 0xa8, 0xdb, 0x23, 0x33, 0xff, 0x7c, 0x5d, 0x49, 0xb1, 0xd1, + 0xca, 0x01, 0x40, 0x30, 0xe1, 0x50, 0x6b, 0x26, 0x3f, 0x00, 0xdc, 0x91, 0x42, 0xac, 0x75, 0xe8, + 0x3e, 0x9c, 0x69, 0xd2, 0x16, 0x89, 0x1c, 0x61, 0xcd, 0xaa, 0x12, 0xda, 0x1e, 0x41, 0x09, 0xd5, + 0xe7, 0xe5, 0x04, 0xb1, 0xa3, 0xe3, 0xe2, 0x18, 0x00, 0xbd, 0x00, 0x67, 0x5c, 0x72, 0xca, 0xdc, + 0xc8, 0xb5, 0xe6, 0xd6, 0xc1, 0x26, 0xd0, 0x66, 0xfb, 0x5a, 0x84, 0x63, 0x9d, 0xec, 0x8c, 0xf4, + 0xd4, 0x76, 0x22, 0xce, 0x3a, 0xd4, 0x28, 0x2d, 0xb8, 0x0e, 0x36, 0x67, 0xd3, 0xce, 0xb8, 0xdb, + 0xa7, 0xc7, 0x03, 0x1e, 0x0a, 0x8c, 0x79, 0xca, 0x79, 0x3e, 0x03, 0xa6, 0x45, 0x38, 0xd6, 0xe5, + 0xc1, 0x8c, 0xfd, 0xc2, 0x30, 0x30, 0xe3, 0x3c, 0xe0, 0x81, 0xbe, 0x08, 0xe7, 0x5c, 0x72, 0xba, + 0x47, 0xbd, 0xb6, 0x38, 0xb6, 0x16, 0xd7, 0xc1, 0x66, 0xb1, 0xbe, 0xd8, 0xeb, 0x96, 0xe7, 0xf6, + 0x63, 0x21, 0x4e, 0xf5, 0xca, 0x98, 0x79, 0xc6, 0xf8, 0xb9, 0x8c, 0x71, 0x2c, 0xc4, 0xa9, 0x5e, + 0x0e, 0x68, 0x01, 0x11, 0xf2, 0x70, 0x59, 0x4b, 0xf9, 0x01, 0xed, 0x50, 0x8b, 0x71, 0xac, 0x47, + 0x9b, 0x70, 0xd6, 0x25, 0xa7, 0x6a, 0x98, 0xb6, 0x96, 0x55, 0xd8, 0x05, 0x39, 0x6b, 0xee, 0x1b, + 0x19, 0x4e, 0xb4, 0xca, 0x92, 0x79, 0xda, 0x72, 0x25, 0x63, 0x69, 0x64, 0x38, 0xd1, 0xca, 0x22, + 0x8e, 0x3c, 0xf6, 0x20, 0xa2, 0xda, 0x18, 0xa9, 0xcc, 0x24, 0x45, 0x7c, 0x37, 0x55, 0xe1, 0xac, + 0x9d, 0x1c, 0x66, 0xdd, 0xc8, 0x11, 0x2c, 0x70, 0xe8, 0x41, 0xcb, 0xba, 0xa4, 0xf2, 0xaf, 0xe6, + 0xa2, 0xfd, 0x44, 0x8a, 0x33, 0x16, 0x88, 0xc2, 0x49, 0xea, 0x45, 0xae, 0x75, 0x59, 0xcd, 0x16, + 0x23, 0x29, 0xc1, 0xe4, 0xe4, 0xec, 0x7a, 0x91, 0x8b, 0x55, 0x78, 0xf4, 0x3a, 0x5c, 0x74, 0xc9, + 0xa9, 0x6c, 0x07, 0x34, 0x14, 0x72, 0xcc, 0x5e, 0x55, 0x8b, 0x5f, 0x91, 0xf7, 0xf9, 0x7e, 0x56, + 0x81, 0xf3, 0x76, 0xca, 0x91, 0x79, 0x19, 0xc7, 0x2b, 0x19, 0xc7, 0xac, 0x02, 0xe7, 0xed, 0x64, + 0xa6, 0x43, 0xfa, 0x20, 0x62, 0x21, 0x6d, 0x5a, 0xff, 0xa7, 0x66, 0x7a, 0x95, 0x69, 0x6c, 0x64, + 0x38, 0xd1, 0xa2, 0x4e, 0xfc, 0xea, 0xb2, 0xd4, 0x31, 0xbc, 0x3b, 0xda, 0x4e, 0x7e, 0x10, 0x6e, + 0x85, 0x21, 0x39, 0xd3, 0x37, 0x4d, 0xf6, 0xbd, 0x85, 0x38, 0x9c, 0x22, 0x8e, 0x73, 0xd0, 0xb2, + 0xae, 0xaa, 0xdc, 0x8f, 0xfa, 0x06, 0x49, 0xba, 0xce, 0x96, 0x04, 0xc1, 0x1a, 0x4b, 0x82, 0xfa, + 0x9e, 0x2c, 0x8d, 0xb5, 0xf1, 0x82, 0x1e, 0x48, 0x10, 0xac, 0xb1, 0xd4, 0x4a, 0xbd, 0xb3, 0x83, + 0x96, 0xf5, 0xff, 0x63, 0x5e, 0xa9, 0x04, 0xc1, 0x1a, 0x0b, 0x31, 0x58, 0xf4, 0x7c, 0x61, 0x5d, + 0x1b, 0xcb, 0xf5, 0xac, 0x2e, 0x9c, 0xdb, 0xbe, 0xc0, 0x12, 0x03, 0xfd, 0x0a, 0x40, 0x18, 0xa4, + 0x25, 0x7a, 0x5d, 0xad, 0xf2, 0xdd, 0xd1, 0x42, 0x56, 0xd3, 0xda, 0xde, 0xf5, 0x44, 0x78, 0x96, + 0x4e, 0xe9, 0x99, 0x33, 0x90, 0x61, 0x81, 0x7e, 0x0f, 0xe0, 0x65, 0xd2, 0xd4, 0x33, 0x3b, 0x71, + 0x32, 0x27, 0xa8, 0xa4, 0x32, 0x72, 0x67, 0xd4, 0x65, 0x5e, 0xf7, 0x7d, 0xa7, 0x6e, 0xf5, 0xba, + 0xe5, 0xcb, 0x5b, 0x17, 0xa0, 0xe2, 0x0b, 0xb9, 0xa0, 0x3f, 0x03, 0xb8, 0x62, 0xba, 0x68, 0x86, + 0x61, 0x59, 0x25, 0x90, 0x8e, 0x3a, 0x81, 0xfd, 0x38, 0x3a, 0x8f, 0x57, 0x4d, 0x1e, 0x57, 0x06, + 0xf4, 0x78, 0x90, 0x1a, 0xfa, 0x1b, 0x80, 0x0b, 0x4d, 0x1a, 0x50, 0xaf, 0x49, 0x3d, 0x5b, 0x72, + 0x5d, 0x1f, 0xc9, 0xa3, 0xac, 0x9f, 0xeb, 0x4e, 0x06, 0x42, 0xd3, 0xac, 0x1a, 0x9a, 0x0b, 0x59, + 0xd5, 0x79, 0xb7, 0x7c, 0x25, 0x75, 0xcd, 0x6a, 0x70, 0x8e, 0x25, 0xfa, 0x35, 0x80, 0x4b, 0xe9, + 0x06, 0xe8, 0x2b, 0x65, 0x63, 0x8c, 0x75, 0xa0, 0xc6, 0xd7, 0xad, 0x3c, 0x20, 0xee, 0x67, 0x80, + 0xfe, 0x02, 0xe4, 0xa4, 0x16, 0x3f, 0xf3, 0xb8, 0x55, 0x51, 0xb9, 0x7c, 0x6f, 0xe4, 0xb9, 0x4c, + 0x10, 0x74, 0x2a, 0x5f, 0x4a, 0x47, 0xc1, 0x44, 0x73, 0xde, 0x2d, 0xaf, 0x66, 0x33, 0x99, 0x28, + 0x70, 0x96, 0x21, 0xfa, 0x29, 0x80, 0x0b, 0x34, 0x9d, 0xb8, 0xb9, 0xf5, 0xfc, 0x48, 0x92, 0x78, + 0xe1, 0x10, 0xaf, 0xff, 0x41, 0xc8, 0xa8, 0x38, 0xce, 0x61, 0xcb, 0x09, 0x92, 0x9e, 0x12, 0x37, + 0x70, 0xa8, 0xf5, 0xb9, 0x11, 0x4f, 0x90, 0xbb, 0x3a, 0x2e, 0x8e, 0x01, 0xd6, 0xe4, 0xcb, 0xa7, + 0xef, 0xe4, 0xa0, 0x65, 0x58, 0x3c, 0xa1, 0x67, 0x7a, 0xb0, 0xc7, 0xf2, 0x27, 0x6a, 0xc2, 0xa9, + 0x0e, 0x71, 0xa2, 0xf8, 0xf1, 0x36, 0xe2, 0xae, 0x8b, 0x75, 0xf0, 0xaf, 0x16, 0xde, 0x00, 0x6b, + 0x8f, 0x00, 0xbc, 0x72, 0xf1, 0x81, 0x7e, 0xa6, 0xb4, 0x7e, 0x0b, 0xe0, 0xca, 0xc0, 0xd9, 0xbd, + 0x80, 0xd1, 0x83, 0x3c, 0xa3, 0xb7, 0x46, 0x7d, 0x08, 0x1b, 0x22, 0x64, 0x5e, 0x5b, 0x4d, 0x1e, + 0x59, 0x7a, 0x3f, 0x07, 0x70, 0xb9, 0xff, 0x38, 0x3c, 0xcb, 0x7c, 0x55, 0x1e, 0x15, 0xe0, 0x95, + 0x8b, 0x07, 0x26, 0x14, 0x26, 0x2f, 0xc3, 0xf1, 0xbc, 0xb0, 0x61, 0xfa, 0xca, 0x4c, 0x1e, 0x95, + 0x1f, 0x00, 0x38, 0x7f, 0x3f, 0xb1, 0x8b, 0xff, 0x87, 0x1f, 0xf9, 0xdb, 0x3e, 0xee, 0x3f, 0xa9, + 0x82, 0xe3, 0x2c, 0x6e, 0xe5, 0xaf, 0x00, 0xae, 0x5e, 0xd8, 0x58, 0xe5, 0x13, 0x94, 0x38, 0x8e, + 0xff, 0x50, 0xff, 0x45, 0x33, 0x9b, 0x3e, 0x41, 0xb7, 0x94, 0x14, 0x1b, 0x6d, 0x26, 0x7b, 0x85, + 0xcf, 0x2a, 0x7b, 0x95, 0xbf, 0x03, 0x78, 0xed, 0xe3, 0x2a, 0xf1, 0x99, 0x6c, 0xe9, 0x26, 0x9c, + 0x35, 0x43, 0xd1, 0x99, 0xda, 0x4e, 0xf3, 0x0e, 0x30, 0x4d, 0xe3, 0x0c, 0x27, 0xda, 0xfa, 0x8d, + 0xc7, 0x4f, 0x4a, 0x13, 0x1f, 0x3e, 0x29, 0x4d, 0x7c, 0xf4, 0xa4, 0x34, 0xf1, 0x83, 0x5e, 0x09, + 0x3c, 0xee, 0x95, 0xc0, 0x87, 0xbd, 0x12, 0xf8, 0xa8, 0x57, 0x02, 0xff, 0xea, 0x95, 0xc0, 0x2f, + 0xff, 0x5d, 0x9a, 0xf8, 0xce, 0x8c, 0x01, 0xff, 0x5f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x0a, 0x6f, + 0x04, 0x49, 0xd3, 0x1e, 0x00, 0x00, } diff --git a/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1/generated.proto b/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1/generated.proto index ffc94d07c9..46cfd1ca7d 100644 --- a/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1/generated.proto +++ b/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1/generated.proto @@ -88,6 +88,10 @@ message CustomResourceDefinitionNames { // ListKind is the serialized kind of the list for this resource. Defaults to List. optional string listKind = 5; + + // Categories is a list of grouped resources custom resources belong to (e.g. 'all') + // +optional + repeated string categories = 6; } // CustomResourceDefinitionSpec describes how a user wants their resource to appear diff --git a/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1/zz_generated.conversion.go b/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1/zz_generated.conversion.go index 84996455f7..254676af5c 100644 --- a/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1/zz_generated.conversion.go +++ b/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1/zz_generated.conversion.go @@ -179,6 +179,7 @@ func autoConvert_v1beta1_CustomResourceDefinitionNames_To_apiextensions_CustomRe out.ShortNames = *(*[]string)(unsafe.Pointer(&in.ShortNames)) out.Kind = in.Kind out.ListKind = in.ListKind + out.Categories = *(*[]string)(unsafe.Pointer(&in.Categories)) return nil } @@ -193,6 +194,7 @@ func autoConvert_apiextensions_CustomResourceDefinitionNames_To_v1beta1_CustomRe out.ShortNames = *(*[]string)(unsafe.Pointer(&in.ShortNames)) out.Kind = in.Kind out.ListKind = in.ListKind + out.Categories = *(*[]string)(unsafe.Pointer(&in.Categories)) return nil } diff --git a/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1/zz_generated.deepcopy.go b/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1/zz_generated.deepcopy.go index 669225fdf0..cfe75a06b9 100644 --- a/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1/zz_generated.deepcopy.go +++ b/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1/zz_generated.deepcopy.go @@ -112,6 +112,11 @@ func (in *CustomResourceDefinitionNames) DeepCopyInto(out *CustomResourceDefinit *out = make([]string, len(*in)) copy(*out, *in) } + if in.Categories != nil { + in, out := &in.Categories, &out.Categories + *out = make([]string, len(*in)) + copy(*out, *in) + } return } diff --git a/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/zz_generated.deepcopy.go b/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/zz_generated.deepcopy.go index f14f179ee0..34f760ce73 100644 --- a/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/zz_generated.deepcopy.go +++ b/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/zz_generated.deepcopy.go @@ -112,6 +112,11 @@ func (in *CustomResourceDefinitionNames) DeepCopyInto(out *CustomResourceDefinit *out = make([]string, len(*in)) copy(*out, *in) } + if in.Categories != nil { + in, out := &in.Categories, &out.Categories + *out = make([]string, len(*in)) + copy(*out, *in) + } return }