diff --git a/Dockerfile b/Dockerfile index 4b5cb796..c625a594 100644 --- a/Dockerfile +++ b/Dockerfile @@ -67,6 +67,17 @@ RUN set -x \ && cp bin/* /opt/cni/bin/ \ && rm -rf "$GOPATH" +# Install crictl +ENV CRICTL_COMMIT c8786e315514a021c53888d874b1fb33e967a23c +RUN set -x \ + && export GOPATH="$(mktemp -d)" \ + && git clone https://github.com/kubernetes-incubator/cri-tools.git "$GOPATH/src/github.com/kubernetes-incubator/cri-tools" \ + && cd "$GOPATH/src/github.com/kubernetes-incubator/cri-tools" \ + && git checkout -q "$CRICTL_COMMIT" \ + && go install github.com/kubernetes-incubator/cri-tools/cmd/crictl \ + && cp "$GOPATH"/bin/crictl /usr/bin/ \ + && rm -rf "$GOPATH" + COPY test/plugin_test_args.bash /opt/cni/bin/plugin_test_args.bash # Make sure we have some policy for pulling images diff --git a/contrib/test/crio-integration-playbook.yaml b/contrib/test/crio-integration-playbook.yaml index e5e4f06e..15662e26 100644 --- a/contrib/test/crio-integration-playbook.yaml +++ b/contrib/test/crio-integration-playbook.yaml @@ -127,6 +127,12 @@ async: 600 poll: 10 when: xunit + - name: git clone crictl repo + git: + repo: https://github.com/kubernetes-incubator/cri-tools + dest: /root/src/github.com/kubernetes-incubator/cri-tools + async: 600 + poll: 10 - name: git clone runc repo git: repo: https://github.com/opencontainers/runc @@ -193,6 +199,14 @@ chdir: /root/src/github.com/opencontainers/runc async: 600 poll: 10 + - name: make crictl + shell: | + go install github.com/kubernetes-incubator/cri-tools/cmd/crictl && \ + cp $GOPATH/bin/crictl /usr/bin/crictl + args: + chdir: /root/src/github.com/kubernetes-incubator/cri-o/ + async: 600 + poll: 10 - name: make runc make: params: BUILDTAGS="seccomp selinux" diff --git a/test/helpers.bash b/test/helpers.bash index a52f63f3..601ad1a0 100644 --- a/test/helpers.bash +++ b/test/helpers.bash @@ -11,8 +11,9 @@ CRIO_ROOT=${CRIO_ROOT:-$(cd "$INTEGRATION_ROOT/../.."; pwd -P)} # Path of the crio binary. CRIO_BINARY=${CRIO_BINARY:-${CRIO_ROOT}/cri-o/crio} -# Path of the crioctl binary. -OCIC_BINARY=${OCIC_BINARY:-${CRIO_ROOT}/cri-o/crioctl} +# Path of the crictl binary. +CRICTL_PATH=$(command -v crictl || true) +CRICTL_BINARY=${CRICTL_PATH:-/usr/bin/crictl} # Path of the conmon binary. CONMON_BINARY=${CONMON_BINARY:-${CRIO_ROOT}/cri-o/conmon/conmon} # Path of the pause binary. @@ -126,11 +127,17 @@ function crio() { "$CRIO_BINARY" --listen "$CRIO_SOCKET" "$@" } -# Run crioctl using the binary specified by $OCIC_BINARY. +# DEPRECATED +OCIC_BINARY=${OCIC_BINARY:-${CRIO_ROOT}/cri-o/crioctl} function crioctl() { "$OCIC_BINARY" --connect "$CRIO_SOCKET" "$@" } +# Run crictl using the binary specified by $CRICTL_BINARY. +function crictl() { + "$CRICTL_BINARY" -r "$CRIO_SOCKET" -i "$CRIO_SOCKET" "$@" +} + # Communicate with Docker on the host machine. # Should rarely use this. function docker_host() { @@ -159,7 +166,7 @@ function retry() { # Waits until the given crio becomes reachable. function wait_until_reachable() { - retry 15 1 crioctl runtimeversion + retry 15 1 crictl status } # Start crio. @@ -202,14 +209,14 @@ function start_crio() { "$CRIO_BINARY" --debug --config "$CRIO_CONFIG" & CRIO_PID=$! wait_until_reachable - run crioctl image status --id redis:alpine + run crictl image status redis:alpine if [ "$status" -ne 0 ] ; then - crioctl image pull redis:alpine + crictl image pull redis:alpine fi - REDIS_IMAGEID=$(crioctl image status --id redis:alpine | head -1 | sed -e "s/ID: //g") - run crioctl image status --id mrunalp/oom + REDIS_IMAGEID=$(crictl image status redis:alpine | head -1 | sed -e "s/ID: //g") + run crictl image status mrunalp/oom if [ "$status" -ne 0 ] ; then - crioctl image pull mrunalp/oom + crictl image pull mrunalp/oom fi # # @@ -222,58 +229,58 @@ function start_crio() { # # REDIS_IMAGEID_DIGESTED="redis@sha256:03789f402b2ecfb98184bf128d180f398f81c63364948ff1454583b02442f73b" - run crioctl image status --id $REDIS_IMAGEID_DIGESTED + run crictl image status $REDIS_IMAGEID_DIGESTED if [ "$status" -ne 0 ]; then - crioctl image pull $REDIS_IMAGEID_DIGESTED + crictl image pull $REDIS_IMAGEID_DIGESTED fi # # # - run crioctl image status --id runcom/stderr-test + run crictl image status runcom/stderr-test if [ "$status" -ne 0 ] ; then - crioctl image pull runcom/stderr-test:latest + crictl image pull runcom/stderr-test:latest fi - STDERR_IMAGEID=$(crioctl image status --id runcom/stderr-test | head -1 | sed -e "s/ID: //g") - run crioctl image status --id busybox + STDERR_IMAGEID=$(crictl image status runcom/stderr-test | head -1 | sed -e "s/ID: //g") + run crictl image status busybox if [ "$status" -ne 0 ] ; then - crioctl image pull busybox:latest + crictl image pull busybox:latest fi - BUSYBOX_IMAGEID=$(crioctl image status --id busybox | head -1 | sed -e "s/ID: //g") + BUSYBOX_IMAGEID=$(crictl image status busybox | head -1 | sed -e "s/ID: //g") } function cleanup_ctrs() { - run crioctl ctr list --quiet + run crictl ctr ls --quiet if [ "$status" -eq 0 ]; then if [ "$output" != "" ]; then printf '%s\n' "$output" | while IFS= read -r line do - crioctl ctr stop --id "$line" || true - crioctl ctr remove --id "$line" + crictl ctr stop "$line" || true + crictl ctr rm "$line" done fi fi } function cleanup_images() { - run crioctl image list --quiet + run crictl image ls --quiet if [ "$status" -eq 0 ]; then if [ "$output" != "" ]; then printf '%s\n' "$output" | while IFS= read -r line do - crioctl image remove --id "$line" + crictl image rm "$line" done fi fi } function cleanup_pods() { - run crioctl pod list --quiet + run crictl sandbox ls --quiet if [ "$status" -eq 0 ]; then if [ "$output" != "" ]; then printf '%s\n' "$output" | while IFS= read -r line do - crioctl pod stop --id "$line" || true - crioctl pod remove --id "$line" + crictl sandbox stop "$line" || true + crictl sandbox rm "$line" done fi fi diff --git a/vendor.conf b/vendor.conf index 7b861ec1..2d3ae6b3 100644 --- a/vendor.conf +++ b/vendor.conf @@ -1,8 +1,8 @@ -k8s.io/kubernetes ad720cc651916aedd1d3aca665eff901c3445a88 https://github.com/kubernetes/kubernetes +k8s.io/kubernetes v1.7.0-beta.3 https://github.com/kubernetes/kubernetes # https://github.com/kubernetes/client-go#compatibility-matrix -k8s.io/client-go 6b1566ccaa7c069f392461bef8a5fb17087f4729 https://github.com/kubernetes/client-go -k8s.io/apimachinery 2de00c78cb6d6127fb51b9531c1b3def1cbcac8c https://github.com/kubernetes/apimachinery -k8s.io/apiserver c809cf8581e1e44c6174bf5ab4415e6ee39965ca https://github.com/kubernetes/apiserver +k8s.io/client-go master https://github.com/kubernetes/client-go +k8s.io/apimachinery master https://github.com/kubernetes/apimachinery +k8s.io/apiserver master https://github.com/kubernetes/apiserver # github.com/Sirupsen/logrus v0.11.5 github.com/containers/image b36d6535410088370aaaee7ec8522863b5e43489 diff --git a/vendor/k8s.io/apimachinery/pkg/api/meta/meta.go b/vendor/k8s.io/apimachinery/pkg/api/meta/meta.go index 9cc37297..45d850ea 100644 --- a/vendor/k8s.io/apimachinery/pkg/api/meta/meta.go +++ b/vendor/k8s.io/apimachinery/pkg/api/meta/meta.go @@ -23,6 +23,7 @@ import ( "github.com/golang/glog" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + metav1alpha1 "k8s.io/apimachinery/pkg/apis/meta/v1alpha1" "k8s.io/apimachinery/pkg/conversion" "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/runtime/schema" @@ -89,6 +90,36 @@ func Accessor(obj interface{}) (metav1.Object, error) { } } +// AsPartialObjectMetadata takes the metav1 interface and returns a partial object. +// TODO: consider making this solely a conversion action. +func AsPartialObjectMetadata(m metav1.Object) *metav1alpha1.PartialObjectMetadata { + switch t := m.(type) { + case *metav1.ObjectMeta: + return &metav1alpha1.PartialObjectMetadata{ObjectMeta: *t} + default: + return &metav1alpha1.PartialObjectMetadata{ + ObjectMeta: metav1.ObjectMeta{ + Name: m.GetName(), + GenerateName: m.GetGenerateName(), + Namespace: m.GetNamespace(), + SelfLink: m.GetSelfLink(), + UID: m.GetUID(), + ResourceVersion: m.GetResourceVersion(), + Generation: m.GetGeneration(), + CreationTimestamp: m.GetCreationTimestamp(), + DeletionTimestamp: m.GetDeletionTimestamp(), + DeletionGracePeriodSeconds: m.GetDeletionGracePeriodSeconds(), + Labels: m.GetLabels(), + Annotations: m.GetAnnotations(), + OwnerReferences: m.GetOwnerReferences(), + Finalizers: m.GetFinalizers(), + ClusterName: m.GetClusterName(), + Initializers: m.GetInitializers(), + }, + } + } +} + // TypeAccessor returns an interface that allows retrieving and modifying the APIVersion // and Kind of an in-memory internal object. // TODO: this interface is used to test code that does not have ObjectMeta or ListMeta diff --git a/vendor/k8s.io/apimachinery/pkg/api/resource/generated.pb.go b/vendor/k8s.io/apimachinery/pkg/api/resource/generated.pb.go index ef2fff25..8b2e338a 100644 --- a/vendor/k8s.io/apimachinery/pkg/api/resource/generated.pb.go +++ b/vendor/k8s.io/apimachinery/pkg/api/resource/generated.pb.go @@ -57,21 +57,21 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 253 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x74, 0x8f, 0xb1, 0x4a, 0x03, 0x41, - 0x10, 0x86, 0x77, 0x1b, 0x89, 0x57, 0x06, 0x11, 0x49, 0xb1, 0x17, 0xc4, 0x42, 0x04, 0x77, 0x0a, - 0x9b, 0x60, 0x69, 0x6f, 0xa1, 0xa5, 0xdd, 0xdd, 0x65, 0xdc, 0x2c, 0x67, 0x76, 0x8f, 0xd9, 0x59, - 0x21, 0x5d, 0x4a, 0xcb, 0x94, 0x96, 0xb9, 0xb7, 0x49, 0x99, 0xd2, 0xc2, 0xc2, 0x3b, 0x5f, 0x44, - 0x72, 0xc9, 0x81, 0x08, 0x76, 0xf3, 0xfd, 0xc3, 0x37, 0xfc, 0x93, 0xdc, 0x97, 0x93, 0xa0, 0xad, - 0x87, 0x32, 0xe6, 0x48, 0x0e, 0x19, 0x03, 0xbc, 0xa2, 0x9b, 0x7a, 0x82, 0xc3, 0x22, 0xab, 0xec, - 0x3c, 0x2b, 0x66, 0xd6, 0x21, 0x2d, 0xa0, 0x2a, 0xcd, 0x2e, 0x00, 0xc2, 0xe0, 0x23, 0x15, 0x08, - 0x06, 0x1d, 0x52, 0xc6, 0x38, 0xd5, 0x15, 0x79, 0xf6, 0xc3, 0x8b, 0xbd, 0xa5, 0x7f, 0x5b, 0xba, - 0x2a, 0xcd, 0x2e, 0xd0, 0xbd, 0x35, 0xba, 0x36, 0x96, 0x67, 0x31, 0xd7, 0x85, 0x9f, 0x83, 0xf1, - 0xc6, 0x43, 0x27, 0xe7, 0xf1, 0xb9, 0xa3, 0x0e, 0xba, 0x69, 0x7f, 0x74, 0x74, 0xf3, 0x5f, 0x95, - 0xc8, 0xf6, 0x05, 0xac, 0xe3, 0xc0, 0xf4, 0xb7, 0xc9, 0xf9, 0x24, 0x19, 0x3c, 0xc4, 0xcc, 0xb1, - 0xe5, 0xc5, 0xf0, 0x34, 0x39, 0x0a, 0x4c, 0xd6, 0x99, 0x33, 0x39, 0x96, 0x97, 0xc7, 0x8f, 0x07, - 0xba, 0x3d, 0x79, 0x5f, 0xa7, 0xe2, 0xad, 0x4e, 0xc5, 0xaa, 0x4e, 0xc5, 0xba, 0x4e, 0xc5, 0xf2, - 0x73, 0x2c, 0xee, 0xae, 0x36, 0x8d, 0x12, 0xdb, 0x46, 0x89, 0x8f, 0x46, 0x89, 0x65, 0xab, 0xe4, - 0xa6, 0x55, 0x72, 0xdb, 0x2a, 0xf9, 0xd5, 0x2a, 0xb9, 0xfa, 0x56, 0xe2, 0x69, 0xd0, 0x7f, 0xf2, - 0x13, 0x00, 0x00, 0xff, 0xff, 0xdf, 0x3c, 0xf3, 0xc9, 0x3f, 0x01, 0x00, 0x00, + // 255 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x74, 0x8f, 0xa1, 0x4e, 0x03, 0x41, + 0x10, 0x86, 0x77, 0x0d, 0x29, 0x95, 0x0d, 0x21, 0xa4, 0x62, 0xaf, 0x21, 0x08, 0x0c, 0x3b, 0x02, + 0xd3, 0x20, 0xf1, 0x08, 0x90, 0xb8, 0xbb, 0xeb, 0xb0, 0xdd, 0x1c, 0xdd, 0xbd, 0xcc, 0xce, 0x92, + 0xd4, 0x55, 0x22, 0x2b, 0x91, 0xbd, 0xb7, 0xa9, 0xac, 0xac, 0x40, 0x70, 0xcb, 0x8b, 0x90, 0x5e, + 0xdb, 0x84, 0x90, 0xe0, 0xe6, 0xfb, 0x27, 0xdf, 0xe4, 0x9f, 0xfe, 0x43, 0x35, 0x0e, 0xda, 0x7a, + 0xa8, 0x62, 0x81, 0xe4, 0x90, 0x31, 0xc0, 0x1b, 0xba, 0x89, 0x27, 0x38, 0x2c, 0xf2, 0xda, 0xce, + 0xf2, 0x72, 0x6a, 0x1d, 0xd2, 0x1c, 0xea, 0xca, 0xec, 0x02, 0x20, 0x0c, 0x3e, 0x52, 0x89, 0x60, + 0xd0, 0x21, 0xe5, 0x8c, 0x13, 0x5d, 0x93, 0x67, 0x3f, 0xb8, 0xda, 0x5b, 0xfa, 0xb7, 0xa5, 0xeb, + 0xca, 0xec, 0x02, 0x7d, 0xb4, 0x86, 0x37, 0xc6, 0xf2, 0x34, 0x16, 0xba, 0xf4, 0x33, 0x30, 0xde, + 0x78, 0xe8, 0xe4, 0x22, 0xbe, 0x74, 0xd4, 0x41, 0x37, 0xed, 0x8f, 0x0e, 0x6f, 0xff, 0xab, 0x12, + 0xd9, 0xbe, 0x82, 0x75, 0x1c, 0x98, 0xfe, 0x36, 0xb9, 0x1c, 0xf7, 0x7b, 0x8f, 0x31, 0x77, 0x6c, + 0x79, 0x3e, 0x38, 0xef, 0x9f, 0x04, 0x26, 0xeb, 0xcc, 0x85, 0x1c, 0xc9, 0xeb, 0xd3, 0xa7, 0x03, + 0xdd, 0x9d, 0x7d, 0xac, 0x32, 0xf1, 0xde, 0x64, 0x62, 0xd9, 0x64, 0x62, 0xd5, 0x64, 0x62, 0xf1, + 0x39, 0x12, 0xf7, 0x7a, 0xdd, 0x2a, 0xb1, 0x69, 0x95, 0xd8, 0xb6, 0x4a, 0x2c, 0x92, 0x92, 0xeb, + 0xa4, 0xe4, 0x26, 0x29, 0xb9, 0x4d, 0x4a, 0x7e, 0x25, 0x25, 0x97, 0xdf, 0x4a, 0x3c, 0xf7, 0x8e, + 0xdf, 0xfc, 0x04, 0x00, 0x00, 0xff, 0xff, 0x5f, 0x5e, 0xda, 0xf9, 0x43, 0x01, 0x00, 0x00, } diff --git a/vendor/k8s.io/apimachinery/pkg/api/validation/objectmeta.go b/vendor/k8s.io/apimachinery/pkg/api/validation/objectmeta.go index 04f60584..84bd9cde 100644 --- a/vendor/k8s.io/apimachinery/pkg/api/validation/objectmeta.go +++ b/vendor/k8s.io/apimachinery/pkg/api/validation/objectmeta.go @@ -184,10 +184,41 @@ func ValidateObjectMetaAccessor(meta metav1.Object, requiresNamespace bool, name allErrs = append(allErrs, v1validation.ValidateLabels(meta.GetLabels(), fldPath.Child("labels"))...) allErrs = append(allErrs, ValidateAnnotations(meta.GetAnnotations(), fldPath.Child("annotations"))...) allErrs = append(allErrs, ValidateOwnerReferences(meta.GetOwnerReferences(), fldPath.Child("ownerReferences"))...) + allErrs = append(allErrs, ValidateInitializers(meta.GetInitializers(), fldPath.Child("initializers"))...) allErrs = append(allErrs, ValidateFinalizers(meta.GetFinalizers(), fldPath.Child("finalizers"))...) return allErrs } +func ValidateInitializers(initializers *metav1.Initializers, fldPath *field.Path) field.ErrorList { + var allErrs field.ErrorList + if initializers == nil { + return allErrs + } + for i, initializer := range initializers.Pending { + for _, msg := range validation.IsQualifiedName(initializer.Name) { + allErrs = append(allErrs, field.Invalid(fldPath.Child("pending").Index(i), initializer.Name, msg)) + } + } + allErrs = append(allErrs, validateInitializersResult(initializers.Result, fldPath.Child("result"))...) + if len(initializers.Pending) == 0 && initializers.Result == nil { + allErrs = append(allErrs, field.Invalid(fldPath.Child("pending"), nil, "must be non-empty when result is not set")) + } + return allErrs +} + +func validateInitializersResult(result *metav1.Status, fldPath *field.Path) field.ErrorList { + var allErrs field.ErrorList + if result == nil { + return allErrs + } + switch result.Status { + case metav1.StatusFailure: + default: + allErrs = append(allErrs, field.Invalid(fldPath.Child("status"), result.Status, "must be 'Failure'")) + } + return allErrs +} + // ValidateFinalizers tests if the finalizers name are valid, and if there are conflicting finalizers. func ValidateFinalizers(finalizers []string, fldPath *field.Path) field.ErrorList { allErrs := field.ErrorList{} @@ -226,7 +257,7 @@ func ValidateObjectMetaUpdate(newMeta, oldMeta *metav1.ObjectMeta, fldPath *fiel } func ValidateObjectMetaAccessorUpdate(newMeta, oldMeta metav1.Object, fldPath *field.Path) field.ErrorList { - allErrs := field.ErrorList{} + var allErrs field.ErrorList if !RepairMalformedUpdates && newMeta.GetUID() != oldMeta.GetUID() { allErrs = append(allErrs, field.Invalid(fldPath.Child("uid"), newMeta.GetUID(), "field is immutable")) @@ -276,6 +307,8 @@ func ValidateObjectMetaAccessorUpdate(newMeta, oldMeta metav1.Object, fldPath *f allErrs = append(allErrs, field.Invalid(fldPath.Child("generation"), newMeta.GetGeneration(), "must not be decremented")) } + allErrs = append(allErrs, ValidateInitializersUpdate(newMeta.GetInitializers(), oldMeta.GetInitializers(), fldPath.Child("initializers"))...) + allErrs = append(allErrs, ValidateImmutableField(newMeta.GetName(), oldMeta.GetName(), fldPath.Child("name"))...) allErrs = append(allErrs, ValidateImmutableField(newMeta.GetNamespace(), oldMeta.GetNamespace(), fldPath.Child("namespace"))...) allErrs = append(allErrs, ValidateImmutableField(newMeta.GetUID(), oldMeta.GetUID(), fldPath.Child("uid"))...) @@ -288,3 +321,28 @@ func ValidateObjectMetaAccessorUpdate(newMeta, oldMeta metav1.Object, fldPath *f return allErrs } + +// ValidateInitializersUpdate checks the update of the metadata initializers field +func ValidateInitializersUpdate(newInit, oldInit *metav1.Initializers, fldPath *field.Path) field.ErrorList { + var allErrs field.ErrorList + switch { + case oldInit == nil && newInit != nil: + // Initializers may not be set on new objects + allErrs = append(allErrs, field.Invalid(fldPath, nil, "field is immutable once initialization has completed")) + case oldInit != nil && newInit == nil: + // this is a valid transition and means initialization was successful + case oldInit != nil && newInit != nil: + // validate changes to initializers + switch { + case oldInit.Result == nil && newInit.Result != nil: + // setting a result is allowed + allErrs = append(allErrs, validateInitializersResult(newInit.Result, fldPath.Child("result"))...) + case oldInit.Result != nil: + // setting Result implies permanent failure, and all future updates will be prevented + allErrs = append(allErrs, ValidateImmutableField(newInit.Result, oldInit.Result, fldPath.Child("result"))...) + default: + // leaving the result nil is allowed + } + } + return allErrs +} diff --git a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/generated.pb.go b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/generated.pb.go index 4904fd06..9e2b289d 100644 --- a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/generated.pb.go +++ b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/generated.pb.go @@ -46,6 +46,7 @@ limitations under the License. LabelSelectorRequirement ListMeta ListOptions + MicroTime ObjectMeta OwnerReference Preconditions @@ -69,9 +70,10 @@ import math "math" import time "time" import k8s_io_apimachinery_pkg_types "k8s.io/apimachinery/pkg/types" +import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + import strings "strings" import reflect "reflect" -import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" import io "io" @@ -175,59 +177,63 @@ func (m *ListOptions) Reset() { *m = ListOptions{} } func (*ListOptions) ProtoMessage() {} func (*ListOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{20} } +func (m *MicroTime) Reset() { *m = MicroTime{} } +func (*MicroTime) ProtoMessage() {} +func (*MicroTime) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{21} } + func (m *ObjectMeta) Reset() { *m = ObjectMeta{} } func (*ObjectMeta) ProtoMessage() {} -func (*ObjectMeta) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{21} } +func (*ObjectMeta) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{22} } func (m *OwnerReference) Reset() { *m = OwnerReference{} } func (*OwnerReference) ProtoMessage() {} -func (*OwnerReference) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{22} } +func (*OwnerReference) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{23} } func (m *Preconditions) Reset() { *m = Preconditions{} } func (*Preconditions) ProtoMessage() {} -func (*Preconditions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{23} } +func (*Preconditions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{24} } func (m *RootPaths) Reset() { *m = RootPaths{} } func (*RootPaths) ProtoMessage() {} -func (*RootPaths) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{24} } +func (*RootPaths) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{25} } func (m *ServerAddressByClientCIDR) Reset() { *m = ServerAddressByClientCIDR{} } func (*ServerAddressByClientCIDR) ProtoMessage() {} func (*ServerAddressByClientCIDR) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{25} + return fileDescriptorGenerated, []int{26} } func (m *Status) Reset() { *m = Status{} } func (*Status) ProtoMessage() {} -func (*Status) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{26} } +func (*Status) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{27} } func (m *StatusCause) Reset() { *m = StatusCause{} } func (*StatusCause) ProtoMessage() {} -func (*StatusCause) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{27} } +func (*StatusCause) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{28} } func (m *StatusDetails) Reset() { *m = StatusDetails{} } func (*StatusDetails) ProtoMessage() {} -func (*StatusDetails) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{28} } +func (*StatusDetails) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{29} } func (m *Time) Reset() { *m = Time{} } func (*Time) ProtoMessage() {} -func (*Time) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{29} } +func (*Time) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{30} } func (m *Timestamp) Reset() { *m = Timestamp{} } func (*Timestamp) ProtoMessage() {} -func (*Timestamp) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{30} } +func (*Timestamp) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{31} } func (m *TypeMeta) Reset() { *m = TypeMeta{} } func (*TypeMeta) ProtoMessage() {} -func (*TypeMeta) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{31} } +func (*TypeMeta) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{32} } func (m *Verbs) Reset() { *m = Verbs{} } func (*Verbs) ProtoMessage() {} -func (*Verbs) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{32} } +func (*Verbs) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{33} } func (m *WatchEvent) Reset() { *m = WatchEvent{} } func (*WatchEvent) ProtoMessage() {} -func (*WatchEvent) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{33} } +func (*WatchEvent) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{34} } func init() { proto.RegisterType((*APIGroup)(nil), "k8s.io.apimachinery.pkg.apis.meta.v1.APIGroup") @@ -251,6 +257,7 @@ func init() { proto.RegisterType((*LabelSelectorRequirement)(nil), "k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelectorRequirement") proto.RegisterType((*ListMeta)(nil), "k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta") proto.RegisterType((*ListOptions)(nil), "k8s.io.apimachinery.pkg.apis.meta.v1.ListOptions") + proto.RegisterType((*MicroTime)(nil), "k8s.io.apimachinery.pkg.apis.meta.v1.MicroTime") proto.RegisterType((*ObjectMeta)(nil), "k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta") proto.RegisterType((*OwnerReference)(nil), "k8s.io.apimachinery.pkg.apis.meta.v1.OwnerReference") proto.RegisterType((*Preconditions)(nil), "k8s.io.apimachinery.pkg.apis.meta.v1.Preconditions") @@ -409,6 +416,21 @@ func (m *APIResource) MarshalTo(dAtA []byte) (int, error) { i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.SingularName))) i += copy(dAtA[i:], m.SingularName) + if len(m.Categories) > 0 { + for _, s := range m.Categories { + dAtA[i] = 0x3a + 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 } @@ -867,10 +889,15 @@ func (m *LabelSelector) MarshalTo(dAtA []byte) (int, error) { var l int _ = l if len(m.MatchLabels) > 0 { + keysForMatchLabels := make([]string, 0, len(m.MatchLabels)) for k := range m.MatchLabels { + keysForMatchLabels = append(keysForMatchLabels, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForMatchLabels) + for _, k := range keysForMatchLabels { dAtA[i] = 0xa i++ - v := m.MatchLabels[k] + v := m.MatchLabels[string(k)] mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v))) i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) dAtA[i] = 0xa @@ -1082,10 +1109,15 @@ func (m *ObjectMeta) MarshalTo(dAtA []byte) (int, error) { i = encodeVarintGenerated(dAtA, i, uint64(*m.DeletionGracePeriodSeconds)) } if len(m.Labels) > 0 { + keysForLabels := make([]string, 0, len(m.Labels)) for k := range m.Labels { + keysForLabels = append(keysForLabels, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) + for _, k := range keysForLabels { dAtA[i] = 0x5a i++ - v := m.Labels[k] + v := m.Labels[string(k)] mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v))) i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) dAtA[i] = 0xa @@ -1099,10 +1131,15 @@ func (m *ObjectMeta) MarshalTo(dAtA []byte) (int, error) { } } if len(m.Annotations) > 0 { + keysForAnnotations := make([]string, 0, len(m.Annotations)) for k := range m.Annotations { + keysForAnnotations = append(keysForAnnotations, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForAnnotations) + for _, k := range keysForAnnotations { dAtA[i] = 0x62 i++ - v := m.Annotations[k] + v := m.Annotations[string(k)] mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v))) i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) dAtA[i] = 0xa @@ -1622,6 +1659,12 @@ func (m *APIResource) Size() (n int) { } l = len(m.SingularName) 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 } @@ -2105,6 +2148,7 @@ func (this *APIResource) String() string { `Verbs:` + strings.Replace(fmt.Sprintf("%v", this.Verbs), "Verbs", "Verbs", 1) + `,`, `ShortNames:` + fmt.Sprintf("%v", this.ShortNames) + `,`, `SingularName:` + fmt.Sprintf("%v", this.SingularName) + `,`, + `Categories:` + fmt.Sprintf("%v", this.Categories) + `,`, `}`, }, "") return s @@ -2880,6 +2924,35 @@ func (m *APIResource) Unmarshal(dAtA []byte) error { } m.SingularName = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex + case 7: + 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:]) @@ -7292,151 +7365,152 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 2322 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x59, 0xcd, 0x6f, 0x23, 0x49, - 0x15, 0x4f, 0x3b, 0xb1, 0xc7, 0x7e, 0x8e, 0xf3, 0x51, 0x9b, 0x01, 0x6f, 0x04, 0x71, 0xb6, 0x77, - 0xb5, 0x9a, 0x85, 0x59, 0x9b, 0x64, 0x61, 0x35, 0x0c, 0x30, 0x90, 0x8e, 0x33, 0xa3, 0x68, 0xe7, - 0xc3, 0xaa, 0xec, 0x0c, 0x62, 0x18, 0x21, 0x3a, 0xdd, 0x15, 0xa7, 0x49, 0xbb, 0xbb, 0xa9, 0x2a, - 0x67, 0x12, 0xf6, 0xc0, 0x1e, 0x40, 0xe2, 0x80, 0xd0, 0x1c, 0xf7, 0x84, 0x66, 0x04, 0x7f, 0x01, - 0x77, 0x38, 0x21, 0x31, 0xc7, 0x95, 0xb8, 0x70, 0x40, 0xd6, 0x8e, 0xf7, 0xc0, 0x09, 0x71, 0x8f, - 0x84, 0x84, 0xaa, 0xba, 0xfa, 0xcb, 0x8e, 0x37, 0xed, 0x9d, 0x3d, 0x70, 0x8a, 0xfb, 0x7d, 0xfc, - 0xde, 0xab, 0x7a, 0xaf, 0xde, 0x7b, 0x55, 0x81, 0x3b, 0x47, 0xd7, 0x58, 0xd3, 0xf1, 0x5b, 0x47, - 0xfd, 0x7d, 0x42, 0x3d, 0xc2, 0x09, 0x6b, 0x1d, 0x13, 0xcf, 0xf6, 0x69, 0x4b, 0x31, 0xcc, 0xc0, - 0xe9, 0x99, 0xd6, 0xa1, 0xe3, 0x11, 0x7a, 0xda, 0x0a, 0x8e, 0xba, 0x82, 0xc0, 0x5a, 0x3d, 0xc2, - 0xcd, 0xd6, 0xf1, 0x46, 0xab, 0x4b, 0x3c, 0x42, 0x4d, 0x4e, 0xec, 0x66, 0x40, 0x7d, 0xee, 0xa3, - 0x37, 0x42, 0xad, 0x66, 0x5a, 0xab, 0x19, 0x1c, 0x75, 0x05, 0x81, 0x35, 0x85, 0x56, 0xf3, 0x78, - 0x63, 0xf5, 0xed, 0xae, 0xc3, 0x0f, 0xfb, 0xfb, 0x4d, 0xcb, 0xef, 0xb5, 0xba, 0x7e, 0xd7, 0x6f, - 0x49, 0xe5, 0xfd, 0xfe, 0x81, 0xfc, 0x92, 0x1f, 0xf2, 0x57, 0x08, 0xba, 0x3a, 0xd1, 0x15, 0xda, - 0xf7, 0xb8, 0xd3, 0x23, 0xa3, 0x5e, 0xac, 0xbe, 0x7b, 0x91, 0x02, 0xb3, 0x0e, 0x49, 0xcf, 0x1c, - 0xd3, 0x7b, 0x67, 0x92, 0x5e, 0x9f, 0x3b, 0x6e, 0xcb, 0xf1, 0x38, 0xe3, 0x74, 0x54, 0x49, 0xff, - 0xdb, 0x2c, 0x94, 0xb7, 0x3a, 0xbb, 0xb7, 0xa8, 0xdf, 0x0f, 0xd0, 0x3a, 0xcc, 0x79, 0x66, 0x8f, - 0xd4, 0xb5, 0x75, 0xed, 0x4a, 0xc5, 0x98, 0x7f, 0x3e, 0x68, 0xcc, 0x0c, 0x07, 0x8d, 0xb9, 0xbb, - 0x66, 0x8f, 0x60, 0xc9, 0x41, 0x2e, 0x94, 0x8f, 0x09, 0x65, 0x8e, 0xef, 0xb1, 0x7a, 0x61, 0x7d, - 0xf6, 0x4a, 0x75, 0xf3, 0x46, 0x33, 0xcf, 0xa6, 0x35, 0xa5, 0x81, 0x07, 0xa1, 0xea, 0x4d, 0x9f, - 0xb6, 0x1d, 0x66, 0xf9, 0xc7, 0x84, 0x9e, 0x1a, 0x4b, 0xca, 0x4a, 0x59, 0x31, 0x19, 0x8e, 0x2d, - 0xa0, 0x5f, 0x69, 0xb0, 0x14, 0x50, 0x72, 0x40, 0x28, 0x25, 0xb6, 0xe2, 0xd7, 0x67, 0xd7, 0xb5, - 0x2f, 0xc0, 0x6c, 0x5d, 0x99, 0x5d, 0xea, 0x8c, 0xe0, 0xe3, 0x31, 0x8b, 0xe8, 0x0f, 0x1a, 0xac, - 0x32, 0x42, 0x8f, 0x09, 0xdd, 0xb2, 0x6d, 0x4a, 0x18, 0x33, 0x4e, 0xb7, 0x5d, 0x87, 0x78, 0x7c, - 0x7b, 0xb7, 0x8d, 0x59, 0x7d, 0x4e, 0xee, 0xc3, 0xf7, 0xf3, 0x39, 0xb4, 0x37, 0x09, 0xc7, 0xd0, - 0x95, 0x47, 0xab, 0x13, 0x45, 0x18, 0xfe, 0x0c, 0x37, 0xf4, 0x03, 0x98, 0x8f, 0x02, 0x79, 0xdb, - 0x61, 0x1c, 0x3d, 0x80, 0x52, 0x57, 0x7c, 0xb0, 0xba, 0x26, 0x1d, 0x6c, 0xe6, 0x73, 0x30, 0xc2, - 0x30, 0x16, 0x94, 0x3f, 0x25, 0xf9, 0xc9, 0xb0, 0x42, 0xd3, 0xff, 0x5c, 0x80, 0xea, 0x56, 0x67, - 0x17, 0x13, 0xe6, 0xf7, 0xa9, 0x45, 0x72, 0x24, 0xcd, 0x26, 0x80, 0xf8, 0xcb, 0x02, 0xd3, 0x22, - 0x76, 0xbd, 0xb0, 0xae, 0x5d, 0x29, 0x1b, 0x48, 0xc9, 0xc1, 0xdd, 0x98, 0x83, 0x53, 0x52, 0x02, - 0xf5, 0xc8, 0xf1, 0x6c, 0x19, 0xed, 0x14, 0xea, 0x7b, 0x8e, 0x67, 0x63, 0xc9, 0x41, 0xb7, 0xa1, - 0x78, 0x4c, 0xe8, 0xbe, 0xd8, 0x7f, 0x91, 0x10, 0x5f, 0xcf, 0xb7, 0xbc, 0x07, 0x42, 0xc5, 0xa8, - 0x0c, 0x07, 0x8d, 0xa2, 0xfc, 0x89, 0x43, 0x10, 0xd4, 0x04, 0x60, 0x87, 0x3e, 0xe5, 0xd2, 0x9d, - 0x7a, 0x71, 0x7d, 0xf6, 0x4a, 0xc5, 0x58, 0x10, 0xfe, 0xed, 0xc5, 0x54, 0x9c, 0x92, 0x40, 0xd7, - 0x60, 0x9e, 0x39, 0x5e, 0xb7, 0xef, 0x9a, 0x54, 0x10, 0xea, 0x25, 0xe9, 0xe7, 0x8a, 0xf2, 0x73, - 0x7e, 0x2f, 0xc5, 0xc3, 0x19, 0x49, 0xfd, 0x4f, 0x1a, 0x2c, 0xa6, 0xf6, 0x4f, 0xc6, 0xea, 0x1a, - 0xcc, 0x77, 0x53, 0x99, 0xaa, 0xf6, 0x32, 0x46, 0x4b, 0x67, 0x31, 0xce, 0x48, 0x22, 0x02, 0x15, - 0xaa, 0x90, 0xa2, 0x13, 0xb9, 0x91, 0x3b, 0xd0, 0x91, 0x0f, 0x89, 0xa5, 0x14, 0x91, 0xe1, 0x04, - 0x59, 0xff, 0x97, 0x26, 0x83, 0x1e, 0x9d, 0x51, 0x74, 0x25, 0x55, 0x07, 0x34, 0xb9, 0x59, 0xf3, - 0x13, 0xce, 0xf0, 0x05, 0x87, 0xa7, 0xf0, 0x7f, 0x71, 0x78, 0xae, 0x97, 0x3f, 0x7a, 0xda, 0x98, - 0xf9, 0xf0, 0x9f, 0xeb, 0x33, 0xfa, 0xa7, 0x05, 0xa8, 0xb5, 0x89, 0x4b, 0x38, 0xb9, 0x17, 0x70, - 0xb9, 0x82, 0x9b, 0x80, 0xba, 0xd4, 0xb4, 0x48, 0x87, 0x50, 0xc7, 0xb7, 0xf7, 0x88, 0xe5, 0x7b, - 0x36, 0x93, 0x21, 0x9a, 0x35, 0xbe, 0x34, 0x1c, 0x34, 0xd0, 0xad, 0x31, 0x2e, 0x3e, 0x47, 0x03, - 0xb9, 0x50, 0x0b, 0xa8, 0xfc, 0xed, 0x70, 0x55, 0x40, 0x45, 0xe2, 0xbe, 0x93, 0x6f, 0xed, 0x9d, - 0xb4, 0xaa, 0xb1, 0x3c, 0x1c, 0x34, 0x6a, 0x19, 0x12, 0xce, 0x82, 0xa3, 0x1f, 0xc0, 0x92, 0x4f, - 0x83, 0x43, 0xd3, 0x6b, 0x93, 0x80, 0x78, 0x36, 0xf1, 0x38, 0x93, 0x87, 0xa9, 0x6c, 0xac, 0x88, - 0xb2, 0x77, 0x6f, 0x84, 0x87, 0xc7, 0xa4, 0xd1, 0x43, 0x58, 0x0e, 0xa8, 0x1f, 0x98, 0x5d, 0x53, - 0x20, 0x76, 0x7c, 0xd7, 0xb1, 0x4e, 0xe5, 0x61, 0xab, 0x18, 0x57, 0x87, 0x83, 0xc6, 0x72, 0x67, - 0x94, 0x79, 0x36, 0x68, 0xbc, 0x22, 0xb7, 0x4e, 0x50, 0x12, 0x26, 0x1e, 0x87, 0xd1, 0x77, 0xa1, - 0xdc, 0xee, 0x53, 0x49, 0x41, 0xdf, 0x83, 0xb2, 0xad, 0x7e, 0xab, 0x5d, 0x7d, 0x2d, 0xea, 0x09, - 0x91, 0xcc, 0xd9, 0xa0, 0x51, 0x13, 0xad, 0xaf, 0x19, 0x11, 0x70, 0xac, 0xa2, 0x3f, 0x82, 0xda, - 0xce, 0x49, 0xe0, 0x53, 0x1e, 0xc5, 0xeb, 0x4d, 0x28, 0x11, 0x49, 0x90, 0x68, 0xe5, 0xa4, 0x90, - 0x85, 0x62, 0x58, 0x71, 0xd1, 0xeb, 0x50, 0x24, 0x27, 0xa6, 0xc5, 0x55, 0x45, 0xaa, 0x29, 0xb1, - 0xe2, 0x8e, 0x20, 0xe2, 0x90, 0xa7, 0x3f, 0xd3, 0x00, 0x6e, 0x91, 0x18, 0x7b, 0x0b, 0x16, 0xa3, - 0x43, 0x91, 0x3d, 0xab, 0x5f, 0x56, 0xda, 0x8b, 0x38, 0xcb, 0xc6, 0xa3, 0xf2, 0xa8, 0x03, 0x2b, - 0x8e, 0x67, 0xb9, 0x7d, 0x9b, 0xdc, 0xf7, 0x1c, 0xcf, 0xe1, 0x8e, 0xe9, 0x3a, 0xbf, 0x88, 0xeb, - 0xe2, 0x57, 0x14, 0xce, 0xca, 0xee, 0x39, 0x32, 0xf8, 0x5c, 0x4d, 0xfd, 0x11, 0x54, 0x64, 0x85, - 0x10, 0xc5, 0x51, 0xac, 0x4a, 0x16, 0x08, 0xe5, 0x57, 0xbc, 0x2a, 0x29, 0x81, 0x43, 0x5e, 0x5c, - 0x5d, 0x0b, 0x93, 0xaa, 0x6b, 0xea, 0x40, 0xb8, 0x50, 0x0b, 0x75, 0xa3, 0x82, 0x9f, 0xcb, 0xc2, - 0x55, 0x28, 0x47, 0x0b, 0x57, 0x56, 0xe2, 0x46, 0x1f, 0x01, 0xe1, 0x58, 0x22, 0x65, 0xed, 0x10, - 0x32, 0xd5, 0x2e, 0x9f, 0xb1, 0xb7, 0xe0, 0x92, 0xaa, 0x37, 0xca, 0xd6, 0xa2, 0x12, 0xbb, 0x14, - 0x45, 0x21, 0xe2, 0xa7, 0x2c, 0xfd, 0x12, 0xea, 0x93, 0xa6, 0x83, 0x97, 0xa8, 0xc7, 0xf9, 0x5d, - 0xd1, 0x7f, 0xa7, 0xc1, 0x52, 0x1a, 0x29, 0x7f, 0xf8, 0xf2, 0x1b, 0xb9, 0xb8, 0x8f, 0xa6, 0x76, - 0xe4, 0xf7, 0x1a, 0xac, 0x64, 0x96, 0x36, 0x55, 0xc4, 0xa7, 0x70, 0x2a, 0x9d, 0x1c, 0xb3, 0x53, - 0x24, 0x47, 0x0b, 0xaa, 0xbb, 0x71, 0xde, 0xd3, 0x8b, 0x27, 0x0f, 0xfd, 0x2f, 0x1a, 0xcc, 0xa7, - 0x34, 0x18, 0x7a, 0x04, 0x97, 0x44, 0x7d, 0x73, 0xbc, 0xae, 0x9a, 0x8a, 0x72, 0x36, 0xcb, 0x14, - 0x48, 0xb2, 0xae, 0x4e, 0x88, 0x84, 0x23, 0x48, 0xd4, 0x81, 0x12, 0x25, 0xac, 0xef, 0x72, 0x55, - 0xda, 0xaf, 0xe6, 0x6c, 0x6b, 0xdc, 0xe4, 0x7d, 0x66, 0x80, 0xa8, 0x51, 0x58, 0xea, 0x63, 0x85, - 0xa3, 0xff, 0xbd, 0x00, 0xb5, 0xdb, 0xe6, 0x3e, 0x71, 0xf7, 0x88, 0x4b, 0x2c, 0xee, 0x53, 0xf4, - 0x01, 0x54, 0x7b, 0x26, 0xb7, 0x0e, 0x25, 0x35, 0x9a, 0xed, 0xda, 0xf9, 0x0c, 0x65, 0x90, 0x9a, - 0x77, 0x12, 0x98, 0x1d, 0x8f, 0xd3, 0x53, 0xe3, 0x15, 0xb5, 0xb0, 0x6a, 0x8a, 0x83, 0xd3, 0xd6, - 0xe4, 0x40, 0x2e, 0xbf, 0x77, 0x4e, 0x02, 0xd1, 0x44, 0xa7, 0xbf, 0x07, 0x64, 0x5c, 0xc0, 0xe4, - 0xe7, 0x7d, 0x87, 0x92, 0x1e, 0xf1, 0x78, 0x32, 0x90, 0xdf, 0x19, 0xc1, 0xc7, 0x63, 0x16, 0x57, - 0x6f, 0xc0, 0xd2, 0xa8, 0xf3, 0x68, 0x09, 0x66, 0x8f, 0xc8, 0x69, 0x98, 0x0b, 0x58, 0xfc, 0x44, - 0x2b, 0x50, 0x3c, 0x36, 0xdd, 0xbe, 0xaa, 0x3f, 0x38, 0xfc, 0xb8, 0x5e, 0xb8, 0xa6, 0xe9, 0x7f, - 0xd4, 0xa0, 0x3e, 0xc9, 0x11, 0xf4, 0xd5, 0x14, 0x90, 0x51, 0x55, 0x5e, 0xcd, 0xbe, 0x47, 0x4e, - 0x43, 0xd4, 0x1d, 0x28, 0xfb, 0x81, 0xb8, 0x42, 0xf9, 0x54, 0xe5, 0xf9, 0x5b, 0x51, 0xee, 0xde, - 0x53, 0xf4, 0xb3, 0x41, 0xe3, 0x72, 0x06, 0x3e, 0x62, 0xe0, 0x58, 0x15, 0xe9, 0x50, 0x92, 0xfe, - 0x88, 0xa6, 0x2c, 0xc6, 0x27, 0x19, 0xfc, 0x07, 0x92, 0x82, 0x15, 0x47, 0xff, 0x00, 0xca, 0x62, - 0x3a, 0xbc, 0x43, 0xb8, 0x29, 0x8e, 0x0c, 0x23, 0xee, 0xc1, 0x6d, 0xc7, 0x3b, 0x52, 0xae, 0xc5, - 0x47, 0x66, 0x4f, 0xd1, 0x71, 0x2c, 0x71, 0x5e, 0x9b, 0x2a, 0x4c, 0xd7, 0xa6, 0xf4, 0xff, 0x16, - 0xa0, 0x2a, 0xac, 0x47, 0x9d, 0xef, 0x3b, 0x50, 0x73, 0xd3, 0x6b, 0x52, 0x5e, 0x5c, 0x56, 0x80, - 0xd9, 0x2c, 0xc5, 0x59, 0x59, 0xa1, 0x7c, 0xe0, 0x10, 0xd7, 0x8e, 0x95, 0x0b, 0x59, 0xe5, 0x9b, - 0x69, 0x26, 0xce, 0xca, 0x8a, 0xea, 0xf3, 0x58, 0x44, 0x5b, 0x8d, 0x2f, 0x71, 0xf5, 0xf9, 0xa1, - 0x20, 0xe2, 0x90, 0x77, 0xde, 0x8a, 0xe7, 0xa6, 0x6c, 0xcc, 0xd7, 0x61, 0x41, 0xcc, 0x18, 0x7e, - 0x9f, 0x47, 0x33, 0x5e, 0x51, 0x4e, 0x23, 0x68, 0x38, 0x68, 0x2c, 0xbc, 0x9f, 0xe1, 0xe0, 0x11, - 0xc9, 0x89, 0x4d, 0xbd, 0xf4, 0xb9, 0x9b, 0xfa, 0xbf, 0x01, 0xe0, 0xde, 0xfe, 0xcf, 0x88, 0x15, - 0xc6, 0xff, 0xe2, 0x5b, 0x96, 0xe8, 0x59, 0xea, 0x72, 0x2f, 0x6f, 0x24, 0x85, 0x91, 0x9e, 0x95, - 0xe2, 0xe1, 0x8c, 0x24, 0x6a, 0x41, 0x25, 0xbe, 0x79, 0xa9, 0x7a, 0xbc, 0xac, 0xd4, 0x2a, 0xf1, - 0xf5, 0x0c, 0x27, 0x32, 0x99, 0x64, 0x9c, 0xbb, 0x30, 0x19, 0x0d, 0x98, 0xed, 0x3b, 0xb6, 0xdc, - 0xcc, 0x8a, 0xf1, 0x8d, 0xe8, 0x40, 0xdd, 0xdf, 0x6d, 0x9f, 0x0d, 0x1a, 0xaf, 0x4d, 0x7a, 0xb3, - 0xe0, 0xa7, 0x01, 0x61, 0xcd, 0xfb, 0xbb, 0x6d, 0x2c, 0x94, 0xcf, 0x0b, 0x6f, 0x69, 0xca, 0xf0, - 0x6e, 0x02, 0xa8, 0x55, 0x0b, 0xed, 0x4b, 0x61, 0x68, 0xa3, 0x5b, 0xe8, 0xad, 0x98, 0x83, 0x53, - 0x52, 0x88, 0xc1, 0xb2, 0x45, 0x89, 0xfc, 0x2d, 0x12, 0x80, 0x71, 0xb3, 0x17, 0xd4, 0xcb, 0xb2, - 0xb6, 0x7f, 0x2d, 0x5f, 0xbd, 0x13, 0x6a, 0xc6, 0xab, 0xca, 0xcc, 0xf2, 0xf6, 0x28, 0x18, 0x1e, - 0xc7, 0x47, 0x3e, 0x2c, 0xdb, 0x6a, 0x8a, 0x4e, 0x8c, 0x56, 0xa6, 0x36, 0x7a, 0x59, 0x18, 0x6c, - 0x8f, 0x02, 0xe1, 0x71, 0x6c, 0xf4, 0x13, 0x58, 0x8d, 0x88, 0xe3, 0x57, 0x99, 0x3a, 0xc8, 0x9d, - 0x5a, 0x13, 0x97, 0xab, 0xf6, 0x44, 0x29, 0xfc, 0x19, 0x08, 0xc8, 0x86, 0x92, 0x1b, 0x76, 0xab, - 0xaa, 0x6c, 0x15, 0xdf, 0xcd, 0xb7, 0x8a, 0x24, 0xfb, 0x9b, 0xe9, 0x2e, 0x15, 0x8f, 0xf3, 0xaa, - 0x41, 0x29, 0x6c, 0x74, 0x02, 0x55, 0xd3, 0xf3, 0x7c, 0x6e, 0x86, 0x97, 0xab, 0x79, 0x69, 0x6a, - 0x6b, 0x6a, 0x53, 0x5b, 0x09, 0xc6, 0x48, 0x57, 0x4c, 0x71, 0x70, 0xda, 0x14, 0x7a, 0x0c, 0x8b, - 0xfe, 0x63, 0x8f, 0x50, 0x4c, 0x0e, 0x08, 0x25, 0x9e, 0xb8, 0x89, 0xd7, 0xa4, 0xf5, 0x6f, 0xe6, - 0xb4, 0x9e, 0x51, 0x4e, 0x52, 0x3a, 0x4b, 0x67, 0x78, 0xd4, 0x0a, 0x6a, 0x02, 0x1c, 0x38, 0x9e, - 0x9a, 0x6d, 0xea, 0x0b, 0xc9, 0xa3, 0xc5, 0xcd, 0x98, 0x8a, 0x53, 0x12, 0xe8, 0x5b, 0x50, 0xb5, - 0xdc, 0x3e, 0xe3, 0x24, 0x7c, 0xb3, 0x58, 0x94, 0x27, 0x28, 0x5e, 0xdf, 0x76, 0xc2, 0xc2, 0x69, - 0x39, 0x74, 0x08, 0xf3, 0x4e, 0x6a, 0x88, 0xaa, 0x2f, 0xc9, 0x5c, 0xdc, 0x9c, 0x7a, 0x72, 0x62, - 0xc6, 0x92, 0xa8, 0x44, 0x69, 0x0a, 0xce, 0x20, 0xaf, 0x7e, 0x1b, 0xaa, 0x9f, 0xb3, 0xa7, 0x8b, - 0x99, 0x60, 0x34, 0x74, 0x53, 0xcd, 0x04, 0x7f, 0x2d, 0xc0, 0x42, 0x76, 0xc3, 0xe3, 0xd9, 0x59, - 0x9b, 0xf8, 0x06, 0x15, 0x55, 0xe5, 0xd9, 0x89, 0x55, 0x59, 0x15, 0xbf, 0xb9, 0x97, 0x29, 0x7e, - 0x9b, 0x00, 0x66, 0xe0, 0x44, 0x75, 0x2f, 0xac, 0xa3, 0x71, 0xe5, 0x4a, 0x5e, 0x65, 0x70, 0x4a, - 0x4a, 0xa4, 0x86, 0xe5, 0x7b, 0x9c, 0xfa, 0xae, 0x4b, 0xa8, 0x6a, 0x43, 0x32, 0x35, 0xb6, 0x63, - 0x2a, 0x4e, 0x49, 0xa0, 0x9b, 0x80, 0xf6, 0x5d, 0xdf, 0x3a, 0x92, 0x5b, 0x10, 0x9d, 0x73, 0x59, - 0x25, 0xcb, 0xe1, 0x23, 0x87, 0x31, 0xc6, 0xc5, 0xe7, 0x68, 0xe8, 0xf7, 0x20, 0xfb, 0x2c, 0x81, - 0x6e, 0x84, 0x1b, 0xa0, 0xc5, 0xef, 0x06, 0xd3, 0x2d, 0x5e, 0xbf, 0x0a, 0x15, 0xec, 0xfb, 0xbc, - 0x63, 0xf2, 0x43, 0x86, 0x1a, 0x50, 0x0c, 0xc4, 0x0f, 0xf5, 0xe6, 0x24, 0x9f, 0xf1, 0x24, 0x07, - 0x87, 0x74, 0xfd, 0xb7, 0x1a, 0xbc, 0x3a, 0xf1, 0x09, 0x48, 0x6c, 0xa4, 0x15, 0x7f, 0x29, 0x97, - 0xe2, 0x8d, 0x4c, 0xe4, 0x70, 0x4a, 0x4a, 0x8c, 0x2e, 0x99, 0x77, 0xa3, 0xd1, 0xd1, 0x25, 0x63, - 0x0d, 0x67, 0x65, 0xf5, 0xff, 0x14, 0xa0, 0x14, 0x4e, 0xf7, 0xe8, 0x11, 0x94, 0xc5, 0x91, 0xb0, - 0x4d, 0x6e, 0x4a, 0xcb, 0xb9, 0x1f, 0x64, 0xa3, 0x11, 0x30, 0xe9, 0xb1, 0x11, 0x05, 0xc7, 0x88, - 0xe8, 0x4d, 0x28, 0x31, 0x69, 0x47, 0xb9, 0x17, 0x17, 0xc9, 0xd0, 0x3a, 0x56, 0x5c, 0x71, 0x49, - 0xeb, 0x11, 0xc6, 0xcc, 0x6e, 0x94, 0xb3, 0xf1, 0x65, 0xe6, 0x4e, 0x48, 0xc6, 0x11, 0x1f, 0xbd, - 0x2b, 0x2e, 0x33, 0x26, 0x8b, 0x07, 0xa9, 0xb5, 0x08, 0x12, 0x4b, 0xea, 0xd9, 0xa0, 0x31, 0xaf, - 0xc0, 0xe5, 0x37, 0x56, 0xd2, 0xe8, 0x21, 0x5c, 0xb2, 0x09, 0x37, 0x1d, 0x37, 0x9c, 0x9f, 0x72, - 0x3f, 0x70, 0x85, 0x60, 0xed, 0x50, 0xd5, 0xa8, 0x0a, 0x9f, 0xd4, 0x07, 0x8e, 0x00, 0xc5, 0x79, - 0xb3, 0x7c, 0x3b, 0x7c, 0x6d, 0x2d, 0x26, 0xe7, 0x6d, 0xdb, 0xb7, 0x09, 0x96, 0x1c, 0xfd, 0x89, - 0x06, 0xd5, 0x10, 0x69, 0xdb, 0xec, 0x33, 0x82, 0x36, 0xe2, 0x55, 0x84, 0xe1, 0x8e, 0x5a, 0xf1, - 0xdc, 0xfb, 0xa7, 0x01, 0x39, 0x1b, 0x34, 0x2a, 0x52, 0x4c, 0x7c, 0xc4, 0x0b, 0x48, 0xed, 0x51, - 0xe1, 0x82, 0x3d, 0x7a, 0x1d, 0x8a, 0x72, 0x56, 0x55, 0x9b, 0x19, 0x8f, 0xa6, 0x72, 0x9e, 0xc5, - 0x21, 0x4f, 0xff, 0xa4, 0x00, 0xb5, 0xcc, 0xe2, 0x72, 0x0c, 0x73, 0xf1, 0x8d, 0xbb, 0x90, 0xe3, - 0x15, 0x67, 0xf2, 0x1b, 0xf9, 0x8f, 0xa0, 0x64, 0x89, 0xf5, 0x45, 0xff, 0xa4, 0xd8, 0x98, 0x26, - 0x14, 0x72, 0x67, 0x92, 0x4c, 0x92, 0x9f, 0x0c, 0x2b, 0x40, 0x74, 0x0b, 0x96, 0x29, 0xe1, 0xf4, - 0x74, 0xeb, 0x80, 0x13, 0x9a, 0x1e, 0x98, 0x8b, 0xc9, 0xb8, 0x83, 0x47, 0x05, 0xf0, 0xb8, 0x4e, - 0x54, 0x21, 0x4b, 0x2f, 0x51, 0x21, 0x75, 0x17, 0xe6, 0xc4, 0x38, 0x23, 0x42, 0xc7, 0x32, 0xef, - 0xb3, 0x71, 0xe8, 0x22, 0x07, 0x22, 0xbe, 0xd8, 0x61, 0xcf, 0xf4, 0xfc, 0xf0, 0xc0, 0x14, 0x93, - 0x1d, 0xbe, 0x2b, 0x88, 0x38, 0xe4, 0x5d, 0x5f, 0xf9, 0xe8, 0x69, 0x63, 0xe6, 0x37, 0xcf, 0x1a, - 0x33, 0x4f, 0x9e, 0x35, 0x66, 0x9e, 0x3e, 0x53, 0xcf, 0x10, 0x3f, 0x86, 0x4a, 0x32, 0x3c, 0x7d, - 0xc1, 0x26, 0xf5, 0x9f, 0x42, 0x59, 0x64, 0x63, 0x34, 0xf4, 0x5f, 0xd0, 0x80, 0xb2, 0xad, 0xa1, - 0x90, 0xa7, 0x35, 0xe8, 0x9b, 0x10, 0xfe, 0xeb, 0x43, 0x54, 0x53, 0x87, 0x93, 0x5e, 0xa6, 0x9a, - 0xee, 0x0a, 0x02, 0x0e, 0xe9, 0xa9, 0x97, 0x97, 0x5f, 0x6b, 0x00, 0xf2, 0xbe, 0xb5, 0x73, 0x2c, - 0xee, 0xc8, 0xeb, 0x30, 0x27, 0x22, 0x30, 0xea, 0x98, 0x3c, 0x46, 0x92, 0x83, 0xee, 0x43, 0xc9, - 0x97, 0x43, 0x95, 0x7a, 0x0a, 0x79, 0x7b, 0x62, 0xe6, 0xa9, 0xff, 0x6a, 0x36, 0xb1, 0xf9, 0x78, - 0xe7, 0x84, 0x13, 0x4f, 0xf8, 0x98, 0x64, 0x5d, 0x38, 0x99, 0x61, 0x05, 0x66, 0xbc, 0xf1, 0xfc, - 0xc5, 0xda, 0xcc, 0xc7, 0x2f, 0xd6, 0x66, 0xfe, 0xf1, 0x62, 0x6d, 0xe6, 0xc3, 0xe1, 0x9a, 0xf6, - 0x7c, 0xb8, 0xa6, 0x7d, 0x3c, 0x5c, 0xd3, 0x3e, 0x19, 0xae, 0x69, 0x4f, 0x3e, 0x5d, 0x9b, 0x79, - 0x58, 0x38, 0xde, 0xf8, 0x5f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xf6, 0x0e, 0xfb, 0x43, 0x17, 0x1e, - 0x00, 0x00, + // 2351 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x59, 0xcd, 0x6f, 0x1b, 0xc7, + 0x15, 0xd7, 0x52, 0x22, 0x45, 0x3e, 0x8a, 0xfa, 0x98, 0xc8, 0x2d, 0x23, 0xb4, 0xa4, 0xb2, 0x29, + 0x02, 0xa5, 0x75, 0xc8, 0x4a, 0x69, 0x03, 0xd7, 0x6d, 0xdd, 0x6a, 0x45, 0xd9, 0x10, 0x62, 0xd9, + 0xc4, 0x28, 0x76, 0x51, 0xd7, 0x28, 0xba, 0x5a, 0x8e, 0xa8, 0xad, 0x96, 0xbb, 0x9b, 0x99, 0xa1, + 0x6c, 0x35, 0x87, 0xe6, 0xd0, 0x02, 0x3d, 0x14, 0x85, 0x8f, 0x3d, 0x15, 0x31, 0xda, 0xbf, 0xa0, + 0x7f, 0x40, 0x4f, 0x05, 0xea, 0x63, 0x80, 0x5e, 0x72, 0x28, 0x88, 0x98, 0x39, 0xf4, 0x14, 0xf4, + 0x2e, 0xa0, 0x40, 0x31, 0xb3, 0xb3, 0x5f, 0xa4, 0x18, 0x2d, 0xe3, 0xa0, 0xc8, 0x49, 0xdc, 0xf7, + 0xf1, 0x7b, 0x6f, 0x66, 0xde, 0xbc, 0xf7, 0xe6, 0x09, 0xf6, 0x4f, 0xae, 0xb1, 0x86, 0xed, 0x35, + 0x4f, 0xfa, 0x87, 0x84, 0xba, 0x84, 0x13, 0xd6, 0x3c, 0x25, 0x6e, 0xc7, 0xa3, 0x4d, 0xc5, 0x30, + 0x7d, 0xbb, 0x67, 0x5a, 0xc7, 0xb6, 0x4b, 0xe8, 0x59, 0xd3, 0x3f, 0xe9, 0x0a, 0x02, 0x6b, 0xf6, + 0x08, 0x37, 0x9b, 0xa7, 0x9b, 0xcd, 0x2e, 0x71, 0x09, 0x35, 0x39, 0xe9, 0x34, 0x7c, 0xea, 0x71, + 0x0f, 0x7d, 0x23, 0xd0, 0x6a, 0x24, 0xb5, 0x1a, 0xfe, 0x49, 0x57, 0x10, 0x58, 0x43, 0x68, 0x35, + 0x4e, 0x37, 0xd7, 0xde, 0xe8, 0xda, 0xfc, 0xb8, 0x7f, 0xd8, 0xb0, 0xbc, 0x5e, 0xb3, 0xeb, 0x75, + 0xbd, 0xa6, 0x54, 0x3e, 0xec, 0x1f, 0xc9, 0x2f, 0xf9, 0x21, 0x7f, 0x05, 0xa0, 0x6b, 0x13, 0x5d, + 0xa1, 0x7d, 0x97, 0xdb, 0x3d, 0x32, 0xea, 0xc5, 0xda, 0x5b, 0x97, 0x29, 0x30, 0xeb, 0x98, 0xf4, + 0xcc, 0x31, 0xbd, 0x37, 0x27, 0xe9, 0xf5, 0xb9, 0xed, 0x34, 0x6d, 0x97, 0x33, 0x4e, 0x47, 0x95, + 0xf4, 0x7f, 0xcc, 0x42, 0x71, 0xbb, 0xbd, 0x77, 0x8b, 0x7a, 0x7d, 0x1f, 0xad, 0xc3, 0x9c, 0x6b, + 0xf6, 0x48, 0x55, 0x5b, 0xd7, 0x36, 0x4a, 0xc6, 0xc2, 0xb3, 0x41, 0x7d, 0x66, 0x38, 0xa8, 0xcf, + 0xdd, 0x31, 0x7b, 0x04, 0x4b, 0x0e, 0x72, 0xa0, 0x78, 0x4a, 0x28, 0xb3, 0x3d, 0x97, 0x55, 0x73, + 0xeb, 0xb3, 0x1b, 0xe5, 0xad, 0x1b, 0x8d, 0x2c, 0x9b, 0xd6, 0x90, 0x06, 0xee, 0x07, 0xaa, 0x37, + 0x3d, 0xda, 0xb2, 0x99, 0xe5, 0x9d, 0x12, 0x7a, 0x66, 0x2c, 0x2b, 0x2b, 0x45, 0xc5, 0x64, 0x38, + 0xb2, 0x80, 0x7e, 0xa3, 0xc1, 0xb2, 0x4f, 0xc9, 0x11, 0xa1, 0x94, 0x74, 0x14, 0xbf, 0x3a, 0xbb, + 0xae, 0x7d, 0x01, 0x66, 0xab, 0xca, 0xec, 0x72, 0x7b, 0x04, 0x1f, 0x8f, 0x59, 0x44, 0x7f, 0xd6, + 0x60, 0x8d, 0x11, 0x7a, 0x4a, 0xe8, 0x76, 0xa7, 0x43, 0x09, 0x63, 0xc6, 0xd9, 0x8e, 0x63, 0x13, + 0x97, 0xef, 0xec, 0xb5, 0x30, 0xab, 0xce, 0xc9, 0x7d, 0xf8, 0x51, 0x36, 0x87, 0x0e, 0x26, 0xe1, + 0x18, 0xba, 0xf2, 0x68, 0x6d, 0xa2, 0x08, 0xc3, 0x9f, 0xe1, 0x86, 0x7e, 0x04, 0x0b, 0xe1, 0x41, + 0xde, 0xb6, 0x19, 0x47, 0xf7, 0xa1, 0xd0, 0x15, 0x1f, 0xac, 0xaa, 0x49, 0x07, 0x1b, 0xd9, 0x1c, + 0x0c, 0x31, 0x8c, 0x45, 0xe5, 0x4f, 0x41, 0x7e, 0x32, 0xac, 0xd0, 0xf4, 0x4f, 0x73, 0x50, 0xde, + 0x6e, 0xef, 0x61, 0xc2, 0xbc, 0x3e, 0xb5, 0x48, 0x86, 0xa0, 0xd9, 0x02, 0x10, 0x7f, 0x99, 0x6f, + 0x5a, 0xa4, 0x53, 0xcd, 0xad, 0x6b, 0x1b, 0x45, 0x03, 0x29, 0x39, 0xb8, 0x13, 0x71, 0x70, 0x42, + 0x4a, 0xa0, 0x9e, 0xd8, 0x6e, 0x47, 0x9e, 0x76, 0x02, 0xf5, 0x6d, 0xdb, 0xed, 0x60, 0xc9, 0x41, + 0xb7, 0x21, 0x7f, 0x4a, 0xe8, 0xa1, 0xd8, 0x7f, 0x11, 0x10, 0xdf, 0xca, 0xb6, 0xbc, 0xfb, 0x42, + 0xc5, 0x28, 0x0d, 0x07, 0xf5, 0xbc, 0xfc, 0x89, 0x03, 0x10, 0xd4, 0x00, 0x60, 0xc7, 0x1e, 0xe5, + 0xd2, 0x9d, 0x6a, 0x7e, 0x7d, 0x76, 0xa3, 0x64, 0x2c, 0x0a, 0xff, 0x0e, 0x22, 0x2a, 0x4e, 0x48, + 0xa0, 0x6b, 0xb0, 0xc0, 0x6c, 0xb7, 0xdb, 0x77, 0x4c, 0x2a, 0x08, 0xd5, 0x82, 0xf4, 0x73, 0x55, + 0xf9, 0xb9, 0x70, 0x90, 0xe0, 0xe1, 0x94, 0xa4, 0xb0, 0x64, 0x99, 0x9c, 0x74, 0x3d, 0x6a, 0x13, + 0x56, 0x9d, 0x8f, 0x2d, 0xed, 0x44, 0x54, 0x9c, 0x90, 0xd0, 0xff, 0xaa, 0xc1, 0x52, 0x62, 0xbf, + 0xe5, 0xd9, 0x5e, 0x83, 0x85, 0x6e, 0x22, 0xb2, 0xd5, 0xde, 0x47, 0xd6, 0x93, 0x51, 0x8f, 0x53, + 0x92, 0x88, 0x40, 0x89, 0x2a, 0xa4, 0xf0, 0x06, 0x6f, 0x66, 0x0e, 0x8c, 0xd0, 0x87, 0xd8, 0x52, + 0x82, 0xc8, 0x70, 0x8c, 0xac, 0xff, 0x5b, 0x93, 0x41, 0x12, 0xde, 0x69, 0xb4, 0x91, 0xc8, 0x1b, + 0x9a, 0x5c, 0xf2, 0xc2, 0x84, 0x3b, 0x7f, 0xc9, 0x65, 0xcb, 0x7d, 0x29, 0x2e, 0xdb, 0xf5, 0xe2, + 0x1f, 0x3f, 0xa8, 0xcf, 0xbc, 0xff, 0xaf, 0xf5, 0x19, 0xfd, 0x93, 0x1c, 0x54, 0x5a, 0xc4, 0x21, + 0x9c, 0xdc, 0xf5, 0xb9, 0x5c, 0xc1, 0x4d, 0x40, 0x5d, 0x6a, 0x5a, 0xa4, 0x4d, 0xa8, 0xed, 0x75, + 0x0e, 0x88, 0xe5, 0xb9, 0x1d, 0x26, 0x8f, 0x68, 0xd6, 0xf8, 0xca, 0x70, 0x50, 0x47, 0xb7, 0xc6, + 0xb8, 0xf8, 0x02, 0x0d, 0xe4, 0x40, 0xc5, 0xa7, 0xf2, 0xb7, 0xcd, 0x55, 0xc2, 0x15, 0x81, 0xfe, + 0x66, 0xb6, 0xb5, 0xb7, 0x93, 0xaa, 0xc6, 0xca, 0x70, 0x50, 0xaf, 0xa4, 0x48, 0x38, 0x0d, 0x8e, + 0x7e, 0x0c, 0xcb, 0x1e, 0xf5, 0x8f, 0x4d, 0xb7, 0x45, 0x7c, 0xe2, 0x76, 0x88, 0xcb, 0x99, 0xbc, + 0x7c, 0x45, 0x63, 0x55, 0xa4, 0xc9, 0xbb, 0x23, 0x3c, 0x3c, 0x26, 0x8d, 0x1e, 0xc0, 0x8a, 0x4f, + 0x3d, 0xdf, 0xec, 0x9a, 0x02, 0xb1, 0xed, 0x39, 0xb6, 0x75, 0x26, 0x2f, 0x67, 0xc9, 0xb8, 0x3a, + 0x1c, 0xd4, 0x57, 0xda, 0xa3, 0xcc, 0xf3, 0x41, 0xfd, 0x25, 0xb9, 0x75, 0x82, 0x12, 0x33, 0xf1, + 0x38, 0x8c, 0xbe, 0x07, 0xc5, 0x56, 0x9f, 0x4a, 0x0a, 0xfa, 0x21, 0x14, 0x3b, 0xea, 0xb7, 0xda, + 0xd5, 0x57, 0xc2, 0x1a, 0x12, 0xca, 0x9c, 0x0f, 0xea, 0x15, 0x51, 0x2a, 0x1b, 0x21, 0x01, 0x47, + 0x2a, 0xfa, 0x43, 0xa8, 0xec, 0x3e, 0xf6, 0x3d, 0xca, 0xc3, 0xf3, 0x7a, 0x0d, 0x0a, 0x44, 0x12, + 0x24, 0x5a, 0x31, 0x4e, 0x7c, 0x81, 0x18, 0x56, 0x5c, 0xf4, 0x2a, 0xe4, 0xc9, 0x63, 0xd3, 0xe2, + 0x2a, 0x83, 0x55, 0x94, 0x58, 0x7e, 0x57, 0x10, 0x71, 0xc0, 0xd3, 0x9f, 0x6a, 0x00, 0xb7, 0x48, + 0x84, 0xbd, 0x0d, 0x4b, 0xe1, 0xa5, 0x48, 0xdf, 0xd5, 0xaf, 0x2a, 0xed, 0x25, 0x9c, 0x66, 0xe3, + 0x51, 0x79, 0xd4, 0x86, 0x55, 0xdb, 0xb5, 0x9c, 0x7e, 0x87, 0xdc, 0x73, 0x6d, 0xd7, 0xe6, 0xb6, + 0xe9, 0xd8, 0xbf, 0x8a, 0xf2, 0xe8, 0xd7, 0x14, 0xce, 0xea, 0xde, 0x05, 0x32, 0xf8, 0x42, 0x4d, + 0xfd, 0x21, 0x94, 0x64, 0x86, 0x10, 0xc9, 0x54, 0xac, 0x4a, 0x26, 0x08, 0xe5, 0x57, 0xb4, 0x2a, + 0x29, 0x81, 0x03, 0x5e, 0x94, 0x8d, 0x73, 0x93, 0xb2, 0x71, 0xe2, 0x42, 0x38, 0x50, 0x09, 0x74, + 0xc3, 0x02, 0x91, 0xc9, 0xc2, 0x55, 0x28, 0x86, 0x0b, 0x57, 0x56, 0xa2, 0xc6, 0x20, 0x04, 0xc2, + 0x91, 0x44, 0xc2, 0xda, 0x31, 0xa4, 0xb2, 0x5d, 0x36, 0x63, 0xaf, 0xc3, 0xbc, 0xca, 0x37, 0xca, + 0xd6, 0x92, 0x12, 0x9b, 0x0f, 0x4f, 0x21, 0xe4, 0x27, 0x2c, 0xfd, 0x1a, 0xaa, 0x93, 0xba, 0x89, + 0x17, 0xc8, 0xc7, 0xd9, 0x5d, 0xd1, 0xff, 0xa0, 0xc1, 0x72, 0x12, 0x29, 0xfb, 0xf1, 0x65, 0x37, + 0x72, 0x79, 0xdd, 0x4d, 0xec, 0xc8, 0x9f, 0x34, 0x58, 0x4d, 0x2d, 0x6d, 0xaa, 0x13, 0x9f, 0xc2, + 0xa9, 0x64, 0x70, 0xcc, 0x4e, 0x11, 0x1c, 0x4d, 0x28, 0xef, 0x45, 0x71, 0x4f, 0x2f, 0xef, 0x54, + 0xf4, 0xbf, 0x69, 0xb0, 0x90, 0xd0, 0x60, 0xe8, 0x21, 0xcc, 0x8b, 0xfc, 0x66, 0xbb, 0x5d, 0xd5, + 0x45, 0x65, 0x2c, 0x96, 0x09, 0x90, 0x78, 0x5d, 0xed, 0x00, 0x09, 0x87, 0x90, 0xa8, 0x0d, 0x05, + 0x4a, 0x58, 0xdf, 0xe1, 0x2a, 0xb5, 0x5f, 0xcd, 0x58, 0xd6, 0xb8, 0xc9, 0xfb, 0xcc, 0x00, 0x91, + 0xa3, 0xb0, 0xd4, 0xc7, 0x0a, 0x47, 0xff, 0x67, 0x0e, 0x2a, 0xb7, 0xcd, 0x43, 0xe2, 0x1c, 0x10, + 0x87, 0x58, 0xdc, 0xa3, 0xe8, 0x3d, 0x28, 0xf7, 0x4c, 0x6e, 0x1d, 0x4b, 0x6a, 0xd8, 0x0b, 0xb6, + 0xb2, 0x19, 0x4a, 0x21, 0x35, 0xf6, 0x63, 0x98, 0x5d, 0x97, 0xd3, 0x33, 0xe3, 0x25, 0xb5, 0xb0, + 0x72, 0x82, 0x83, 0x93, 0xd6, 0x64, 0x03, 0x2f, 0xbf, 0x77, 0x1f, 0xfb, 0xa2, 0x88, 0x4e, 0xff, + 0x6e, 0x48, 0xb9, 0x80, 0xc9, 0xbb, 0x7d, 0x9b, 0x92, 0x1e, 0x71, 0x79, 0xdc, 0xc0, 0xef, 0x8f, + 0xe0, 0xe3, 0x31, 0x8b, 0x6b, 0x37, 0x60, 0x79, 0xd4, 0x79, 0xb4, 0x0c, 0xb3, 0x27, 0xe4, 0x2c, + 0x88, 0x05, 0x2c, 0x7e, 0xa2, 0x55, 0xc8, 0x9f, 0x9a, 0x4e, 0x5f, 0xe5, 0x1f, 0x1c, 0x7c, 0x5c, + 0xcf, 0x5d, 0xd3, 0xf4, 0xbf, 0x68, 0x50, 0x9d, 0xe4, 0x08, 0xfa, 0x7a, 0x02, 0xc8, 0x28, 0x2b, + 0xaf, 0x66, 0xdf, 0x26, 0x67, 0x01, 0xea, 0x2e, 0x14, 0x3d, 0x5f, 0x3c, 0xb9, 0x3c, 0xaa, 0xe2, + 0xfc, 0xf5, 0x30, 0x76, 0xef, 0x2a, 0xfa, 0xf9, 0xa0, 0x7e, 0x25, 0x05, 0x1f, 0x32, 0x70, 0xa4, + 0x8a, 0x74, 0x28, 0x48, 0x7f, 0x44, 0x51, 0x16, 0xed, 0x93, 0x3c, 0xfc, 0xfb, 0x92, 0x82, 0x15, + 0x47, 0x7f, 0x0f, 0x8a, 0xa2, 0x3b, 0xdc, 0x27, 0xdc, 0x14, 0x57, 0x86, 0x11, 0xe7, 0xe8, 0xb6, + 0xed, 0x9e, 0x28, 0xd7, 0xa2, 0x2b, 0x73, 0xa0, 0xe8, 0x38, 0x92, 0xb8, 0xa8, 0x4c, 0xe5, 0xa6, + 0x2b, 0x53, 0xfa, 0x7f, 0x73, 0x50, 0x16, 0xd6, 0xc3, 0xca, 0xf7, 0x7d, 0xa8, 0x38, 0xc9, 0x35, + 0x29, 0x2f, 0xae, 0x28, 0xc0, 0x74, 0x94, 0xe2, 0xb4, 0xac, 0x50, 0x3e, 0xb2, 0x89, 0xd3, 0x89, + 0x94, 0x73, 0x69, 0xe5, 0x9b, 0x49, 0x26, 0x4e, 0xcb, 0x8a, 0xec, 0xf3, 0x48, 0x9c, 0xb6, 0x6a, + 0x5f, 0xa2, 0xec, 0xf3, 0x13, 0x41, 0xc4, 0x01, 0xef, 0xa2, 0x15, 0xcf, 0x4d, 0x59, 0x98, 0xaf, + 0xc3, 0xa2, 0xe8, 0x31, 0xbc, 0x3e, 0x0f, 0x7b, 0xbc, 0xbc, 0xec, 0x46, 0xd0, 0x70, 0x50, 0x5f, + 0x7c, 0x27, 0xc5, 0xc1, 0x23, 0x92, 0x13, 0x8b, 0x7a, 0xe1, 0x73, 0x17, 0xf5, 0x77, 0xa1, 0xb4, + 0x6f, 0x5b, 0xd4, 0x13, 0x86, 0x45, 0x6e, 0x65, 0xa9, 0xbe, 0x33, 0xca, 0x41, 0xa1, 0x43, 0x21, + 0x5f, 0xec, 0x96, 0x6b, 0xba, 0x5e, 0xd0, 0x5d, 0xe6, 0xe3, 0xdd, 0xba, 0x23, 0x88, 0x38, 0xe0, + 0x5d, 0x5f, 0x15, 0x29, 0xf5, 0x77, 0x4f, 0xeb, 0x33, 0x4f, 0x9e, 0xd6, 0x67, 0x3e, 0x78, 0xaa, + 0xd2, 0xeb, 0xa7, 0x00, 0x70, 0xf7, 0xf0, 0x97, 0xc4, 0x0a, 0x42, 0xee, 0xf2, 0x87, 0xa0, 0x28, + 0x93, 0x6a, 0xfe, 0x20, 0x1f, 0x4d, 0xb9, 0x91, 0x32, 0x99, 0xe0, 0xe1, 0x94, 0x24, 0x6a, 0x42, + 0x29, 0x7a, 0x1c, 0xaa, 0x12, 0xb0, 0xa2, 0xd4, 0x4a, 0xd1, 0x0b, 0x12, 0xc7, 0x32, 0xa9, 0xf8, + 0x9f, 0xbb, 0x34, 0xfe, 0x0d, 0x98, 0xed, 0xdb, 0x1d, 0x79, 0x7e, 0x25, 0xe3, 0xdb, 0xe1, 0x1d, + 0xbe, 0xb7, 0xd7, 0x3a, 0x1f, 0xd4, 0x5f, 0x99, 0x34, 0x56, 0xe1, 0x67, 0x3e, 0x61, 0x8d, 0x7b, + 0x7b, 0x2d, 0x2c, 0x94, 0x2f, 0x8a, 0xa8, 0xc2, 0x94, 0x11, 0xb5, 0x05, 0xa0, 0x56, 0x2d, 0xb4, + 0xe7, 0x83, 0x68, 0x0a, 0x1f, 0xca, 0xb7, 0x22, 0x0e, 0x4e, 0x48, 0x21, 0x06, 0x2b, 0x16, 0x25, + 0xf2, 0xb7, 0x38, 0x7a, 0xc6, 0xcd, 0x9e, 0x5f, 0x2d, 0xca, 0x72, 0xf2, 0xcd, 0x6c, 0x29, 0x56, + 0xa8, 0x19, 0x2f, 0x2b, 0x33, 0x2b, 0x3b, 0xa3, 0x60, 0x78, 0x1c, 0x1f, 0x79, 0xb0, 0xd2, 0x51, + 0x8d, 0x7b, 0x6c, 0xb4, 0x34, 0xb5, 0xd1, 0x2b, 0xc2, 0x60, 0x6b, 0x14, 0x08, 0x8f, 0x63, 0xa3, + 0x9f, 0xc3, 0x5a, 0x48, 0x1c, 0x7f, 0x3d, 0x55, 0x41, 0xee, 0x54, 0x4d, 0xbc, 0xe7, 0x5a, 0x13, + 0xa5, 0xf0, 0x67, 0x20, 0xa0, 0x0e, 0x14, 0x9c, 0xa0, 0x40, 0x96, 0x65, 0x75, 0xfa, 0x41, 0xb6, + 0x55, 0xc4, 0xd1, 0xdf, 0x48, 0x16, 0xc6, 0xe8, 0x05, 0xa1, 0x6a, 0xa2, 0xc2, 0x46, 0x8f, 0xa1, + 0x6c, 0xba, 0xae, 0xc7, 0xcd, 0xe0, 0x3d, 0xb7, 0x20, 0x4d, 0x6d, 0x4f, 0x6d, 0x6a, 0x3b, 0xc6, + 0x18, 0x29, 0xc4, 0x09, 0x0e, 0x4e, 0x9a, 0x42, 0x8f, 0x60, 0xc9, 0x7b, 0xe4, 0x12, 0x8a, 0xc9, + 0x11, 0xa1, 0xc4, 0x15, 0x8f, 0xff, 0x8a, 0xb4, 0xfe, 0x9d, 0x8c, 0xd6, 0x53, 0xca, 0x71, 0x48, + 0xa7, 0xe9, 0x0c, 0x8f, 0x5a, 0x41, 0x0d, 0x80, 0x23, 0xdb, 0x55, 0xed, 0x54, 0x75, 0x31, 0x9e, + 0x76, 0xdc, 0x8c, 0xa8, 0x38, 0x21, 0x81, 0xbe, 0x0b, 0x65, 0xcb, 0xe9, 0x33, 0x4e, 0x82, 0xb1, + 0xca, 0x92, 0xbc, 0x41, 0xd1, 0xfa, 0x76, 0x62, 0x16, 0x4e, 0xca, 0xa1, 0x63, 0x58, 0xb0, 0x13, + 0x7d, 0x5b, 0x75, 0x59, 0xc6, 0xe2, 0xd6, 0xd4, 0xcd, 0x1a, 0x33, 0x96, 0x45, 0x26, 0x4a, 0x52, + 0x70, 0x0a, 0x79, 0xed, 0x7b, 0x50, 0xfe, 0x9c, 0x6d, 0x84, 0x68, 0x43, 0x46, 0x8f, 0x6e, 0xaa, + 0x36, 0xe4, 0xef, 0x39, 0x58, 0x4c, 0x6f, 0x78, 0xd4, 0xae, 0x6b, 0x13, 0xc7, 0x64, 0x61, 0x56, + 0x9e, 0x9d, 0x98, 0x95, 0x55, 0xf2, 0x9b, 0x7b, 0x91, 0xe4, 0xb7, 0x05, 0x60, 0xfa, 0x76, 0x98, + 0xf7, 0x82, 0x3c, 0x1a, 0x65, 0xae, 0x78, 0x10, 0x84, 0x13, 0x52, 0x72, 0x10, 0xe6, 0xb9, 0x9c, + 0x7a, 0x8e, 0x43, 0xa8, 0xaa, 0x7c, 0xc1, 0x20, 0x2c, 0xa2, 0xe2, 0x84, 0x04, 0xba, 0x09, 0xe8, + 0xd0, 0xf1, 0xac, 0x13, 0xb9, 0x05, 0xe1, 0x3d, 0x97, 0x59, 0xb2, 0x18, 0xcc, 0x55, 0x8c, 0x31, + 0x2e, 0xbe, 0x40, 0x43, 0xbf, 0x0b, 0xe9, 0x49, 0x08, 0xba, 0x11, 0x6c, 0x80, 0x16, 0x8d, 0x2a, + 0xa6, 0x5b, 0xbc, 0x7e, 0x15, 0x4a, 0xd8, 0xf3, 0x78, 0xdb, 0xe4, 0xc7, 0x0c, 0xd5, 0x21, 0xef, + 0x8b, 0x1f, 0x6a, 0xcc, 0x25, 0x27, 0x8d, 0x92, 0x83, 0x03, 0xba, 0xfe, 0x7b, 0x0d, 0x5e, 0x9e, + 0x38, 0x75, 0x12, 0x1b, 0x69, 0x45, 0x5f, 0xca, 0xa5, 0x68, 0x23, 0x63, 0x39, 0x9c, 0x90, 0x12, + 0xdd, 0x52, 0x6a, 0x54, 0x35, 0xda, 0x2d, 0xa5, 0xac, 0xe1, 0xb4, 0xac, 0xfe, 0x9f, 0x1c, 0x14, + 0x82, 0x07, 0x05, 0x7a, 0x08, 0x45, 0x71, 0x25, 0x3a, 0x26, 0x37, 0xa5, 0xe5, 0xcc, 0x33, 0xe3, + 0xb0, 0xeb, 0x8c, 0x6b, 0x6c, 0x48, 0xc1, 0x11, 0x22, 0x7a, 0x0d, 0x0a, 0x4c, 0xda, 0x51, 0xee, + 0x45, 0x49, 0x32, 0xb0, 0x8e, 0x15, 0x57, 0xf4, 0x2e, 0x3d, 0xc2, 0x98, 0xd9, 0x0d, 0x63, 0x36, + 0xea, 0x5d, 0xf6, 0x03, 0x32, 0x0e, 0xf9, 0xe8, 0x2d, 0xf1, 0x7e, 0x32, 0x59, 0xd4, 0xbb, 0xd5, + 0x42, 0x48, 0x2c, 0xa9, 0xe7, 0x83, 0xfa, 0x82, 0x02, 0x97, 0xdf, 0x58, 0x49, 0xa3, 0x07, 0x30, + 0xdf, 0x21, 0xdc, 0xb4, 0x9d, 0xa0, 0x65, 0xcb, 0x3c, 0x53, 0x0b, 0xc0, 0x5a, 0x81, 0xaa, 0x51, + 0x16, 0x3e, 0xa9, 0x0f, 0x1c, 0x02, 0x8a, 0xfb, 0x66, 0x79, 0x9d, 0x60, 0x20, 0x9c, 0x8f, 0xef, + 0xdb, 0x8e, 0xd7, 0x21, 0x58, 0x72, 0xf4, 0x27, 0x1a, 0x94, 0x03, 0xa4, 0x1d, 0xb3, 0xcf, 0x08, + 0xda, 0x8c, 0x56, 0x11, 0x1c, 0x77, 0x58, 0x8a, 0xe7, 0xde, 0x39, 0xf3, 0xc9, 0xf9, 0xa0, 0x5e, + 0x92, 0x62, 0xe2, 0x23, 0x5a, 0x40, 0x62, 0x8f, 0x72, 0x97, 0xec, 0xd1, 0xab, 0x90, 0x97, 0xed, + 0xb1, 0xda, 0xcc, 0xa8, 0xbf, 0x93, 0x2d, 0x34, 0x0e, 0x78, 0xfa, 0xc7, 0x39, 0xa8, 0xa4, 0x16, + 0x97, 0xa1, 0x99, 0x8b, 0x1e, 0xf9, 0xb9, 0x0c, 0x83, 0xa3, 0xc9, 0x63, 0xfc, 0x9f, 0x42, 0xc1, + 0x12, 0xeb, 0x0b, 0xff, 0x8f, 0xb2, 0x39, 0xcd, 0x51, 0xc8, 0x9d, 0x89, 0x23, 0x49, 0x7e, 0x32, + 0xac, 0x00, 0xd1, 0x2d, 0x58, 0xa1, 0x84, 0xd3, 0xb3, 0xed, 0x23, 0x4e, 0x68, 0xb2, 0x47, 0xcf, + 0xc7, 0xed, 0x0e, 0x1e, 0x15, 0xc0, 0xe3, 0x3a, 0x61, 0x86, 0x2c, 0xbc, 0x40, 0x86, 0xd4, 0x1d, + 0x98, 0xfb, 0x3f, 0xb6, 0xe6, 0x3f, 0x83, 0x52, 0xdc, 0x3c, 0x7d, 0xc1, 0x26, 0xf5, 0x5f, 0x40, + 0x51, 0x44, 0x63, 0xd8, 0xf4, 0x5f, 0x52, 0x80, 0xd2, 0xa5, 0x21, 0x97, 0xa5, 0x34, 0xe8, 0x5b, + 0x10, 0xfc, 0x77, 0x46, 0x64, 0x53, 0x9b, 0x93, 0x5e, 0x2a, 0x9b, 0xee, 0x09, 0x02, 0x0e, 0xe8, + 0x89, 0x61, 0xcf, 0x6f, 0x35, 0x00, 0xf9, 0xc4, 0xdb, 0x3d, 0x15, 0xcf, 0xf2, 0x75, 0x98, 0x13, + 0x27, 0x30, 0xea, 0x98, 0xbc, 0x46, 0x92, 0x83, 0xee, 0x41, 0xc1, 0x93, 0x4d, 0x95, 0x9a, 0xbe, + 0xbc, 0x31, 0x31, 0xf2, 0xd4, 0x3f, 0x5e, 0x1b, 0xd8, 0x7c, 0xb4, 0xfb, 0x98, 0x13, 0x57, 0xf8, + 0x18, 0x47, 0x5d, 0xd0, 0x99, 0x61, 0x05, 0x66, 0x6c, 0x3c, 0x7b, 0x5e, 0x9b, 0xf9, 0xf0, 0x79, + 0x6d, 0xe6, 0xa3, 0xe7, 0xb5, 0x99, 0xf7, 0x87, 0x35, 0xed, 0xd9, 0xb0, 0xa6, 0x7d, 0x38, 0xac, + 0x69, 0x1f, 0x0d, 0x6b, 0xda, 0xc7, 0xc3, 0x9a, 0xf6, 0xe4, 0x93, 0xda, 0xcc, 0x83, 0xdc, 0xe9, + 0xe6, 0xff, 0x02, 0x00, 0x00, 0xff, 0xff, 0x80, 0x43, 0x11, 0x41, 0xbe, 0x1e, 0x00, 0x00, } diff --git a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto index e73ebce9..a6be57a8 100644 --- a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto +++ b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto @@ -81,6 +81,9 @@ message APIResource { // shortNames is a list of suggested short names of the resource. repeated string shortNames = 5; + + // categories is a list of the grouped resources this resource belongs to (e.g. 'all') + repeated string categories = 7; } // APIResourceList is a list of APIResource, it is used to expose the name of the @@ -302,7 +305,7 @@ message ListMeta { // Value must be treated as opaque by clients and passed unmodified back to the server. // Populated by the system. // Read-only. - // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#concurrency-control-and-consistency + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency // +optional optional string resourceVersion = 2; } @@ -342,6 +345,24 @@ message ListOptions { optional int64 timeoutSeconds = 5; } +// MicroTime is version of Time with microsecond level precision. +// +// +protobuf.options.marshal=false +// +protobuf.as=Timestamp +// +protobuf.options.(gogoproto.goproto_stringer)=false +message MicroTime { + // Represents seconds of UTC time since Unix epoch + // 1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to + // 9999-12-31T23:59:59Z inclusive. + optional int64 seconds = 1; + + // Non-negative fractions of a second at nanosecond resolution. Negative + // second values with fractions must still have non-negative nanos values + // that count forward in time. Must be from 0 to 999,999,999 + // inclusive. This field may be limited in precision depending on context. + optional int32 nanos = 2; +} + // ObjectMeta is metadata that all persisted resources must have, which includes all objects // users must create. message ObjectMeta { @@ -368,7 +389,7 @@ message ObjectMeta { // should retry (optionally after the time indicated in the Retry-After header). // // Applied only if Name is not specified. - // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#idempotency + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency // +optional optional string generateName = 2; @@ -408,7 +429,7 @@ message ObjectMeta { // Populated by the system. // Read-only. // Value must be treated as opaque by clients and . - // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#concurrency-control-and-consistency + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency // +optional optional string resourceVersion = 6; @@ -424,7 +445,7 @@ message ObjectMeta { // Populated by the system. // Read-only. // Null for lists. - // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional Time creationTimestamp = 8; @@ -444,7 +465,7 @@ message ObjectMeta { // // Populated by the system when a graceful deletion is requested. // Read-only. - // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional Time deletionTimestamp = 9; @@ -512,7 +533,7 @@ message OwnerReference { optional string apiVersion = 5; // Kind of the referent. - // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds optional string kind = 1; // Name of the referent. @@ -564,13 +585,13 @@ message ServerAddressByClientCIDR { // Status is a return value for calls that don't return other objects. message Status { // Standard list metadata. - // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional ListMeta metadata = 1; // Status of the operation. // One of: "Success" or "Failure". - // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional string status = 2; @@ -641,7 +662,7 @@ message StatusDetails { // The kind attribute of the resource associated with the status StatusReason. // On some operations may differ from the requested resource Kind. - // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional string kind = 3; @@ -705,14 +726,14 @@ message TypeMeta { // Servers may infer this from the endpoint the client submits requests to. // Cannot be updated. // In CamelCase. - // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional string kind = 1; // APIVersion defines the versioned schema of this representation of an object. // Servers should convert recognized schemas to the latest internal value, and // may reject unrecognized values. - // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#resources // +optional optional string apiVersion = 2; } diff --git a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/group_version.go b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/group_version.go index 8b6fdef5..bd4c6d9b 100644 --- a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/group_version.go +++ b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/group_version.go @@ -29,8 +29,8 @@ import ( // // +protobuf.options.(gogoproto.goproto_stringer)=false type GroupResource struct { - Group string `protobuf:"bytes,1,opt,name=group"` - Resource string `protobuf:"bytes,2,opt,name=resource"` + Group string `json:"group" protobuf:"bytes,1,opt,name=group"` + Resource string `json:"resource" protobuf:"bytes,2,opt,name=resource"` } func (gr *GroupResource) String() string { @@ -45,9 +45,9 @@ func (gr *GroupResource) String() string { // // +protobuf.options.(gogoproto.goproto_stringer)=false type GroupVersionResource struct { - Group string `protobuf:"bytes,1,opt,name=group"` - Version string `protobuf:"bytes,2,opt,name=version"` - Resource string `protobuf:"bytes,3,opt,name=resource"` + Group string `json:"group" protobuf:"bytes,1,opt,name=group"` + Version string `json:"version" protobuf:"bytes,2,opt,name=version"` + Resource string `json:"resource" protobuf:"bytes,3,opt,name=resource"` } func (gvr *GroupVersionResource) String() string { @@ -59,8 +59,8 @@ func (gvr *GroupVersionResource) String() string { // // +protobuf.options.(gogoproto.goproto_stringer)=false type GroupKind struct { - Group string `protobuf:"bytes,1,opt,name=group"` - Kind string `protobuf:"bytes,2,opt,name=kind"` + Group string `json:"group" protobuf:"bytes,1,opt,name=group"` + Kind string `json:"kind" protobuf:"bytes,2,opt,name=kind"` } func (gk *GroupKind) String() string { @@ -75,9 +75,9 @@ func (gk *GroupKind) String() string { // // +protobuf.options.(gogoproto.goproto_stringer)=false type GroupVersionKind struct { - Group string `protobuf:"bytes,1,opt,name=group"` - Version string `protobuf:"bytes,2,opt,name=version"` - Kind string `protobuf:"bytes,3,opt,name=kind"` + Group string `json:"group" protobuf:"bytes,1,opt,name=group"` + Version string `json:"version" protobuf:"bytes,2,opt,name=version"` + Kind string `json:"kind" protobuf:"bytes,3,opt,name=kind"` } func (gvk GroupVersionKind) String() string { @@ -88,8 +88,8 @@ func (gvk GroupVersionKind) String() string { // // +protobuf.options.(gogoproto.goproto_stringer)=false type GroupVersion struct { - Group string `protobuf:"bytes,1,opt,name=group"` - Version string `protobuf:"bytes,2,opt,name=version"` + Group string `json:"group" protobuf:"bytes,1,opt,name=group"` + Version string `json:"version" protobuf:"bytes,2,opt,name=version"` } // Empty returns true if group and version are empty diff --git a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/meta.go b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/meta.go index c00eafcc..0ee7d99c 100644 --- a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/meta.go +++ b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/meta.go @@ -149,6 +149,9 @@ func (meta *ObjectMeta) GetFinalizers() []string { return m func (meta *ObjectMeta) SetFinalizers(finalizers []string) { meta.Finalizers = finalizers } func (meta *ObjectMeta) GetOwnerReferences() []OwnerReference { + if meta.OwnerReferences == nil { + return nil + } ret := make([]OwnerReference, len(meta.OwnerReferences)) for i := 0; i < len(meta.OwnerReferences); i++ { ret[i].Kind = meta.OwnerReferences[i].Kind @@ -168,6 +171,10 @@ func (meta *ObjectMeta) GetOwnerReferences() []OwnerReference { } func (meta *ObjectMeta) SetOwnerReferences(references []OwnerReference) { + if references == nil { + meta.OwnerReferences = nil + return + } newReferences := make([]OwnerReference, len(references)) for i := 0; i < len(references); i++ { newReferences[i].Kind = references[i].Kind diff --git a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/micro_time.go b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/micro_time.go new file mode 100644 index 00000000..d55f446b --- /dev/null +++ b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/micro_time.go @@ -0,0 +1,184 @@ +/* +Copyright 2016 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +import ( + "encoding/json" + "time" + + "k8s.io/apimachinery/pkg/openapi" + + "github.com/go-openapi/spec" + "github.com/google/gofuzz" +) + +const RFC3339Micro = "2006-01-02T15:04:05.000000Z07:00" + +// MicroTime is version of Time with microsecond level precision. +// +// +protobuf.options.marshal=false +// +protobuf.as=Timestamp +// +protobuf.options.(gogoproto.goproto_stringer)=false +type MicroTime struct { + time.Time `protobuf:"-"` +} + +// DeepCopy returns a deep-copy of the MicroTime value. The underlying time.Time +// type is effectively immutable in the time API, so it is safe to +// copy-by-assign, despite the presence of (unexported) Pointer fields. +func (t MicroTime) DeepCopy() MicroTime { + return t +} + +// String returns the representation of the time. +func (t MicroTime) String() string { + return t.Time.String() +} + +// NewMicroTime returns a wrapped instance of the provided time +func NewMicroTime(time time.Time) MicroTime { + return MicroTime{time} +} + +// DateMicro returns the MicroTime corresponding to the supplied parameters +// by wrapping time.Date. +func DateMicro(year int, month time.Month, day, hour, min, sec, nsec int, loc *time.Location) MicroTime { + return MicroTime{time.Date(year, month, day, hour, min, sec, nsec, loc)} +} + +// NowMicro returns the current local time. +func NowMicro() MicroTime { + return MicroTime{time.Now()} +} + +// IsZero returns true if the value is nil or time is zero. +func (t *MicroTime) IsZero() bool { + if t == nil { + return true + } + return t.Time.IsZero() +} + +// Before reports whether the time instant t is before u. +func (t MicroTime) Before(u MicroTime) bool { + return t.Time.Before(u.Time) +} + +// Equal reports whether the time instant t is equal to u. +func (t MicroTime) Equal(u MicroTime) bool { + return t.Time.Equal(u.Time) +} + +// BeforeTime reports whether the time instant t is before second-lever precision u. +func (t MicroTime) BeforeTime(u Time) bool { + return t.Time.Before(u.Time) +} + +// EqualTime reports whether the time instant t is equal to second-lever precision u. +func (t MicroTime) EqualTime(u Time) bool { + return t.Time.Equal(u.Time) +} + +// UnixMicro returns the local time corresponding to the given Unix time +// by wrapping time.Unix. +func UnixMicro(sec int64, nsec int64) MicroTime { + return MicroTime{time.Unix(sec, nsec)} +} + +// UnmarshalJSON implements the json.Unmarshaller interface. +func (t *MicroTime) UnmarshalJSON(b []byte) error { + if len(b) == 4 && string(b) == "null" { + t.Time = time.Time{} + return nil + } + + var str string + json.Unmarshal(b, &str) + + pt, err := time.Parse(RFC3339Micro, str) + if err != nil { + return err + } + + t.Time = pt.Local() + return nil +} + +// UnmarshalQueryParameter converts from a URL query parameter value to an object +func (t *MicroTime) UnmarshalQueryParameter(str string) error { + if len(str) == 0 { + t.Time = time.Time{} + return nil + } + // Tolerate requests from older clients that used JSON serialization to build query params + if len(str) == 4 && str == "null" { + t.Time = time.Time{} + return nil + } + + pt, err := time.Parse(RFC3339Micro, str) + if err != nil { + return err + } + + t.Time = pt.Local() + return nil +} + +// MarshalJSON implements the json.Marshaler interface. +func (t MicroTime) MarshalJSON() ([]byte, error) { + if t.IsZero() { + // Encode unset/nil objects as JSON's "null". + return []byte("null"), nil + } + + return json.Marshal(t.UTC().Format(RFC3339Micro)) +} + +func (_ MicroTime) OpenAPIDefinition() openapi.OpenAPIDefinition { + return openapi.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "date-time", + }, + }, + } +} + +// MarshalQueryParameter converts to a URL query parameter value +func (t MicroTime) MarshalQueryParameter() (string, error) { + if t.IsZero() { + // Encode unset/nil objects as an empty string + return "", nil + } + + return t.UTC().Format(RFC3339Micro), nil +} + +// Fuzz satisfies fuzz.Interface. +func (t *MicroTime) Fuzz(c fuzz.Continue) { + if t == nil { + return + } + // Allow for about 1000 years of randomness. Leave off nanoseconds + // because JSON doesn't represent them so they can't round-trip + // properly. + t.Time = time.Unix(c.Rand.Int63n(1000*365*24*60*60*1000*1000), 0) +} + +var _ fuzz.Interface = &MicroTime{} diff --git a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/micro_time_proto.go b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/micro_time_proto.go new file mode 100644 index 00000000..14841be5 --- /dev/null +++ b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/micro_time_proto.go @@ -0,0 +1,72 @@ +/* +Copyright 2016 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +import ( + "time" +) + +// Timestamp is declared in time_proto.go + +// Timestamp returns the Time as a new Timestamp value. +func (m *MicroTime) ProtoMicroTime() *Timestamp { + if m == nil { + return &Timestamp{} + } + return &Timestamp{ + Seconds: m.Time.Unix(), + Nanos: int32(m.Time.Nanosecond()), + } +} + +// Size implements the protobuf marshalling interface. +func (m *MicroTime) Size() (n int) { + if m == nil || m.Time.IsZero() { + return 0 + } + return m.ProtoMicroTime().Size() +} + +// Reset implements the protobuf marshalling interface. +func (m *MicroTime) Unmarshal(data []byte) error { + if len(data) == 0 { + m.Time = time.Time{} + return nil + } + p := Timestamp{} + if err := p.Unmarshal(data); err != nil { + return err + } + m.Time = time.Unix(p.Seconds, int64(p.Nanos)).Local() + return nil +} + +// Marshal implements the protobuf marshalling interface. +func (m *MicroTime) Marshal() (data []byte, err error) { + if m == nil || m.Time.IsZero() { + return nil, nil + } + return m.ProtoMicroTime().Marshal() +} + +// MarshalTo implements the protobuf marshalling interface. +func (m *MicroTime) MarshalTo(data []byte) (int, error) { + if m == nil || m.Time.IsZero() { + return 0, nil + } + return m.ProtoMicroTime().MarshalTo(data) +} diff --git a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/register.go b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/register.go index 8645d1ab..6e449a43 100644 --- a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/register.go +++ b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/register.go @@ -27,6 +27,10 @@ const GroupName = "meta.k8s.io" // SchemeGroupVersion is group version used to register these objects var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1"} +// Unversioned is group version for unversioned API objects +// TODO: this should be v1 probably +var Unversioned = schema.GroupVersion{Group: "", Version: "v1"} + // WatchEventKind is name reserved for serializing watch events. const WatchEventKind = "WatchEvent" @@ -56,6 +60,15 @@ func AddToGroupVersion(scheme *runtime.Scheme, groupVersion schema.GroupVersion) Convert_versioned_Event_to_versioned_InternalEvent, ) + // Register Unversioned types under their own special group + scheme.AddUnversionedTypes(Unversioned, + &Status{}, + &APIVersions{}, + &APIGroupList{}, + &APIGroup{}, + &APIResourceList{}, + ) + // register manually. This usually goes through the SchemeBuilder, which we cannot use here. scheme.AddGeneratedDeepCopyFuncs(GetGeneratedDeepCopyFuncs()...) AddConversionFuncs(scheme) diff --git a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/types.go b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/types.go index 38833ce7..c5ac31f7 100644 --- a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/types.go +++ b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/types.go @@ -40,14 +40,14 @@ type TypeMeta struct { // Servers may infer this from the endpoint the client submits requests to. // Cannot be updated. // In CamelCase. - // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional Kind string `json:"kind,omitempty" protobuf:"bytes,1,opt,name=kind"` // APIVersion defines the versioned schema of this representation of an object. // Servers should convert recognized schemas to the latest internal value, and // may reject unrecognized values. - // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#resources // +optional APIVersion string `json:"apiVersion,omitempty" protobuf:"bytes,2,opt,name=apiVersion"` } @@ -66,7 +66,7 @@ type ListMeta struct { // Value must be treated as opaque by clients and passed unmodified back to the server. // Populated by the system. // Read-only. - // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#concurrency-control-and-consistency + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency // +optional ResourceVersion string `json:"resourceVersion,omitempty" protobuf:"bytes,2,opt,name=resourceVersion"` } @@ -103,7 +103,7 @@ type ObjectMeta struct { // should retry (optionally after the time indicated in the Retry-After header). // // Applied only if Name is not specified. - // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#idempotency + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency // +optional GenerateName string `json:"generateName,omitempty" protobuf:"bytes,2,opt,name=generateName"` @@ -143,7 +143,7 @@ type ObjectMeta struct { // Populated by the system. // Read-only. // Value must be treated as opaque by clients and . - // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#concurrency-control-and-consistency + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency // +optional ResourceVersion string `json:"resourceVersion,omitempty" protobuf:"bytes,6,opt,name=resourceVersion"` @@ -159,7 +159,7 @@ type ObjectMeta struct { // Populated by the system. // Read-only. // Null for lists. - // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional CreationTimestamp Time `json:"creationTimestamp,omitempty" protobuf:"bytes,8,opt,name=creationTimestamp"` @@ -179,7 +179,7 @@ type ObjectMeta struct { // // Populated by the system when a graceful deletion is requested. // Read-only. - // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional DeletionTimestamp *Time `json:"deletionTimestamp,omitempty" protobuf:"bytes,9,opt,name=deletionTimestamp"` @@ -277,7 +277,7 @@ type OwnerReference struct { // API version of the referent. APIVersion string `json:"apiVersion" protobuf:"bytes,5,opt,name=apiVersion"` // Kind of the referent. - // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds Kind string `json:"kind" protobuf:"bytes,1,opt,name=kind"` // Name of the referent. // More info: http://kubernetes.io/docs/user-guide/identifiers#names @@ -412,13 +412,13 @@ type Preconditions struct { type Status struct { TypeMeta `json:",inline"` // Standard list metadata. - // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Status of the operation. // One of: "Success" or "Failure". - // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status string `json:"status,omitempty" protobuf:"bytes,2,opt,name=status"` // A human-readable description of the status of this operation. @@ -457,7 +457,7 @@ type StatusDetails struct { Group string `json:"group,omitempty" protobuf:"bytes,2,opt,name=group"` // The kind attribute of the resource associated with the status StatusReason. // On some operations may differ from the requested resource Kind. - // More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional Kind string `json:"kind,omitempty" protobuf:"bytes,3,opt,name=kind"` // UID of the resource. @@ -740,6 +740,8 @@ type APIResource struct { Verbs Verbs `json:"verbs" protobuf:"bytes,4,opt,name=verbs"` // shortNames is a list of suggested short names of the resource. ShortNames []string `json:"shortNames,omitempty" protobuf:"bytes,5,rep,name=shortNames"` + // categories is a list of the grouped resources this resource belongs to (e.g. 'all') + Categories []string `json:"categories,omitempty" protobuf:"bytes,7,rep,name=categories"` } // Verbs masks the value so protobuf can generate diff --git a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/types_swagger_doc_generated.go b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/types_swagger_doc_generated.go index ed74548b..159164d7 100644 --- a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/types_swagger_doc_generated.go +++ b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/types_swagger_doc_generated.go @@ -56,6 +56,7 @@ var map_APIResource = map[string]string{ "kind": "kind is the kind for the resource (e.g. 'Foo' is the kind for a resource 'foo')", "verbs": "verbs is a list of supported kube verbs (this includes get, list, watch, create, update, patch, delete, deletecollection, and proxy)", "shortNames": "shortNames is a list of suggested short names of the resource.", + "categories": "categories is a list of the grouped resources this resource belongs to (e.g. 'all')", } func (APIResource) SwaggerDoc() map[string]string { @@ -167,7 +168,7 @@ func (LabelSelectorRequirement) SwaggerDoc() map[string]string { var map_ListMeta = map[string]string{ "": "ListMeta describes metadata that synthetic resources must have, including lists and various status objects. A resource may have only one of {ObjectMeta, ListMeta}.", "selfLink": "SelfLink is a URL representing this object. Populated by the system. Read-only.", - "resourceVersion": "String that identifies the server's internal version of this object that can be used by clients to determine when objects have changed. Value must be treated as opaque by clients and passed unmodified back to the server. Populated by the system. Read-only. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#concurrency-control-and-consistency", + "resourceVersion": "String that identifies the server's internal version of this object that can be used by clients to determine when objects have changed. Value must be treated as opaque by clients and passed unmodified back to the server. Populated by the system. Read-only. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency", } func (ListMeta) SwaggerDoc() map[string]string { @@ -191,14 +192,14 @@ func (ListOptions) SwaggerDoc() map[string]string { var map_ObjectMeta = map[string]string{ "": "ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create.", "name": "Name must be unique within a namespace. Is required when creating resources, although some resources may allow a client to request the generation of an appropriate name automatically. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/identifiers#names", - "generateName": "GenerateName is an optional prefix, used by the server, to generate a unique name ONLY IF the Name field has not been provided. If this field is used, the name returned to the client will be different than the name passed. This value will also be combined with a unique suffix. The provided value has the same validation rules as the Name field, and may be truncated by the length of the suffix required to make the value unique on the server.\n\nIf this field is specified and the generated name exists, the server will NOT return a 409 - instead, it will either return 201 Created or 500 with Reason ServerTimeout indicating a unique name could not be found in the time allotted, and the client should retry (optionally after the time indicated in the Retry-After header).\n\nApplied only if Name is not specified. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#idempotency", + "generateName": "GenerateName is an optional prefix, used by the server, to generate a unique name ONLY IF the Name field has not been provided. If this field is used, the name returned to the client will be different than the name passed. This value will also be combined with a unique suffix. The provided value has the same validation rules as the Name field, and may be truncated by the length of the suffix required to make the value unique on the server.\n\nIf this field is specified and the generated name exists, the server will NOT return a 409 - instead, it will either return 201 Created or 500 with Reason ServerTimeout indicating a unique name could not be found in the time allotted, and the client should retry (optionally after the time indicated in the Retry-After header).\n\nApplied only if Name is not specified. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency", "namespace": "Namespace defines the space within each name must be unique. An empty namespace is equivalent to the \"default\" namespace, but \"default\" is the canonical representation. Not all objects are required to be scoped to a namespace - the value of this field for those objects will be empty.\n\nMust be a DNS_LABEL. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/namespaces", "selfLink": "SelfLink is a URL representing this object. Populated by the system. Read-only.", "uid": "UID is the unique in time and space value for this object. It is typically generated by the server on successful creation of a resource and is not allowed to change on PUT operations.\n\nPopulated by the system. Read-only. More info: http://kubernetes.io/docs/user-guide/identifiers#uids", - "resourceVersion": "An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. Clients must treat these values as opaque and passed unmodified back to the server. They may only be valid for a particular resource or set of resources.\n\nPopulated by the system. Read-only. Value must be treated as opaque by clients and . More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#concurrency-control-and-consistency", + "resourceVersion": "An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. Clients must treat these values as opaque and passed unmodified back to the server. They may only be valid for a particular resource or set of resources.\n\nPopulated by the system. Read-only. Value must be treated as opaque by clients and . More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency", "generation": "A sequence number representing a specific generation of the desired state. Populated by the system. Read-only.", - "creationTimestamp": "CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.\n\nPopulated by the system. Read-only. Null for lists. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", - "deletionTimestamp": "DeletionTimestamp is RFC 3339 date and time at which this resource will be deleted. This field is set by the server when a graceful deletion is requested by the user, and is not directly settable by a client. The resource is expected to be deleted (no longer visible from resource lists, and not reachable by name) after the time in this field. Once set, this value may not be unset or be set further into the future, although it may be shortened or the resource may be deleted prior to this time. For example, a user may request that a pod is deleted in 30 seconds. The Kubelet will react by sending a graceful termination signal to the containers in the pod. After that 30 seconds, the Kubelet will send a hard termination signal (SIGKILL) to the container and after cleanup, remove the pod from the API. In the presence of network partitions, this object may still exist after this timestamp, until an administrator or automated process can determine the resource is fully terminated. If not set, graceful deletion of the object has not been requested.\n\nPopulated by the system when a graceful deletion is requested. Read-only. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", + "creationTimestamp": "CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.\n\nPopulated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "deletionTimestamp": "DeletionTimestamp is RFC 3339 date and time at which this resource will be deleted. This field is set by the server when a graceful deletion is requested by the user, and is not directly settable by a client. The resource is expected to be deleted (no longer visible from resource lists, and not reachable by name) after the time in this field. Once set, this value may not be unset or be set further into the future, although it may be shortened or the resource may be deleted prior to this time. For example, a user may request that a pod is deleted in 30 seconds. The Kubelet will react by sending a graceful termination signal to the containers in the pod. After that 30 seconds, the Kubelet will send a hard termination signal (SIGKILL) to the container and after cleanup, remove the pod from the API. In the presence of network partitions, this object may still exist after this timestamp, until an administrator or automated process can determine the resource is fully terminated. If not set, graceful deletion of the object has not been requested.\n\nPopulated by the system when a graceful deletion is requested. Read-only. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "deletionGracePeriodSeconds": "Number of seconds allowed for this object to gracefully terminate before it will be removed from the system. Only set when deletionTimestamp is also set. May only be shortened. Read-only.", "labels": "Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: http://kubernetes.io/docs/user-guide/labels", "annotations": "Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations", @@ -215,7 +216,7 @@ func (ObjectMeta) SwaggerDoc() map[string]string { var map_OwnerReference = map[string]string{ "": "OwnerReference contains enough information to let you identify an owning object. Currently, an owning object must be in the same namespace, so there is no namespace field.", "apiVersion": "API version of the referent.", - "kind": "Kind of the referent. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + "kind": "Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", "name": "Name of the referent. More info: http://kubernetes.io/docs/user-guide/identifiers#names", "uid": "UID of the referent. More info: http://kubernetes.io/docs/user-guide/identifiers#uids", "controller": "If true, this reference points to the managing controller.", @@ -264,8 +265,8 @@ func (ServerAddressByClientCIDR) SwaggerDoc() map[string]string { var map_Status = map[string]string{ "": "Status is a return value for calls that don't return other objects.", - "metadata": "Standard list metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", - "status": "Status of the operation. One of: \"Success\" or \"Failure\". More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", + "status": "Status of the operation. One of: \"Success\" or \"Failure\". More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", "message": "A human-readable description of the status of this operation.", "reason": "A machine-readable description of why this operation is in the \"Failure\" status. If this value is empty there is no information available. A Reason clarifies an HTTP status code but does not override it.", "details": "Extended data associated with the reason. Each reason may define its own extended details. This field is optional and the data returned is not guaranteed to conform to any schema except that defined by the reason type.", @@ -291,7 +292,7 @@ var map_StatusDetails = map[string]string{ "": "StatusDetails is a set of additional properties that MAY be set by the server to provide additional information about a response. The Reason field of a Status object defines what attributes will be set. Clients must ignore fields that do not match the defined type of each attribute, and should assume that any attribute may be empty, invalid, or under defined.", "name": "The name attribute of the resource associated with the status StatusReason (when there is a single name which can be described).", "group": "The group attribute of the resource associated with the status StatusReason.", - "kind": "The kind attribute of the resource associated with the status StatusReason. On some operations may differ from the requested resource Kind. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + "kind": "The kind attribute of the resource associated with the status StatusReason. On some operations may differ from the requested resource Kind. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", "uid": "UID of the resource. (when there is a single resource which can be described). More info: http://kubernetes.io/docs/user-guide/identifiers#uids", "causes": "The Causes array includes more details associated with the StatusReason failure. Not all StatusReasons may provide detailed causes.", "retryAfterSeconds": "If specified, the time in seconds before the operation should be retried.", @@ -303,8 +304,8 @@ func (StatusDetails) SwaggerDoc() map[string]string { var map_TypeMeta = map[string]string{ "": "TypeMeta describes an individual object in an API response or request with strings representing the type of the object and its API schema version. Structures that are versioned or persisted should inline TypeMeta.", - "kind": "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", - "apiVersion": "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + "kind": "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", + "apiVersion": "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#resources", } func (TypeMeta) SwaggerDoc() map[string]string { diff --git a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/unstructured/unstructured.go b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/unstructured/unstructured.go index a74ed026..fed687e9 100644 --- a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/unstructured/unstructured.go +++ b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/unstructured/unstructured.go @@ -27,10 +27,12 @@ import ( "github.com/golang/glog" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/conversion/unstructured" "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/apimachinery/pkg/types" "k8s.io/apimachinery/pkg/util/json" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" ) // Unstructured allows objects that do not have Golang structs registered to be manipulated @@ -248,22 +250,19 @@ func extractOwnerReference(src interface{}) metav1.OwnerReference { func setOwnerReference(src metav1.OwnerReference) map[string]interface{} { ret := make(map[string]interface{}) - controllerPtr := src.Controller - if controllerPtr != nil { - controller := *controllerPtr - controllerPtr = &controller - } - blockOwnerDeletionPtr := src.BlockOwnerDeletion - if blockOwnerDeletionPtr != nil { - blockOwnerDeletion := *blockOwnerDeletionPtr - blockOwnerDeletionPtr = &blockOwnerDeletion - } setNestedField(ret, src.Kind, "kind") setNestedField(ret, src.Name, "name") setNestedField(ret, src.APIVersion, "apiVersion") setNestedField(ret, string(src.UID), "uid") - setNestedField(ret, controllerPtr, "controller") - setNestedField(ret, blockOwnerDeletionPtr, "blockOwnerDeletion") + // json.Unmarshal() extracts boolean json fields as bool, not as *bool and hence extractOwnerReference() + // expects bool or a missing field, not *bool. So if pointer is nil, fields are omitted from the ret object. + // If pointer is non-nil, they are set to the referenced value. + if src.Controller != nil { + setNestedField(ret, *src.Controller, "controller") + } + if src.BlockOwnerDeletion != nil { + setNestedField(ret, *src.BlockOwnerDeletion, "blockOwnerDeletion") + } return ret } @@ -452,12 +451,34 @@ func (u *Unstructured) GroupVersionKind() schema.GroupVersionKind { return gvk } +var converter = unstructured.NewConverter(false) + func (u *Unstructured) GetInitializers() *metav1.Initializers { - panic("not implemented") + field := getNestedField(u.Object, "metadata", "initializers") + if field == nil { + return nil + } + obj, ok := field.(map[string]interface{}) + if !ok { + return nil + } + out := &metav1.Initializers{} + if err := converter.FromUnstructured(obj, out); err != nil { + utilruntime.HandleError(fmt.Errorf("unable to retrieve initializers for object: %v", err)) + } + return out } func (u *Unstructured) SetInitializers(initializers *metav1.Initializers) { - panic("not implemented") + if initializers == nil { + setNestedField(u.Object, nil, "metadata", "initializers") + return + } + out := make(map[string]interface{}) + if err := converter.ToUnstructured(initializers, &out); err != nil { + utilruntime.HandleError(fmt.Errorf("unable to retrieve initializers for object: %v", err)) + } + setNestedField(u.Object, out, "metadata", "initializers") } func (u *Unstructured) GetFinalizers() []string { diff --git a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/well_known_labels.go b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/well_known_labels.go deleted file mode 100644 index 6d0b4696..00000000 --- a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/well_known_labels.go +++ /dev/null @@ -1,82 +0,0 @@ -/* -Copyright 2015 The Kubernetes Authors. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -package v1 - -const ( - LabelHostname = "kubernetes.io/hostname" - LabelZoneFailureDomain = "failure-domain.beta.kubernetes.io/zone" - LabelZoneRegion = "failure-domain.beta.kubernetes.io/region" - - LabelInstanceType = "beta.kubernetes.io/instance-type" - - LabelOS = "beta.kubernetes.io/os" - LabelArch = "beta.kubernetes.io/arch" - - // When feature-gate for TaintBasedEvictions=true flag is enabled, - // TaintNodeNotReady would be automatically added by node controller - // when node is not ready, and removed when node becomes ready. - TaintNodeNotReady = "node.alpha.kubernetes.io/notReady" - - // When feature-gate for TaintBasedEvictions=true flag is enabled, - // TaintNodeUnreachable would be automatically added by node controller - // when node becomes unreachable (corresponding to NodeReady status ConditionUnknown) - // and removed when node becomes reachable (NodeReady status ConditionTrue). - TaintNodeUnreachable = "node.alpha.kubernetes.io/unreachable" - - // When kubelet is started with the "external" cloud provider, then - // it sets this taint on a node to mark it as unusable, until a controller - // from the cloud-controller-manager intitializes this node, and then removes - // the taint - TaintExternalCloudProvider = "node.cloudprovider.kubernetes.io/uninitialized" -) - -// Role labels are applied to Nodes to mark their purpose. In particular, we -// usually want to distinguish the master, so that we can isolate privileged -// pods and operations. -// -// Originally we relied on not registering the master, on the fact that the -// master was Unschedulable, and on static manifests for master components. -// But we now do register masters in many environments, are generally moving -// away from static manifests (for better manageability), and working towards -// deprecating the unschedulable field (replacing it with taints & tolerations -// instead). -// -// Even with tainting, a label remains the easiest way of making a positive -// selection, so that pods can schedule only to master nodes for example, and -// thus installations will likely define a label for their master nodes. -// -// So that we can recognize master nodes in consequent places though (such as -// kubectl get nodes), we encourage installations to use the well-known labels. -// We define NodeLabelRole, which is the preferred form, but we will also recognize -// other forms that are known to be in widespread use (NodeLabelKubeadmAlphaRole). - -const ( - // NodeLabelRole is the preferred label applied to a Node as a hint that it has a particular purpose (defined by the value). - NodeLabelRole = "kubernetes.io/role" - - // NodeLabelKubeadmAlphaRole is a label that kubeadm applies to a Node as a hint that it has a particular purpose. - // Use of NodeLabelRole is preferred. - NodeLabelKubeadmAlphaRole = "kubeadm.alpha.kubernetes.io/role" - - // NodeLabelRoleMaster is the value of a NodeLabelRole or NodeLabelKubeadmAlphaRole label, indicating a master node. - // A master node typically runs kubernetes system components and will not typically run user workloads. - NodeLabelRoleMaster = "master" - - // NodeLabelRoleNode is the value of a NodeLabelRole or NodeLabelKubeadmAlphaRole label, indicating a "normal" node, - // as opposed to a RoleMaster node. - NodeLabelRoleNode = "node" -) diff --git a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/zz_generated.deepcopy.go b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/zz_generated.deepcopy.go index 55293e03..6fac96be 100644 --- a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/zz_generated.deepcopy.go +++ b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/zz_generated.deepcopy.go @@ -52,6 +52,7 @@ func GetGeneratedDeepCopyFuncs() []conversion.GeneratedDeepCopyFunc { {Fn: DeepCopy_v1_LabelSelectorRequirement, InType: reflect.TypeOf(&LabelSelectorRequirement{})}, {Fn: DeepCopy_v1_ListMeta, InType: reflect.TypeOf(&ListMeta{})}, {Fn: DeepCopy_v1_ListOptions, InType: reflect.TypeOf(&ListOptions{})}, + {Fn: DeepCopy_v1_MicroTime, InType: reflect.TypeOf(&MicroTime{})}, {Fn: DeepCopy_v1_ObjectMeta, InType: reflect.TypeOf(&ObjectMeta{})}, {Fn: DeepCopy_v1_OwnerReference, InType: reflect.TypeOf(&OwnerReference{})}, {Fn: DeepCopy_v1_Patch, InType: reflect.TypeOf(&Patch{})}, @@ -125,6 +126,11 @@ func DeepCopy_v1_APIResource(in interface{}, out interface{}, c *conversion.Clon *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 nil } } @@ -412,6 +418,16 @@ func DeepCopy_v1_ListOptions(in interface{}, out interface{}, c *conversion.Clon } } +// DeepCopy_v1_MicroTime is an autogenerated deepcopy function. +func DeepCopy_v1_MicroTime(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*MicroTime) + out := out.(*MicroTime) + *out = in.DeepCopy() + return nil + } +} + // DeepCopy_v1_ObjectMeta is an autogenerated deepcopy function. func DeepCopy_v1_ObjectMeta(in interface{}, out interface{}, c *conversion.Cloner) error { { diff --git a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/doc.go b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/doc.go new file mode 100644 index 00000000..eea67c5c --- /dev/null +++ b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/doc.go @@ -0,0 +1,22 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// +k8s:deepcopy-gen=package +// +k8s:openapi-gen=true +// +k8s:defaulter-gen=TypeMeta + +// +groupName=meta.k8s.io +package v1alpha1 diff --git a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/generated.pb.go b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/generated.pb.go new file mode 100644 index 00000000..2d43bf94 --- /dev/null +++ b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/generated.pb.go @@ -0,0 +1,633 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// Code generated by protoc-gen-gogo. +// source: k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/generated.proto +// DO NOT EDIT! + +/* + Package v1alpha1 is a generated protocol buffer package. + + It is generated from these files: + k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/generated.proto + + It has these top-level messages: + PartialObjectMetadata + PartialObjectMetadataList + TableOptions +*/ +package v1alpha1 + +import proto "github.com/gogo/protobuf/proto" +import fmt "fmt" +import math "math" + +import strings "strings" +import reflect "reflect" + +import io "io" + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion2 // please upgrade the proto package + +func (m *PartialObjectMetadata) Reset() { *m = PartialObjectMetadata{} } +func (*PartialObjectMetadata) ProtoMessage() {} +func (*PartialObjectMetadata) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{0} } + +func (m *PartialObjectMetadataList) Reset() { *m = PartialObjectMetadataList{} } +func (*PartialObjectMetadataList) ProtoMessage() {} +func (*PartialObjectMetadataList) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{1} +} + +func (m *TableOptions) Reset() { *m = TableOptions{} } +func (*TableOptions) ProtoMessage() {} +func (*TableOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{2} } + +func init() { + proto.RegisterType((*PartialObjectMetadata)(nil), "k8s.io.apimachinery.pkg.apis.meta.v1alpha1.PartialObjectMetadata") + proto.RegisterType((*PartialObjectMetadataList)(nil), "k8s.io.apimachinery.pkg.apis.meta.v1alpha1.PartialObjectMetadataList") + proto.RegisterType((*TableOptions)(nil), "k8s.io.apimachinery.pkg.apis.meta.v1alpha1.TableOptions") +} +func (m *PartialObjectMetadata) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *PartialObjectMetadata) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) + n1, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n1 + return i, nil +} + +func (m *PartialObjectMetadataList) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *PartialObjectMetadataList) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + if len(m.Items) > 0 { + for _, msg := range m.Items { + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(msg.Size())) + n, err := msg.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n + } + } + return i, nil +} + +func (m *TableOptions) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *TableOptions) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.IncludeObject))) + i += copy(dAtA[i:], m.IncludeObject) + return i, nil +} + +func encodeFixed64Generated(dAtA []byte, offset int, v uint64) int { + dAtA[offset] = uint8(v) + dAtA[offset+1] = uint8(v >> 8) + dAtA[offset+2] = uint8(v >> 16) + dAtA[offset+3] = uint8(v >> 24) + dAtA[offset+4] = uint8(v >> 32) + dAtA[offset+5] = uint8(v >> 40) + dAtA[offset+6] = uint8(v >> 48) + dAtA[offset+7] = uint8(v >> 56) + return offset + 8 +} +func encodeFixed32Generated(dAtA []byte, offset int, v uint32) int { + dAtA[offset] = uint8(v) + dAtA[offset+1] = uint8(v >> 8) + dAtA[offset+2] = uint8(v >> 16) + dAtA[offset+3] = uint8(v >> 24) + return offset + 4 +} +func encodeVarintGenerated(dAtA []byte, offset int, v uint64) int { + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return offset + 1 +} +func (m *PartialObjectMetadata) Size() (n int) { + var l int + _ = l + l = m.ObjectMeta.Size() + n += 1 + l + sovGenerated(uint64(l)) + return n +} + +func (m *PartialObjectMetadataList) Size() (n int) { + var l int + _ = l + if len(m.Items) > 0 { + for _, e := range m.Items { + l = e.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + } + return n +} + +func (m *TableOptions) Size() (n int) { + var l int + _ = l + l = len(m.IncludeObject) + n += 1 + l + sovGenerated(uint64(l)) + return n +} + +func sovGenerated(x uint64) (n int) { + for { + n++ + x >>= 7 + if x == 0 { + break + } + } + return n +} +func sozGenerated(x uint64) (n int) { + return sovGenerated(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *PartialObjectMetadata) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&PartialObjectMetadata{`, + `ObjectMeta:` + strings.Replace(strings.Replace(this.ObjectMeta.String(), "ObjectMeta", "k8s_io_apimachinery_pkg_apis_meta_v1.ObjectMeta", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func (this *PartialObjectMetadataList) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&PartialObjectMetadataList{`, + `Items:` + strings.Replace(fmt.Sprintf("%v", this.Items), "PartialObjectMetadata", "PartialObjectMetadata", 1) + `,`, + `}`, + }, "") + return s +} +func (this *TableOptions) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&TableOptions{`, + `IncludeObject:` + fmt.Sprintf("%v", this.IncludeObject) + `,`, + `}`, + }, "") + return s +} +func valueToStringGenerated(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *PartialObjectMetadata) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: PartialObjectMetadata: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: PartialObjectMetadata: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectMeta", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.ObjectMeta.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *PartialObjectMetadataList) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: PartialObjectMetadataList: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: PartialObjectMetadataList: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Items", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Items = append(m.Items, &PartialObjectMetadata{}) + if err := m.Items[len(m.Items)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *TableOptions) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: TableOptions: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: TableOptions: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field IncludeObject", 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.IncludeObject = IncludeObjectPolicy(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipGenerated(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenerated + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenerated + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + return iNdEx, nil + case 1: + iNdEx += 8 + return iNdEx, nil + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenerated + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + iNdEx += length + if length < 0 { + return 0, ErrInvalidLengthGenerated + } + return iNdEx, nil + case 3: + for { + var innerWire uint64 + var start int = iNdEx + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenerated + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + innerWire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + innerWireType := int(innerWire & 0x7) + if innerWireType == 4 { + break + } + next, err := skipGenerated(dAtA[start:]) + if err != nil { + return 0, err + } + iNdEx = start + next + } + return iNdEx, nil + case 4: + return iNdEx, nil + case 5: + iNdEx += 4 + return iNdEx, nil + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + } + panic("unreachable") +} + +var ( + ErrInvalidLengthGenerated = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowGenerated = fmt.Errorf("proto: integer overflow") +) + +func init() { + proto.RegisterFile("k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/generated.proto", fileDescriptorGenerated) +} + +var fileDescriptorGenerated = []byte{ + // 392 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x91, 0xbf, 0x6e, 0xd4, 0x40, + 0x10, 0x87, 0xbd, 0x42, 0x91, 0x92, 0x0d, 0x69, 0x8c, 0x90, 0xc2, 0x15, 0xeb, 0xe8, 0xaa, 0x08, + 0xc1, 0x2e, 0x09, 0x08, 0xd1, 0xe2, 0x2e, 0x12, 0x28, 0x91, 0xa1, 0xa2, 0x62, 0x6d, 0x0f, 0xf6, + 0x62, 0x7b, 0xd7, 0xda, 0x1d, 0x47, 0xba, 0x0a, 0x1e, 0x81, 0xc7, 0xba, 0x32, 0x65, 0x2a, 0x8b, + 0x33, 0x6f, 0x41, 0x85, 0x6c, 0x5f, 0xc8, 0xbf, 0x3b, 0xe5, 0xba, 0x99, 0xdf, 0xe8, 0xfb, 0x3c, + 0xe3, 0xa5, 0x9f, 0x8a, 0x77, 0x8e, 0x2b, 0x23, 0x8a, 0x26, 0x06, 0xab, 0x01, 0xc1, 0x89, 0x73, + 0xd0, 0xa9, 0xb1, 0x62, 0x39, 0x90, 0xb5, 0xaa, 0x64, 0x92, 0x2b, 0x0d, 0x76, 0x26, 0xea, 0x22, + 0xeb, 0x03, 0x27, 0x2a, 0x40, 0x29, 0xce, 0x8f, 0x64, 0x59, 0xe7, 0xf2, 0x48, 0x64, 0xa0, 0xc1, + 0x4a, 0x84, 0x94, 0xd7, 0xd6, 0xa0, 0xf1, 0x9f, 0x8f, 0x2c, 0xbf, 0xc9, 0xf2, 0xba, 0xc8, 0xfa, + 0xc0, 0xf1, 0x9e, 0xe5, 0x57, 0xec, 0xe4, 0x65, 0xa6, 0x30, 0x6f, 0x62, 0x9e, 0x98, 0x4a, 0x64, + 0x26, 0x33, 0x62, 0x50, 0xc4, 0xcd, 0xb7, 0xa1, 0x1b, 0x9a, 0xa1, 0x1a, 0xd5, 0x93, 0x37, 0x9b, + 0xac, 0x75, 0x77, 0xa1, 0xc9, 0xda, 0x63, 0x6c, 0xa3, 0x51, 0x55, 0x70, 0x0f, 0x78, 0xfb, 0x10, + 0xe0, 0x92, 0x1c, 0x2a, 0x79, 0x8f, 0x7b, 0xbd, 0x8e, 0x6b, 0x50, 0x95, 0x42, 0x69, 0x74, 0x68, + 0xef, 0x42, 0xd3, 0x19, 0x7d, 0x7a, 0x26, 0x2d, 0x2a, 0x59, 0x9e, 0xc6, 0xdf, 0x21, 0xc1, 0x8f, + 0x80, 0x32, 0x95, 0x28, 0xfd, 0xaf, 0x74, 0xbb, 0x5a, 0xd6, 0xfb, 0xe4, 0x80, 0x1c, 0xee, 0x1e, + 0xbf, 0xe2, 0x9b, 0xfc, 0x5a, 0x7e, 0xed, 0x09, 0xfd, 0x79, 0x1b, 0x78, 0x5d, 0x1b, 0xd0, 0xeb, + 0x2c, 0xfa, 0x6f, 0x9d, 0xfe, 0xa0, 0xcf, 0x56, 0x7e, 0xfa, 0x83, 0x72, 0xe8, 0xc7, 0x74, 0x4b, + 0x21, 0x54, 0x6e, 0x9f, 0x1c, 0x3c, 0x3a, 0xdc, 0x3d, 0x7e, 0xcf, 0x37, 0x7f, 0x56, 0xbe, 0xd2, + 0x1a, 0xee, 0x74, 0x6d, 0xb0, 0x75, 0xd2, 0x3b, 0xa3, 0x51, 0x3d, 0x8d, 0xe9, 0xe3, 0xcf, 0x32, + 0x2e, 0xe1, 0xb4, 0x46, 0x65, 0xb4, 0xf3, 0x23, 0xba, 0xa7, 0x74, 0x52, 0x36, 0x29, 0x8c, 0xe8, + 0x70, 0xf7, 0x4e, 0xf8, 0x62, 0x79, 0xc5, 0xde, 0xc9, 0xcd, 0xe1, 0xdf, 0x36, 0x78, 0x72, 0x2b, + 0x38, 0x33, 0xa5, 0x4a, 0x66, 0xd1, 0x6d, 0x45, 0xc8, 0xe7, 0x0b, 0xe6, 0x5d, 0x2c, 0x98, 0x77, + 0xb9, 0x60, 0xde, 0xcf, 0x8e, 0x91, 0x79, 0xc7, 0xc8, 0x45, 0xc7, 0xc8, 0x65, 0xc7, 0xc8, 0xef, + 0x8e, 0x91, 0x5f, 0x7f, 0x98, 0xf7, 0x65, 0xfb, 0x6a, 0xf7, 0x7f, 0x01, 0x00, 0x00, 0xff, 0xff, + 0x97, 0x95, 0xbb, 0xf9, 0x14, 0x03, 0x00, 0x00, +} diff --git a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/generated.proto b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/generated.proto new file mode 100644 index 00000000..06833dbd --- /dev/null +++ b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/generated.proto @@ -0,0 +1,55 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + + +// This file was autogenerated by go-to-protobuf. Do not edit it manually! + +syntax = 'proto2'; + +package k8s.io.apimachinery.pkg.apis.meta.v1alpha1; + +import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; +import "k8s.io/apimachinery/pkg/runtime/generated.proto"; +import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; +import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; + +// Package-wide variables from generator "generated". +option go_package = "v1alpha1"; + +// PartialObjectMetadata is a generic representation of any object with ObjectMeta. It allows clients +// to get access to a particular ObjectMeta schema without knowing the details of the version. +message PartialObjectMetadata { + // Standard object's metadata. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + // +optional + optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; +} + +// PartialObjectMetadataList contains a list of objects containing only their metadata +message PartialObjectMetadataList { + // items contains each of the included items. + repeated PartialObjectMetadata items = 1; +} + +// TableOptions are used when a Table is requested by the caller. +message TableOptions { + // includeObject decides whether to include each object along with its columnar information. + // Specifying "None" will return no object, specifying "Object" will return the full object contents, and + // specifying "Metadata" (the default) will return the object's metadata in the PartialObjectMetadata kind + // in version v1alpha1 of the meta.k8s.io API group. + optional string includeObject = 1; +} + diff --git a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/register.go b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/register.go new file mode 100644 index 00000000..89f08f38 --- /dev/null +++ b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/register.go @@ -0,0 +1,51 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1alpha1 + +import ( + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/apimachinery/pkg/runtime/schema" +) + +// GroupName is the group name for this API. +const GroupName = "meta.k8s.io" + +// SchemeGroupVersion is group version used to register these objects +var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1alpha1"} + +// Kind takes an unqualified kind and returns a Group qualified GroupKind +func Kind(kind string) schema.GroupKind { + return SchemeGroupVersion.WithKind(kind).GroupKind() +} + +// scheme is the registry for the common types that adhere to the meta v1alpha1 API spec. +var scheme = runtime.NewScheme() + +// ParameterCodec knows about query parameters used with the meta v1alpha1 API spec. +var ParameterCodec = runtime.NewParameterCodec(scheme) + +func init() { + scheme.AddKnownTypes(SchemeGroupVersion, + &Table{}, + &TableOptions{}, + &PartialObjectMetadata{}, + &PartialObjectMetadataList{}, + ) + + // register manually. This usually goes through the SchemeBuilder, which we cannot use here. + //scheme.AddGeneratedDeepCopyFuncs(GetGeneratedDeepCopyFuncs()...) +} diff --git a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/types.go b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/types.go new file mode 100644 index 00000000..ef992180 --- /dev/null +++ b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/types.go @@ -0,0 +1,157 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// package v1alpha1 is alpha objects from meta that will be introduced. +package v1alpha1 + +import ( + "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime" +) + +// TODO: Table does not generate to protobuf because of the interface{} - fix protobuf +// generation to support a meta type that can accept any valid JSON. + +// Table is a tabular representation of a set of API resources. The server transforms the +// object into a set of preferred columns for quickly reviewing the objects. +// +protobuf=false +type Table struct { + v1.TypeMeta `json:",inline"` + // Standard list metadata. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + // +optional + v1.ListMeta `json:"metadata,omitempty"` + + // columnDefinitions describes each column in the returned items array. The number of cells per row + // will always match the number of column definitions. + ColumnDefinitions []TableColumnDefinition `json:"columnDefinitions"` + // rows is the list of items in the table. + Rows []TableRow `json:"rows"` +} + +// TableColumnDefinition contains information about a column returned in the Table. +// +protobuf=false +type TableColumnDefinition struct { + // name is a human readable name for the column. + Name string `json:"name"` + // type is an OpenAPI type definition for this column. + // See https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#data-types for more. + Type string `json:"type"` + // format is an optional OpenAPI type definition for this column. The 'name' format is applied + // to the primary identifier column to assist in clients identifying column is the resource name. + // See https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#data-types for more. + Format string `json:"format"` + // description is a human readable description of this column. + Description string `json:"description"` + // priority is an integer defining the relative importance of this column compared to others. Lower + // numbers are considered higher priority. Columns that may be omitted in limited space scenarios + // should be given a higher priority. + Priority int32 `json:"priority"` +} + +// TableRow is an individual row in a table. +// +protobuf=false +type TableRow struct { + // cells will be as wide as headers and may contain strings, numbers, booleans, simple maps, or lists, or + // null. See the type field of the column definition for a more detailed description. + Cells []interface{} `json:"cells"` + // conditions describe additional status of a row that are relevant for a human user. + // +optional + Conditions []TableRowCondition `json:"conditions,omitempty"` + // This field contains the requested additional information about each object based on the includeObject + // policy when requesting the Table. If "None", this field is empty, if "Object" this will be the + // default serialization of the object for the current API version, and if "Metadata" (the default) will + // contain the object metadata. Check the returned kind and apiVersion of the object before parsing. + // +optional + Object runtime.RawExtension `json:"object,omitempty"` +} + +// TableRowCondition allows a row to be marked with additional information. +// +protobuf=false +type TableRowCondition struct { + // Type of row condition. + Type RowConditionType `json:"type"` + // Status of the condition, one of True, False, Unknown. + Status ConditionStatus `json:"status"` + // (brief) machine readable reason for the condition's last transition. + // +optional + Reason string `json:"reason,omitempty"` + // Human readable message indicating details about last transition. + // +optional + Message string `json:"message,omitempty"` +} + +type RowConditionType string + +// These are valid conditions of a row. This list is not exhaustive and new conditions may be +// inculded by other resources. +const ( + // RowCompleted means the underlying resource has reached completion and may be given less + // visual priority than other resources. + RowCompleted RowConditionType = "Completed" +) + +type ConditionStatus string + +// These are valid condition statuses. "ConditionTrue" means a resource is in the condition. +// "ConditionFalse" means a resource is not in the condition. "ConditionUnknown" means kubernetes +// can't decide if a resource is in the condition or not. In the future, we could add other +// intermediate conditions, e.g. ConditionDegraded. +const ( + ConditionTrue ConditionStatus = "True" + ConditionFalse ConditionStatus = "False" + ConditionUnknown ConditionStatus = "Unknown" +) + +// IncludeObjectPolicy controls which portion of the object is returned with a Table. +type IncludeObjectPolicy string + +const ( + // IncludeNone returns no object. + IncludeNone IncludeObjectPolicy = "None" + // IncludeMetadata serializes the object containing only its metadata field. + IncludeMetadata IncludeObjectPolicy = "Metadata" + // IncludeObject contains the full object. + IncludeObject IncludeObjectPolicy = "Object" +) + +// TableOptions are used when a Table is requested by the caller. +type TableOptions struct { + v1.TypeMeta `json:",inline"` + // includeObject decides whether to include each object along with its columnar information. + // Specifying "None" will return no object, specifying "Object" will return the full object contents, and + // specifying "Metadata" (the default) will return the object's metadata in the PartialObjectMetadata kind + // in version v1alpha1 of the meta.k8s.io API group. + IncludeObject IncludeObjectPolicy `json:"includeObject,omitempty" protobuf:"bytes,1,opt,name=includeObject,casttype=IncludeObjectPolicy"` +} + +// PartialObjectMetadata is a generic representation of any object with ObjectMeta. It allows clients +// to get access to a particular ObjectMeta schema without knowing the details of the version. +type PartialObjectMetadata struct { + v1.TypeMeta `json:",inline"` + // Standard object's metadata. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + // +optional + v1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` +} + +// PartialObjectMetadataList contains a list of objects containing only their metadata +type PartialObjectMetadataList struct { + v1.TypeMeta `json:",inline"` + + // items contains each of the included items. + Items []*PartialObjectMetadata `json:"items" protobuf:"bytes,1,rep,name=items"` +} diff --git a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/types_swagger_doc_generated.go b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/types_swagger_doc_generated.go new file mode 100644 index 00000000..e8bb6260 --- /dev/null +++ b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/types_swagger_doc_generated.go @@ -0,0 +1,104 @@ +/* +Copyright 2016 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1alpha1 + +// This file contains a collection of methods that can be used from go-restful to +// generate Swagger API documentation for its models. Please read this PR for more +// information on the implementation: https://github.com/emicklei/go-restful/pull/215 +// +// TODOs are ignored from the parser (e.g. TODO(andronat):... || TODO:...) if and only if +// they are on one line! For multiple line or blocks that you want to ignore use ---. +// Any context after a --- is ignored. +// +// Those methods can be generated by using hack/update-generated-swagger-docs.sh + +// AUTO-GENERATED FUNCTIONS START HERE +var map_PartialObjectMetadata = map[string]string{ + "": "PartialObjectMetadata is a generic representation of any object with ObjectMeta. It allows clients to get access to a particular ObjectMeta schema without knowing the details of the version.", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", +} + +func (PartialObjectMetadata) SwaggerDoc() map[string]string { + return map_PartialObjectMetadata +} + +var map_PartialObjectMetadataList = map[string]string{ + "": "PartialObjectMetadataList contains a list of objects containing only their metadata", + "items": "items contains each of the included items.", +} + +func (PartialObjectMetadataList) SwaggerDoc() map[string]string { + return map_PartialObjectMetadataList +} + +var map_Table = map[string]string{ + "": "Table is a tabular representation of a set of API resources. The server transforms the object into a set of preferred columns for quickly reviewing the objects.", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", + "columnDefinitions": "columnDefinitions describes each column in the returned items array. The number of cells per row will always match the number of column definitions.", + "rows": "rows is the list of items in the table.", +} + +func (Table) SwaggerDoc() map[string]string { + return map_Table +} + +var map_TableColumnDefinition = map[string]string{ + "": "TableColumnDefinition contains information about a column returned in the Table.", + "name": "name is a human readable name for the column.", + "type": "type is an OpenAPI type definition for this column. See https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#data-types for more.", + "format": "format is an optional OpenAPI type definition for this column. The 'name' format is applied to the primary identifier column to assist in clients identifying column is the resource name. See https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#data-types for more.", + "description": "description is a human readable description of this column.", + "priority": "priority is an integer defining the relative importance of this column compared to others. Lower numbers are considered higher priority. Columns that may be omitted in limited space scenarios should be given a higher priority.", +} + +func (TableColumnDefinition) SwaggerDoc() map[string]string { + return map_TableColumnDefinition +} + +var map_TableOptions = map[string]string{ + "": "TableOptions are used when a Table is requested by the caller.", + "includeObject": "includeObject decides whether to include each object along with its columnar information. Specifying \"None\" will return no object, specifying \"Object\" will return the full object contents, and specifying \"Metadata\" (the default) will return the object's metadata in the PartialObjectMetadata kind in version v1alpha1 of the meta.k8s.io API group.", +} + +func (TableOptions) SwaggerDoc() map[string]string { + return map_TableOptions +} + +var map_TableRow = map[string]string{ + "": "TableRow is an individual row in a table.", + "cells": "cells will be as wide as headers and may contain strings, numbers, booleans, simple maps, or lists, or null. See the type field of the column definition for a more detailed description.", + "conditions": "conditions describe additional status of a row that are relevant for a human user.", + "object": "This field contains the requested additional information about each object based on the includeObject policy when requesting the Table. If \"None\", this field is empty, if \"Object\" this will be the default serialization of the object for the current API version, and if \"Metadata\" (the default) will contain the object metadata. Check the returned kind and apiVersion of the object before parsing.", +} + +func (TableRow) SwaggerDoc() map[string]string { + return map_TableRow +} + +var map_TableRowCondition = map[string]string{ + "": "TableRowCondition allows a row to be marked with additional information.", + "type": "Type of row condition.", + "status": "Status of the condition, one of True, False, Unknown.", + "reason": "(brief) machine readable reason for the condition's last transition.", + "message": "Human readable message indicating details about last transition.", +} + +func (TableRowCondition) SwaggerDoc() map[string]string { + return map_TableRowCondition +} + +// AUTO-GENERATED FUNCTIONS END HERE diff --git a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/zz_generated.deepcopy.go b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/zz_generated.deepcopy.go new file mode 100644 index 00000000..ef8a117d --- /dev/null +++ b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/zz_generated.deepcopy.go @@ -0,0 +1,164 @@ +// +build !ignore_autogenerated + +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This file was autogenerated by deepcopy-gen. Do not edit it manually! + +package v1alpha1 + +import ( + v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + conversion "k8s.io/apimachinery/pkg/conversion" + runtime "k8s.io/apimachinery/pkg/runtime" + reflect "reflect" +) + +// GetGeneratedDeepCopyFuncs returns the generated funcs, since we aren't registering them. +func GetGeneratedDeepCopyFuncs() []conversion.GeneratedDeepCopyFunc { + return []conversion.GeneratedDeepCopyFunc{ + {Fn: DeepCopy_v1alpha1_PartialObjectMetadata, InType: reflect.TypeOf(&PartialObjectMetadata{})}, + {Fn: DeepCopy_v1alpha1_PartialObjectMetadataList, InType: reflect.TypeOf(&PartialObjectMetadataList{})}, + {Fn: DeepCopy_v1alpha1_Table, InType: reflect.TypeOf(&Table{})}, + {Fn: DeepCopy_v1alpha1_TableColumnDefinition, InType: reflect.TypeOf(&TableColumnDefinition{})}, + {Fn: DeepCopy_v1alpha1_TableOptions, InType: reflect.TypeOf(&TableOptions{})}, + {Fn: DeepCopy_v1alpha1_TableRow, InType: reflect.TypeOf(&TableRow{})}, + {Fn: DeepCopy_v1alpha1_TableRowCondition, InType: reflect.TypeOf(&TableRowCondition{})}, + } +} + +// DeepCopy_v1alpha1_PartialObjectMetadata is an autogenerated deepcopy function. +func DeepCopy_v1alpha1_PartialObjectMetadata(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*PartialObjectMetadata) + out := out.(*PartialObjectMetadata) + *out = *in + if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { + return err + } else { + out.ObjectMeta = *newVal.(*v1.ObjectMeta) + } + return nil + } +} + +// DeepCopy_v1alpha1_PartialObjectMetadataList is an autogenerated deepcopy function. +func DeepCopy_v1alpha1_PartialObjectMetadataList(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*PartialObjectMetadataList) + out := out.(*PartialObjectMetadataList) + *out = *in + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]*PartialObjectMetadata, len(*in)) + for i := range *in { + if newVal, err := c.DeepCopy(&(*in)[i]); err != nil { + return err + } else { + (*out)[i] = *newVal.(**PartialObjectMetadata) + } + } + } + return nil + } +} + +// DeepCopy_v1alpha1_Table is an autogenerated deepcopy function. +func DeepCopy_v1alpha1_Table(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*Table) + out := out.(*Table) + *out = *in + if in.ColumnDefinitions != nil { + in, out := &in.ColumnDefinitions, &out.ColumnDefinitions + *out = make([]TableColumnDefinition, len(*in)) + copy(*out, *in) + } + if in.Rows != nil { + in, out := &in.Rows, &out.Rows + *out = make([]TableRow, len(*in)) + for i := range *in { + if newVal, err := c.DeepCopy(&(*in)[i]); err != nil { + return err + } else { + (*out)[i] = *newVal.(*TableRow) + } + } + } + return nil + } +} + +// DeepCopy_v1alpha1_TableColumnDefinition is an autogenerated deepcopy function. +func DeepCopy_v1alpha1_TableColumnDefinition(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*TableColumnDefinition) + out := out.(*TableColumnDefinition) + *out = *in + return nil + } +} + +// DeepCopy_v1alpha1_TableOptions is an autogenerated deepcopy function. +func DeepCopy_v1alpha1_TableOptions(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*TableOptions) + out := out.(*TableOptions) + *out = *in + return nil + } +} + +// DeepCopy_v1alpha1_TableRow is an autogenerated deepcopy function. +func DeepCopy_v1alpha1_TableRow(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*TableRow) + out := out.(*TableRow) + *out = *in + if in.Cells != nil { + in, out := &in.Cells, &out.Cells + *out = make([]interface{}, len(*in)) + for i := range *in { + if newVal, err := c.DeepCopy(&(*in)[i]); err != nil { + return err + } else { + (*out)[i] = *newVal.(*interface{}) + } + } + } + if in.Conditions != nil { + in, out := &in.Conditions, &out.Conditions + *out = make([]TableRowCondition, len(*in)) + copy(*out, *in) + } + if newVal, err := c.DeepCopy(&in.Object); err != nil { + return err + } else { + out.Object = *newVal.(*runtime.RawExtension) + } + return nil + } +} + +// DeepCopy_v1alpha1_TableRowCondition is an autogenerated deepcopy function. +func DeepCopy_v1alpha1_TableRowCondition(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*TableRowCondition) + out := out.(*TableRowCondition) + *out = *in + return nil + } +} diff --git a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/zz_generated.defaults.go b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/zz_generated.defaults.go new file mode 100644 index 00000000..7e6df29d --- /dev/null +++ b/vendor/k8s.io/apimachinery/pkg/apis/meta/v1alpha1/zz_generated.defaults.go @@ -0,0 +1,32 @@ +// +build !ignore_autogenerated + +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This file was autogenerated by defaulter-gen. Do not edit it manually! + +package v1alpha1 + +import ( + runtime "k8s.io/apimachinery/pkg/runtime" +) + +// RegisterDefaults adds defaulters functions to the given scheme. +// Public to allow building arbitrary schemes. +// All generated defaulters are covering - they call all nested defaulters. +func RegisterDefaults(scheme *runtime.Scheme) error { + return nil +} diff --git a/vendor/k8s.io/apimachinery/pkg/conversion/unstructured/converter.go b/vendor/k8s.io/apimachinery/pkg/conversion/unstructured/converter.go new file mode 100644 index 00000000..cf84a619 --- /dev/null +++ b/vendor/k8s.io/apimachinery/pkg/conversion/unstructured/converter.go @@ -0,0 +1,690 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package unstructured + +import ( + "bytes" + encodingjson "encoding/json" + "fmt" + "math" + "os" + "reflect" + "strconv" + "strings" + "sync" + "sync/atomic" + + apiequality "k8s.io/apimachinery/pkg/api/equality" + "k8s.io/apimachinery/pkg/util/diff" + "k8s.io/apimachinery/pkg/util/json" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" + + "github.com/golang/glog" +) + +// Converter is an interface for converting between interface{} +// and map[string]interface representation. +type Converter interface { + ToUnstructured(obj interface{}, u *map[string]interface{}) error + FromUnstructured(u map[string]interface{}, obj interface{}) error +} + +type structField struct { + structType reflect.Type + field int +} + +type fieldInfo struct { + name string + nameValue reflect.Value + omitempty bool +} + +type fieldsCacheMap map[structField]*fieldInfo + +type fieldsCache struct { + sync.Mutex + value atomic.Value +} + +func newFieldsCache() *fieldsCache { + cache := &fieldsCache{} + cache.value.Store(make(fieldsCacheMap)) + return cache +} + +var ( + marshalerType = reflect.TypeOf(new(encodingjson.Marshaler)).Elem() + unmarshalerType = reflect.TypeOf(new(encodingjson.Unmarshaler)).Elem() + mapStringInterfaceType = reflect.TypeOf(map[string]interface{}{}) + stringType = reflect.TypeOf(string("")) + int64Type = reflect.TypeOf(int64(0)) + uint64Type = reflect.TypeOf(uint64(0)) + float64Type = reflect.TypeOf(float64(0)) + boolType = reflect.TypeOf(bool(false)) + fieldCache = newFieldsCache() + DefaultConverter = NewConverter(parseBool(os.Getenv("KUBE_PATCH_CONVERSION_DETECTOR"))) +) + +func parseBool(key string) bool { + if len(key) == 0 { + return false + } + value, err := strconv.ParseBool(key) + if err != nil { + utilruntime.HandleError(fmt.Errorf("Couldn't parse '%s' as bool for unstructured mismatch detection", key)) + } + return value +} + +// ConverterImpl knows how to convert between interface{} and +// Unstructured in both ways. +type converterImpl struct { + // If true, we will be additionally running conversion via json + // to ensure that the result is true. + // This is supposed to be set only in tests. + mismatchDetection bool +} + +func NewConverter(mismatchDetection bool) Converter { + return &converterImpl{ + mismatchDetection: mismatchDetection, + } +} + +func (c *converterImpl) FromUnstructured(u map[string]interface{}, obj interface{}) error { + t := reflect.TypeOf(obj) + value := reflect.ValueOf(obj) + if t.Kind() != reflect.Ptr || value.IsNil() { + return fmt.Errorf("FromUnstructured requires a non-nil pointer to an object, got %v", t) + } + err := fromUnstructured(reflect.ValueOf(u), value.Elem()) + if c.mismatchDetection { + newObj := reflect.New(t.Elem()).Interface() + newErr := fromUnstructuredViaJSON(u, newObj) + if (err != nil) != (newErr != nil) { + glog.Fatalf("FromUnstructured unexpected error for %v: error: %v", u, err) + } + if err == nil && !apiequality.Semantic.DeepEqual(obj, newObj) { + glog.Fatalf("FromUnstructured mismatch for %#v, diff: %v", obj, diff.ObjectReflectDiff(obj, newObj)) + } + } + return err +} + +func fromUnstructuredViaJSON(u map[string]interface{}, obj interface{}) error { + data, err := json.Marshal(u) + if err != nil { + return err + } + return json.Unmarshal(data, obj) +} + +func fromUnstructured(sv, dv reflect.Value) error { + sv = unwrapInterface(sv) + if !sv.IsValid() { + dv.Set(reflect.Zero(dv.Type())) + return nil + } + st, dt := sv.Type(), dv.Type() + + switch dt.Kind() { + case reflect.Map, reflect.Slice, reflect.Ptr, reflect.Struct, reflect.Interface: + // Those require non-trivial conversion. + default: + // This should handle all simple types. + if st.AssignableTo(dt) { + dv.Set(sv) + return nil + } + // We cannot simply use "ConvertibleTo", as JSON doesn't support conversions + // between those four groups: bools, integers, floats and string. We need to + // do the same. + if st.ConvertibleTo(dt) { + switch st.Kind() { + case reflect.String: + switch dt.Kind() { + case reflect.String: + dv.Set(sv.Convert(dt)) + return nil + } + case reflect.Bool: + switch dt.Kind() { + case reflect.Bool: + dv.Set(sv.Convert(dt)) + return nil + } + case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64, + reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64: + switch dt.Kind() { + case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64, + reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64: + dv.Set(sv.Convert(dt)) + return nil + } + case reflect.Float32, reflect.Float64: + switch dt.Kind() { + case reflect.Float32, reflect.Float64: + dv.Set(sv.Convert(dt)) + return nil + } + if sv.Float() == math.Trunc(sv.Float()) { + dv.Set(sv.Convert(dt)) + return nil + } + } + return fmt.Errorf("cannot convert %s to %s", st.String(), dt.String()) + } + } + + // Check if the object has a custom JSON marshaller/unmarshaller. + if reflect.PtrTo(dt).Implements(unmarshalerType) { + data, err := json.Marshal(sv.Interface()) + if err != nil { + return fmt.Errorf("error encoding %s to json: %v", st.String(), err) + } + unmarshaler := dv.Addr().Interface().(encodingjson.Unmarshaler) + return unmarshaler.UnmarshalJSON(data) + } + + switch dt.Kind() { + case reflect.Map: + return mapFromUnstructured(sv, dv) + case reflect.Slice: + return sliceFromUnstructured(sv, dv) + case reflect.Ptr: + return pointerFromUnstructured(sv, dv) + case reflect.Struct: + return structFromUnstructured(sv, dv) + case reflect.Interface: + return interfaceFromUnstructured(sv, dv) + default: + return fmt.Errorf("unrecognized type: %v", dt.Kind()) + } +} + +func fieldInfoFromField(structType reflect.Type, field int) *fieldInfo { + fieldCacheMap := fieldCache.value.Load().(fieldsCacheMap) + if info, ok := fieldCacheMap[structField{structType, field}]; ok { + return info + } + + // Cache miss - we need to compute the field name. + info := &fieldInfo{} + typeField := structType.Field(field) + jsonTag := typeField.Tag.Get("json") + if len(jsonTag) == 0 { + // Make the first character lowercase. + if typeField.Name == "" { + info.name = typeField.Name + } else { + info.name = strings.ToLower(typeField.Name[:1]) + typeField.Name[1:] + } + } else { + items := strings.Split(jsonTag, ",") + info.name = items[0] + for i := range items { + if items[i] == "omitempty" { + info.omitempty = true + } + } + } + info.nameValue = reflect.ValueOf(info.name) + + fieldCache.Lock() + defer fieldCache.Unlock() + fieldCacheMap = fieldCache.value.Load().(fieldsCacheMap) + newFieldCacheMap := make(fieldsCacheMap) + for k, v := range fieldCacheMap { + newFieldCacheMap[k] = v + } + newFieldCacheMap[structField{structType, field}] = info + fieldCache.value.Store(newFieldCacheMap) + return info +} + +func unwrapInterface(v reflect.Value) reflect.Value { + for v.Kind() == reflect.Interface { + v = v.Elem() + } + return v +} + +func mapFromUnstructured(sv, dv reflect.Value) error { + st, dt := sv.Type(), dv.Type() + if st.Kind() != reflect.Map { + return fmt.Errorf("cannot restore map from %v", st.Kind()) + } + + if !st.Key().AssignableTo(dt.Key()) && !st.Key().ConvertibleTo(dt.Key()) { + return fmt.Errorf("cannot copy map with non-assignable keys: %v %v", st.Key(), dt.Key()) + } + + if sv.IsNil() { + dv.Set(reflect.Zero(dt)) + return nil + } + dv.Set(reflect.MakeMap(dt)) + for _, key := range sv.MapKeys() { + value := reflect.New(dt.Elem()).Elem() + if val := unwrapInterface(sv.MapIndex(key)); val.IsValid() { + if err := fromUnstructured(val, value); err != nil { + return err + } + } else { + value.Set(reflect.Zero(dt.Elem())) + } + if st.Key().AssignableTo(dt.Key()) { + dv.SetMapIndex(key, value) + } else { + dv.SetMapIndex(key.Convert(dt.Key()), value) + } + } + return nil +} + +func sliceFromUnstructured(sv, dv reflect.Value) error { + st, dt := sv.Type(), dv.Type() + if st.Kind() == reflect.String && dt.Elem().Kind() == reflect.Uint8 { + // We store original []byte representation as string. + // This conversion is allowed, but we need to be careful about + // marshaling data appropriately. + if len(sv.Interface().(string)) > 0 { + marshalled, err := json.Marshal(sv.Interface()) + if err != nil { + return fmt.Errorf("error encoding %s to json: %v", st, err) + } + // TODO: Is this Unmarshal needed? + var data []byte + err = json.Unmarshal(marshalled, &data) + if err != nil { + return fmt.Errorf("error decoding from json: %v", err) + } + dv.SetBytes(data) + } else { + dv.Set(reflect.Zero(dt)) + } + return nil + } + if st.Kind() != reflect.Slice { + return fmt.Errorf("cannot restore slice from %v", st.Kind()) + } + + if sv.IsNil() { + dv.Set(reflect.Zero(dt)) + return nil + } + dv.Set(reflect.MakeSlice(dt, sv.Len(), sv.Cap())) + for i := 0; i < sv.Len(); i++ { + if err := fromUnstructured(sv.Index(i), dv.Index(i)); err != nil { + return err + } + } + return nil +} + +func pointerFromUnstructured(sv, dv reflect.Value) error { + st, dt := sv.Type(), dv.Type() + + if st.Kind() == reflect.Ptr && sv.IsNil() { + dv.Set(reflect.Zero(dt)) + return nil + } + dv.Set(reflect.New(dt.Elem())) + switch st.Kind() { + case reflect.Ptr, reflect.Interface: + return fromUnstructured(sv.Elem(), dv.Elem()) + default: + return fromUnstructured(sv, dv.Elem()) + } +} + +func structFromUnstructured(sv, dv reflect.Value) error { + st, dt := sv.Type(), dv.Type() + if st.Kind() != reflect.Map { + return fmt.Errorf("cannot restore struct from: %v", st.Kind()) + } + + for i := 0; i < dt.NumField(); i++ { + fieldInfo := fieldInfoFromField(dt, i) + fv := dv.Field(i) + + if len(fieldInfo.name) == 0 { + // This field is inlined. + if err := fromUnstructured(sv, fv); err != nil { + return err + } + } else { + value := unwrapInterface(sv.MapIndex(fieldInfo.nameValue)) + if value.IsValid() { + if err := fromUnstructured(value, fv); err != nil { + return err + } + } else { + fv.Set(reflect.Zero(fv.Type())) + } + } + } + return nil +} + +func interfaceFromUnstructured(sv, dv reflect.Value) error { + // TODO: Is this conversion safe? + dv.Set(sv) + return nil +} + +func (c *converterImpl) ToUnstructured(obj interface{}, u *map[string]interface{}) error { + t := reflect.TypeOf(obj) + value := reflect.ValueOf(obj) + if t.Kind() != reflect.Ptr || value.IsNil() { + return fmt.Errorf("ToUnstructured requires a non-nil pointer to an object, got %v", t) + } + err := toUnstructured(value.Elem(), reflect.ValueOf(u).Elem()) + if c.mismatchDetection { + newUnstr := &map[string]interface{}{} + newErr := toUnstructuredViaJSON(obj, newUnstr) + if (err != nil) != (newErr != nil) { + glog.Fatalf("ToUnstructured unexpected error for %v: error: %v", obj, err) + } + if err == nil && !apiequality.Semantic.DeepEqual(u, newUnstr) { + glog.Fatalf("ToUnstructured mismatch for %#v, diff: %v", u, diff.ObjectReflectDiff(u, newUnstr)) + } + } + return err +} + +func toUnstructuredViaJSON(obj interface{}, u *map[string]interface{}) error { + data, err := json.Marshal(obj) + if err != nil { + return err + } + return json.Unmarshal(data, u) +} + +func toUnstructured(sv, dv reflect.Value) error { + st, dt := sv.Type(), dv.Type() + + // Check if the object has a custom JSON marshaller/unmarshaller. + if st.Implements(marshalerType) { + if sv.Kind() == reflect.Ptr && sv.IsNil() { + // We're done - we don't need to store anything. + return nil + } + + marshaler := sv.Interface().(encodingjson.Marshaler) + data, err := marshaler.MarshalJSON() + if err != nil { + return err + } + if bytes.Equal(data, []byte("null")) { + // We're done - we don't need to store anything. + } else { + switch { + case len(data) > 0 && data[0] == '"': + var result string + err := json.Unmarshal(data, &result) + if err != nil { + return fmt.Errorf("error decoding from json: %v", err) + } + dv.Set(reflect.ValueOf(result)) + case len(data) > 0 && data[0] == '{': + result := make(map[string]interface{}) + err := json.Unmarshal(data, &result) + if err != nil { + return fmt.Errorf("error decoding from json: %v", err) + } + dv.Set(reflect.ValueOf(result)) + default: + var result int64 + err := json.Unmarshal(data, &result) + if err != nil { + return fmt.Errorf("error decoding from json: %v", err) + } + dv.Set(reflect.ValueOf(result)) + } + } + return nil + } + + switch st.Kind() { + case reflect.String: + if dt.Kind() == reflect.Interface && dv.NumMethod() == 0 { + dv.Set(reflect.New(stringType)) + } + dv.Set(reflect.ValueOf(sv.String())) + return nil + case reflect.Bool: + if dt.Kind() == reflect.Interface && dv.NumMethod() == 0 { + dv.Set(reflect.New(boolType)) + } + dv.Set(reflect.ValueOf(sv.Bool())) + return nil + case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64: + if dt.Kind() == reflect.Interface && dv.NumMethod() == 0 { + dv.Set(reflect.New(int64Type)) + } + dv.Set(reflect.ValueOf(sv.Int())) + return nil + case reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64: + if dt.Kind() == reflect.Interface && dv.NumMethod() == 0 { + dv.Set(reflect.New(uint64Type)) + } + dv.Set(reflect.ValueOf(sv.Uint())) + return nil + case reflect.Float32, reflect.Float64: + if dt.Kind() == reflect.Interface && dv.NumMethod() == 0 { + dv.Set(reflect.New(float64Type)) + } + dv.Set(reflect.ValueOf(sv.Float())) + return nil + case reflect.Map: + return mapToUnstructured(sv, dv) + case reflect.Slice: + return sliceToUnstructured(sv, dv) + case reflect.Ptr: + return pointerToUnstructured(sv, dv) + case reflect.Struct: + return structToUnstructured(sv, dv) + case reflect.Interface: + return interfaceToUnstructured(sv, dv) + default: + return fmt.Errorf("unrecognized type: %v", st.Kind()) + } +} + +func mapToUnstructured(sv, dv reflect.Value) error { + st, dt := sv.Type(), dv.Type() + if sv.IsNil() { + dv.Set(reflect.Zero(dt)) + return nil + } + if dt.Kind() == reflect.Interface && dv.NumMethod() == 0 { + if st.Key().Kind() == reflect.String { + switch st.Elem().Kind() { + // TODO It should be possible to reuse the slice for primitive types. + // However, it is panicing in the following form. + // case reflect.String, reflect.Bool, + // reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64, + // reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64: + // sv.Set(sv) + // return nil + default: + // We need to do a proper conversion. + } + } + dv.Set(reflect.MakeMap(mapStringInterfaceType)) + dv = dv.Elem() + dt = dv.Type() + } + if dt.Kind() != reflect.Map { + return fmt.Errorf("cannot convert struct to: %v", dt.Kind()) + } + + if !st.Key().AssignableTo(dt.Key()) && !st.Key().ConvertibleTo(dt.Key()) { + return fmt.Errorf("cannot copy map with non-assignable keys: %v %v", st.Key(), dt.Key()) + } + + for _, key := range sv.MapKeys() { + value := reflect.New(dt.Elem()).Elem() + if err := toUnstructured(sv.MapIndex(key), value); err != nil { + return err + } + if st.Key().AssignableTo(dt.Key()) { + dv.SetMapIndex(key, value) + } else { + dv.SetMapIndex(key.Convert(dt.Key()), value) + } + } + return nil +} + +func sliceToUnstructured(sv, dv reflect.Value) error { + st, dt := sv.Type(), dv.Type() + if sv.IsNil() { + dv.Set(reflect.Zero(dt)) + return nil + } + if st.Elem().Kind() == reflect.Uint8 { + dv.Set(reflect.New(stringType)) + data, err := json.Marshal(sv.Bytes()) + if err != nil { + return err + } + var result string + if err = json.Unmarshal(data, &result); err != nil { + return err + } + dv.Set(reflect.ValueOf(result)) + return nil + } + if dt.Kind() == reflect.Interface && dv.NumMethod() == 0 { + switch st.Elem().Kind() { + // TODO It should be possible to reuse the slice for primitive types. + // However, it is panicing in the following form. + // case reflect.String, reflect.Bool, + // reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64, + // reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64: + // sv.Set(sv) + // return nil + default: + // We need to do a proper conversion. + dv.Set(reflect.MakeSlice(reflect.SliceOf(dt), sv.Len(), sv.Cap())) + dv = dv.Elem() + dt = dv.Type() + } + } + if dt.Kind() != reflect.Slice { + return fmt.Errorf("cannot convert slice to: %v", dt.Kind()) + } + for i := 0; i < sv.Len(); i++ { + if err := toUnstructured(sv.Index(i), dv.Index(i)); err != nil { + return err + } + } + return nil +} + +func pointerToUnstructured(sv, dv reflect.Value) error { + if sv.IsNil() { + // We're done - we don't need to store anything. + return nil + } + return toUnstructured(sv.Elem(), dv) +} + +func isZero(v reflect.Value) bool { + switch v.Kind() { + case reflect.Array, reflect.String: + return v.Len() == 0 + case reflect.Bool: + return !v.Bool() + case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64: + return v.Int() == 0 + case reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64: + return v.Uint() == 0 + case reflect.Float32, reflect.Float64: + return v.Float() == 0 + case reflect.Map, reflect.Slice: + // TODO: It seems that 0-len maps are ignored in it. + return v.IsNil() || v.Len() == 0 + case reflect.Ptr, reflect.Interface: + return v.IsNil() + } + return false +} + +func structToUnstructured(sv, dv reflect.Value) error { + st, dt := sv.Type(), dv.Type() + if dt.Kind() == reflect.Interface && dv.NumMethod() == 0 { + dv.Set(reflect.MakeMap(mapStringInterfaceType)) + dv = dv.Elem() + dt = dv.Type() + } + if dt.Kind() != reflect.Map { + return fmt.Errorf("cannot convert struct to: %v", dt.Kind()) + } + realMap := dv.Interface().(map[string]interface{}) + + for i := 0; i < st.NumField(); i++ { + fieldInfo := fieldInfoFromField(st, i) + fv := sv.Field(i) + + if fieldInfo.name == "-" { + // This field should be skipped. + continue + } + if fieldInfo.omitempty && isZero(fv) { + // omitempty fields should be ignored. + continue + } + if len(fieldInfo.name) == 0 { + // This field is inlined. + if err := toUnstructured(fv, dv); err != nil { + return err + } + continue + } + switch fv.Type().Kind() { + case reflect.String: + realMap[fieldInfo.name] = fv.String() + case reflect.Bool: + realMap[fieldInfo.name] = fv.Bool() + case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64: + realMap[fieldInfo.name] = fv.Int() + case reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64: + realMap[fieldInfo.name] = fv.Uint() + case reflect.Float32, reflect.Float64: + realMap[fieldInfo.name] = fv.Float() + default: + subv := reflect.New(dt.Elem()).Elem() + if err := toUnstructured(fv, subv); err != nil { + return err + } + dv.SetMapIndex(fieldInfo.nameValue, subv) + } + } + return nil +} + +func interfaceToUnstructured(sv, dv reflect.Value) error { + if !sv.IsValid() || sv.IsNil() { + dv.Set(reflect.Zero(dv.Type())) + return nil + } + return toUnstructured(sv.Elem(), dv) +} diff --git a/vendor/k8s.io/apimachinery/pkg/conversion/unstructured/doc.go b/vendor/k8s.io/apimachinery/pkg/conversion/unstructured/doc.go new file mode 100644 index 00000000..cd40e74b --- /dev/null +++ b/vendor/k8s.io/apimachinery/pkg/conversion/unstructured/doc.go @@ -0,0 +1,19 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// Package unstructured provides conversion from runtime objects +// to map[string]interface{} representation. +package unstructured // import "k8s.io/apimachinery/pkg/conversion/unstructured" diff --git a/vendor/k8s.io/apimachinery/pkg/fields/selector.go b/vendor/k8s.io/apimachinery/pkg/fields/selector.go index bb156b4c..1305dde0 100644 --- a/vendor/k8s.io/apimachinery/pkg/fields/selector.go +++ b/vendor/k8s.io/apimachinery/pkg/fields/selector.go @@ -40,6 +40,8 @@ type Selector interface { // Transform returns a new copy of the selector after TransformFunc has been // applied to the entire selector, or an error if fn returns an error. + // If for a given requirement both field and value are transformed to empty + // string, the requirement is skipped. Transform(fn TransformFunc) (Selector, error) // Requirements converts this interface to Requirements to expose @@ -79,6 +81,9 @@ func (t *hasTerm) Transform(fn TransformFunc) (Selector, error) { if err != nil { return nil, err } + if len(field) == 0 && len(value) == 0 { + return Everything(), nil + } return &hasTerm{field, value}, nil } @@ -115,6 +120,9 @@ func (t *notHasTerm) Transform(fn TransformFunc) (Selector, error) { if err != nil { return nil, err } + if len(field) == 0 && len(value) == 0 { + return Everything(), nil + } return ¬HasTerm{field, value}, nil } @@ -169,13 +177,15 @@ func (t andTerm) RequiresExactMatch(field string) (string, bool) { } func (t andTerm) Transform(fn TransformFunc) (Selector, error) { - next := make([]Selector, len([]Selector(t))) - for i, s := range []Selector(t) { + next := make([]Selector, 0, len([]Selector(t))) + for _, s := range []Selector(t) { n, err := s.Transform(fn) if err != nil { return nil, err } - next[i] = n + if !n.Empty() { + next = append(next, n) + } } return andTerm(next), nil } @@ -222,7 +232,7 @@ var valueEscaper = strings.NewReplacer( `=`, `\=`, ) -// Escapes an arbitrary literal string for use as a fieldSelector value +// EscapeValue escapes an arbitrary literal string for use as a fieldSelector value func EscapeValue(s string) string { return valueEscaper.Replace(s) } @@ -245,7 +255,7 @@ func (i UnescapedRune) Error() string { return fmt.Sprintf("invalid field selector: unescaped character in value: %v", i.r) } -// Unescapes a fieldSelector value and returns the original literal value. +// UnescapeValue unescapes a fieldSelector value and returns the original literal value. // May return the original string if it contains no escaped or special characters. func UnescapeValue(s string) (string, error) { // if there's no escaping or special characters, just return to avoid allocation @@ -307,12 +317,12 @@ func ParseSelector(selector string) (Selector, error) { }) } -// Parses the selector and runs them through the given TransformFunc. +// ParseAndTransformSelector parses the selector and runs them through the given TransformFunc. func ParseAndTransformSelector(selector string, fn TransformFunc) (Selector, error) { return parseSelector(selector, fn) } -// Function to transform selectors. +// TransformFunc transforms selectors. type TransformFunc func(field, value string) (newField, newValue string, err error) // splitTerms returns the comma-separated terms contained in the given fieldSelector. diff --git a/vendor/k8s.io/apimachinery/pkg/labels/selector.go b/vendor/k8s.io/apimachinery/pkg/labels/selector.go index 9bddc35a..50b41f99 100644 --- a/vendor/k8s.io/apimachinery/pkg/labels/selector.go +++ b/vendor/k8s.io/apimachinery/pkg/labels/selector.go @@ -71,13 +71,14 @@ func Nothing() Selector { return nothingSelector{} } +// NewSelector returns a nil selector func NewSelector() Selector { return internalSelector(nil) } type internalSelector []Requirement -// Sort by key to obtain determisitic parser +// ByKey sorts requirements by key to obtain deterministic parser type ByKey []Requirement func (a ByKey) Len() int { return len(a) } @@ -215,12 +216,17 @@ func (r *Requirement) Matches(ls Labels) bool { } } +// Key returns requirement key func (r *Requirement) Key() string { return r.key } + +// Operator returns requirement operator func (r *Requirement) Operator() selection.Operator { return r.operator } + +// Values returns requirement values func (r *Requirement) Values() sets.String { ret := sets.String{} for i := range r.strValues { @@ -229,7 +235,7 @@ func (r *Requirement) Values() sets.String { return ret } -// Return true if the internalSelector doesn't restrict selection space +// Empty returns true if the internalSelector doesn't restrict selection space func (lsel internalSelector) Empty() bool { if lsel == nil { return true @@ -320,23 +326,37 @@ func (lsel internalSelector) String() string { return strings.Join(reqs, ",") } -// constants definition for lexer token +// Token represents constant definition for lexer token type Token int const ( + // ErrorToken represents scan error ErrorToken Token = iota + // EndOfStringToken represents end of string EndOfStringToken + // ClosedParToken represents close parenthesis ClosedParToken + // CommaToken represents the comma CommaToken + // DoesNotExistToken represents logic not DoesNotExistToken + // DoubleEqualsToken represents double equals DoubleEqualsToken + // EqualsToken represents equal EqualsToken + // GreaterThanToken represents greater than GreaterThanToken - IdentifierToken // to represent keys and values + // IdentifierToken represents identifier, e.g. keys and values + IdentifierToken + // InToken represents in InToken + // LessThanToken represents less than LessThanToken + // NotEqualsToken represents not equal NotEqualsToken + // NotInToken represents not in NotInToken + // OpenParToken represents open parenthesis OpenParToken ) @@ -356,7 +376,7 @@ var string2token = map[string]Token{ "(": OpenParToken, } -// The item produced by the lexer. It contains the Token and the literal. +// ScannedItem contains the Token and the literal produced by the lexer. type ScannedItem struct { tok Token literal string @@ -401,8 +421,8 @@ func (l *Lexer) unread() { l.pos-- } -// scanIdOrKeyword scans string to recognize literal token (for example 'in') or an identifier. -func (l *Lexer) scanIdOrKeyword() (tok Token, lit string) { +// scanIDOrKeyword scans string to recognize literal token (for example 'in') or an identifier. +func (l *Lexer) scanIDOrKeyword() (tok Token, lit string) { var buffer []byte IdentifierLoop: for { @@ -474,7 +494,7 @@ func (l *Lexer) Lex() (tok Token, lit string) { return l.scanSpecialSymbol() default: l.unread() - return l.scanIdOrKeyword() + return l.scanIDOrKeyword() } } @@ -485,14 +505,16 @@ type Parser struct { position int } -// Parser context represents context during parsing: +// ParserContext represents context during parsing: // some literal for example 'in' and 'notin' can be // recognized as operator for example 'x in (a)' but // it can be recognized as value for example 'value in (in)' type ParserContext int const ( + // KeyAndOperator represents key and operator KeyAndOperator ParserContext = iota + // Values represents values Values ) @@ -798,11 +820,12 @@ func SelectorFromSet(ls Set) Selector { } var requirements internalSelector for label, value := range ls { - if r, err := NewRequirement(label, selection.Equals, []string{value}); err != nil { + r, err := NewRequirement(label, selection.Equals, []string{value}) + if err == nil { + requirements = append(requirements, *r) + } else { //TODO: double check errors when input comes from serialization? return internalSelector{} - } else { - requirements = append(requirements, *r) } } // sort to have deterministic string representation diff --git a/vendor/k8s.io/apimachinery/pkg/openapi/common.go b/vendor/k8s.io/apimachinery/pkg/openapi/common.go index e38f2b6c..bfab64a1 100644 --- a/vendor/k8s.io/apimachinery/pkg/openapi/common.go +++ b/vendor/k8s.io/apimachinery/pkg/openapi/common.go @@ -65,11 +65,11 @@ type Config struct { GetDefinitions GetOpenAPIDefinitions // GetOperationIDAndTags returns operation id and tags for a restful route. It is an optional function to customize operation IDs. - GetOperationIDAndTags func(servePath string, r *restful.Route) (string, []string, error) + GetOperationIDAndTags func(r *restful.Route) (string, []string, error) // GetDefinitionName returns a friendly name for a definition base on the serving path. parameter `name` is the full name of the definition. // It is an optional function to customize model names. - GetDefinitionName func(servePath string, name string) (string, spec.Extensions) + GetDefinitionName func(name string) (string, spec.Extensions) // PostProcessSpec runs after the spec is ready to serve. It allows a final modification to the spec before serving. PostProcessSpec func(*spec.Swagger) (*spec.Swagger, error) diff --git a/vendor/k8s.io/apimachinery/pkg/runtime/codec_check.go b/vendor/k8s.io/apimachinery/pkg/runtime/codec_check.go index 1d34ec1a..510444a4 100644 --- a/vendor/k8s.io/apimachinery/pkg/runtime/codec_check.go +++ b/vendor/k8s.io/apimachinery/pkg/runtime/codec_check.go @@ -28,8 +28,7 @@ import ( // object. (Will modify internalObject.) (Assumes JSON serialization.) // TODO: verify that the correct external version is chosen on encode... func CheckCodec(c Codec, internalType Object, externalTypes ...schema.GroupVersionKind) error { - _, err := Encode(c, internalType) - if err != nil { + if _, err := Encode(c, internalType); err != nil { return fmt.Errorf("Internal type not encodable: %v", err) } for _, et := range externalTypes { @@ -41,9 +40,8 @@ func CheckCodec(c Codec, internalType Object, externalTypes ...schema.GroupVersi if reflect.TypeOf(obj) != reflect.TypeOf(internalType) { return fmt.Errorf("decode of external type %s produced: %#v", et, obj) } - err = DecodeInto(c, exBytes, internalType) - if err != nil { - return fmt.Errorf("external type %s not convertable to internal type: %v", et, err) + if err = DecodeInto(c, exBytes, internalType); err != nil { + return fmt.Errorf("external type %s not convertible to internal type: %v", et, err) } } return nil diff --git a/vendor/k8s.io/apimachinery/pkg/runtime/generated.pb.go b/vendor/k8s.io/apimachinery/pkg/runtime/generated.pb.go index 4d07df09..bce8336a 100644 --- a/vendor/k8s.io/apimachinery/pkg/runtime/generated.pb.go +++ b/vendor/k8s.io/apimachinery/pkg/runtime/generated.pb.go @@ -744,30 +744,30 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 391 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x84, 0x90, 0x4f, 0x8b, 0xd3, 0x40, - 0x18, 0xc6, 0x93, 0x6d, 0xa1, 0xeb, 0xb4, 0xb0, 0x32, 0x1e, 0x8c, 0x7b, 0x98, 0x2c, 0x3d, 0xd9, - 0x83, 0x33, 0xb0, 0x22, 0x78, 0xdd, 0x94, 0x82, 0x22, 0x82, 0x0c, 0xfe, 0x01, 0x4f, 0x4e, 0x93, - 0x31, 0x1d, 0x62, 0xdf, 0x09, 0x93, 0x89, 0xb1, 0x37, 0x3f, 0x82, 0x1f, 0xab, 0xc7, 0x1e, 0x3d, - 0x15, 0x1b, 0x3f, 0x84, 0x57, 0xe9, 0x74, 0x5a, 0x6b, 0x45, 0xf6, 0x96, 0x79, 0x9f, 0xe7, 0xf7, - 0xbc, 0xcf, 0x1b, 0xf4, 0xac, 0x78, 0x5a, 0x51, 0xa5, 0x59, 0x51, 0x4f, 0xa5, 0x01, 0x69, 0x65, - 0xc5, 0x3e, 0x4b, 0xc8, 0xb4, 0x61, 0x5e, 0x10, 0xa5, 0x9a, 0x8b, 0x74, 0xa6, 0x40, 0x9a, 0x05, - 0x2b, 0x8b, 0x9c, 0x99, 0x1a, 0xac, 0x9a, 0x4b, 0x96, 0x4b, 0x90, 0x46, 0x58, 0x99, 0xd1, 0xd2, - 0x68, 0xab, 0x71, 0xbc, 0x03, 0xe8, 0x31, 0x40, 0xcb, 0x22, 0xa7, 0x1e, 0xb8, 0x7c, 0x94, 0x2b, - 0x3b, 0xab, 0xa7, 0x34, 0xd5, 0x73, 0x96, 0xeb, 0x5c, 0x33, 0xc7, 0x4d, 0xeb, 0x8f, 0xee, 0xe5, - 0x1e, 0xee, 0x6b, 0x97, 0x77, 0xf9, 0xf8, 0x7f, 0x05, 0x6a, 0xab, 0x3e, 0x31, 0x05, 0xb6, 0xb2, - 0xe6, 0xb4, 0xc4, 0x70, 0x84, 0x06, 0x5c, 0x34, 0x93, 0x2f, 0x56, 0x42, 0xa5, 0x34, 0xe0, 0x07, - 0xa8, 0x63, 0x44, 0x13, 0x85, 0x57, 0xe1, 0xc3, 0x41, 0xd2, 0x6b, 0xd7, 0x71, 0x87, 0x8b, 0x86, - 0x6f, 0x67, 0xc3, 0x0f, 0xe8, 0xfc, 0xf5, 0xa2, 0x94, 0x2f, 0xa5, 0x15, 0xf8, 0x1a, 0x21, 0x51, - 0xaa, 0xb7, 0xd2, 0x6c, 0x21, 0xe7, 0xbe, 0x93, 0xe0, 0xe5, 0x3a, 0x0e, 0xda, 0x75, 0x8c, 0x6e, - 0x5e, 0x3d, 0xf7, 0x0a, 0x3f, 0x72, 0xe1, 0x2b, 0xd4, 0x2d, 0x14, 0x64, 0xd1, 0x99, 0x73, 0x0f, - 0xbc, 0xbb, 0xfb, 0x42, 0x41, 0xc6, 0x9d, 0x32, 0xfc, 0x15, 0xa2, 0xde, 0x1b, 0x28, 0x40, 0x37, - 0x80, 0xdf, 0xa1, 0x73, 0xeb, 0xb7, 0xb9, 0xfc, 0xfe, 0xf5, 0x88, 0xde, 0xf2, 0xc3, 0xe8, 0xbe, - 0x5e, 0x72, 0xd7, 0x87, 0x1f, 0x0a, 0xf3, 0x43, 0xd8, 0xfe, 0xc2, 0xb3, 0x7f, 0x2f, 0xc4, 0x37, - 0xe8, 0x22, 0xd5, 0x60, 0x25, 0xd8, 0x09, 0xa4, 0x3a, 0x53, 0x90, 0x47, 0x1d, 0x57, 0xf6, 0xbe, - 0xcf, 0xbb, 0x18, 0xff, 0x2d, 0xf3, 0x53, 0x3f, 0x7e, 0x82, 0xfa, 0x7e, 0xb4, 0x5d, 0x1d, 0x75, - 0x1d, 0x7e, 0xcf, 0xe3, 0xfd, 0xf1, 0x1f, 0x89, 0x1f, 0xfb, 0x92, 0xd1, 0x72, 0x43, 0x82, 0xd5, - 0x86, 0x04, 0xdf, 0x37, 0x24, 0xf8, 0xda, 0x92, 0x70, 0xd9, 0x92, 0x70, 0xd5, 0x92, 0xf0, 0x47, - 0x4b, 0xc2, 0x6f, 0x3f, 0x49, 0xf0, 0xbe, 0xe7, 0x8f, 0xfc, 0x1d, 0x00, 0x00, 0xff, 0xff, 0x5d, - 0x24, 0xc6, 0x1a, 0x81, 0x02, 0x00, 0x00, + // 395 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x84, 0x90, 0x4f, 0x6f, 0xd3, 0x30, + 0x18, 0xc6, 0xe3, 0xb5, 0x52, 0x87, 0x5b, 0x69, 0xc8, 0x1c, 0x08, 0x3b, 0x38, 0x53, 0x4f, 0xec, + 0x30, 0x5b, 0x1a, 0x42, 0xe2, 0xba, 0x4c, 0x93, 0x40, 0x08, 0x09, 0x59, 0xfc, 0x91, 0x38, 0xe1, + 0x26, 0x26, 0xb3, 0x42, 0x5f, 0x47, 0x8e, 0x43, 0xd8, 0x8d, 0x8f, 0xc0, 0xc7, 0xea, 0x71, 0xc7, + 0x9e, 0x2a, 0x1a, 0x3e, 0x04, 0x57, 0x54, 0xd7, 0x2d, 0xa5, 0x08, 0xed, 0x16, 0xbf, 0xcf, 0xf3, + 0x7b, 0xde, 0xe7, 0x0d, 0x7e, 0x5e, 0x3e, 0xab, 0x99, 0x36, 0xbc, 0x6c, 0x26, 0xca, 0x82, 0x72, + 0xaa, 0xe6, 0x5f, 0x14, 0xe4, 0xc6, 0xf2, 0x20, 0xc8, 0x4a, 0x4f, 0x65, 0x76, 0xad, 0x41, 0xd9, + 0x1b, 0x5e, 0x95, 0x05, 0xb7, 0x0d, 0x38, 0x3d, 0x55, 0xbc, 0x50, 0xa0, 0xac, 0x74, 0x2a, 0x67, + 0x95, 0x35, 0xce, 0x90, 0x64, 0x0d, 0xb0, 0x5d, 0x80, 0x55, 0x65, 0xc1, 0x02, 0x70, 0x7c, 0x56, + 0x68, 0x77, 0xdd, 0x4c, 0x58, 0x66, 0xa6, 0xbc, 0x30, 0x85, 0xe1, 0x9e, 0x9b, 0x34, 0x9f, 0xfc, + 0xcb, 0x3f, 0xfc, 0xd7, 0x3a, 0xef, 0xf8, 0xc9, 0xff, 0x0a, 0x34, 0x4e, 0x7f, 0xe6, 0x1a, 0x5c, + 0xed, 0xec, 0x7e, 0x89, 0xf1, 0x29, 0x1e, 0x09, 0xd9, 0x5e, 0x7d, 0x75, 0x0a, 0x6a, 0x6d, 0x80, + 0x3c, 0xc2, 0x3d, 0x2b, 0xdb, 0x18, 0x9d, 0xa0, 0xc7, 0xa3, 0x74, 0xd0, 0x2d, 0x92, 0x9e, 0x90, + 0xad, 0x58, 0xcd, 0xc6, 0x1f, 0xf1, 0xe1, 0x9b, 0x9b, 0x4a, 0xbd, 0x52, 0x4e, 0x92, 0x73, 0x8c, + 0x65, 0xa5, 0xdf, 0x29, 0xbb, 0x82, 0xbc, 0xfb, 0x5e, 0x4a, 0x66, 0x8b, 0x24, 0xea, 0x16, 0x09, + 0xbe, 0x78, 0xfd, 0x22, 0x28, 0x62, 0xc7, 0x45, 0x4e, 0x70, 0xbf, 0xd4, 0x90, 0xc7, 0x07, 0xde, + 0x3d, 0x0a, 0xee, 0xfe, 0x4b, 0x0d, 0xb9, 0xf0, 0xca, 0xf8, 0x17, 0xc2, 0x83, 0xb7, 0x50, 0x82, + 0x69, 0x81, 0xbc, 0xc7, 0x87, 0x2e, 0x6c, 0xf3, 0xf9, 0xc3, 0xf3, 0x53, 0x76, 0xc7, 0x0f, 0x63, + 0x9b, 0x7a, 0xe9, 0xfd, 0x10, 0xbe, 0x2d, 0x2c, 0xb6, 0x61, 0x9b, 0x0b, 0x0f, 0xfe, 0xbd, 0x90, + 0x5c, 0xe0, 0xa3, 0xcc, 0x80, 0x53, 0xe0, 0xae, 0x20, 0x33, 0xb9, 0x86, 0x22, 0xee, 0xf9, 0xb2, + 0x0f, 0x43, 0xde, 0xd1, 0xe5, 0xdf, 0xb2, 0xd8, 0xf7, 0x93, 0xa7, 0x78, 0x18, 0x46, 0xab, 0xd5, + 0x71, 0xdf, 0xe3, 0x0f, 0x02, 0x3e, 0xbc, 0xfc, 0x23, 0x89, 0x5d, 0x5f, 0x7a, 0x36, 0x5b, 0xd2, + 0xe8, 0x76, 0x49, 0xa3, 0xf9, 0x92, 0x46, 0xdf, 0x3a, 0x8a, 0x66, 0x1d, 0x45, 0xb7, 0x1d, 0x45, + 0xf3, 0x8e, 0xa2, 0x1f, 0x1d, 0x45, 0xdf, 0x7f, 0xd2, 0xe8, 0xc3, 0x20, 0x1c, 0xfa, 0x3b, 0x00, + 0x00, 0xff, 0xff, 0x3f, 0x1e, 0x24, 0x09, 0x85, 0x02, 0x00, 0x00, } diff --git a/vendor/k8s.io/apimachinery/pkg/runtime/schema/generated.pb.go b/vendor/k8s.io/apimachinery/pkg/runtime/schema/generated.pb.go index 9e7e853e..e2cc1216 100644 --- a/vendor/k8s.io/apimachinery/pkg/runtime/schema/generated.pb.go +++ b/vendor/k8s.io/apimachinery/pkg/runtime/schema/generated.pb.go @@ -48,18 +48,18 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 199 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x74, 0xce, 0x2f, 0x4e, 0x05, 0x31, - 0x10, 0xc7, 0xf1, 0xd6, 0x20, 0x90, 0xc8, 0x27, 0x46, 0x12, 0x0c, 0x1d, 0x81, 0x41, 0x73, 0x01, - 0x3c, 0xae, 0xbb, 0x6f, 0xe8, 0x36, 0xa5, 0x7f, 0xd2, 0x4e, 0x49, 0x70, 0x1c, 0x81, 0x63, 0xad, - 0x5c, 0x89, 0x64, 0xcb, 0x45, 0x48, 0xda, 0x15, 0x84, 0x04, 0xd7, 0x5f, 0x9a, 0xcf, 0xe4, 0x7b, - 0xf9, 0xe8, 0xee, 0x8b, 0xb2, 0x11, 0x5d, 0x9d, 0x28, 0x07, 0x62, 0x2a, 0xf8, 0x4a, 0xe1, 0x1c, - 0x33, 0x1e, 0x1f, 0x3a, 0x59, 0xaf, 0xe7, 0xc5, 0x06, 0xca, 0x6f, 0x98, 0x9c, 0xc1, 0x5c, 0x03, - 0x5b, 0x4f, 0x58, 0xe6, 0x85, 0xbc, 0x46, 0x43, 0x81, 0xb2, 0x66, 0x3a, 0xab, 0x94, 0x23, 0xc7, - 0xab, 0xeb, 0xe1, 0xd4, 0x6f, 0xa7, 0x92, 0x33, 0xea, 0x70, 0x6a, 0xb8, 0xd3, 0xad, 0xb1, 0xbc, - 0xd4, 0x49, 0xcd, 0xd1, 0xa3, 0x89, 0x26, 0x62, 0xe7, 0x53, 0x7d, 0xee, 0xab, 0x8f, 0xfe, 0x1a, - 0x67, 0x4f, 0x77, 0xff, 0xe5, 0x54, 0xb6, 0x2f, 0x68, 0x03, 0x17, 0xce, 0x7f, 0x5b, 0x1e, 0x6e, - 0xd6, 0x1d, 0xc4, 0xb6, 0x83, 0xf8, 0xdc, 0x41, 0xbc, 0x37, 0x90, 0x6b, 0x03, 0xb9, 0x35, 0x90, - 0x5f, 0x0d, 0xe4, 0xc7, 0x37, 0x88, 0xa7, 0x8b, 0x51, 0xf3, 0x13, 0x00, 0x00, 0xff, 0xff, 0xd9, - 0x82, 0x09, 0xbe, 0x07, 0x01, 0x00, 0x00, + // 202 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x74, 0xce, 0xaf, 0x4e, 0x04, 0x31, + 0x10, 0xc7, 0xf1, 0xd6, 0x20, 0x90, 0xc8, 0x13, 0x23, 0x51, 0xd0, 0x11, 0x18, 0x34, 0x2f, 0x80, + 0xc7, 0x75, 0xf7, 0x86, 0x6e, 0x53, 0xfa, 0x27, 0xed, 0x94, 0x04, 0xc7, 0x23, 0xf0, 0x58, 0x27, + 0x4f, 0xae, 0x64, 0xcb, 0x8b, 0x90, 0xb4, 0x2b, 0x08, 0xc9, 0xb9, 0xfe, 0xd2, 0x7c, 0x26, 0xdf, + 0xeb, 0x67, 0xf7, 0x58, 0x94, 0x8d, 0xe8, 0xea, 0x44, 0x39, 0x10, 0x53, 0xc1, 0x77, 0x0a, 0xc7, + 0x98, 0x71, 0xff, 0xd0, 0xc9, 0x7a, 0x3d, 0x2f, 0x36, 0x50, 0xfe, 0xc0, 0xe4, 0x0c, 0xe6, 0x1a, + 0xd8, 0x7a, 0xc2, 0x32, 0x2f, 0xe4, 0x35, 0x1a, 0x0a, 0x94, 0x35, 0xd3, 0x51, 0xa5, 0x1c, 0x39, + 0xde, 0xdc, 0x0e, 0xa7, 0xfe, 0x3a, 0x95, 0x9c, 0x51, 0xbb, 0x53, 0xc3, 0x1d, 0xee, 0x8d, 0xe5, + 0xa5, 0x4e, 0x6a, 0x8e, 0x1e, 0x4d, 0x34, 0x11, 0x3b, 0x9f, 0xea, 0x6b, 0x5f, 0x7d, 0xf4, 0xd7, + 0x38, 0x7b, 0x78, 0xb8, 0x94, 0x53, 0xd9, 0xbe, 0xa1, 0x0d, 0x5c, 0x38, 0xff, 0x6f, 0x79, 0xba, + 0x3b, 0x6d, 0x20, 0xce, 0x1b, 0x88, 0x75, 0x03, 0xf1, 0xd9, 0x40, 0x9e, 0x1a, 0xc8, 0x73, 0x03, + 0xb9, 0x36, 0x90, 0xdf, 0x0d, 0xe4, 0xd7, 0x0f, 0x88, 0x97, 0xab, 0x51, 0xf4, 0x1b, 0x00, 0x00, + 0xff, 0xff, 0xfd, 0x59, 0x57, 0x93, 0x0b, 0x01, 0x00, 0x00, } diff --git a/vendor/k8s.io/apimachinery/pkg/runtime/scheme.go b/vendor/k8s.io/apimachinery/pkg/runtime/scheme.go index d4f5f4a8..6c9475fa 100644 --- a/vendor/k8s.io/apimachinery/pkg/runtime/scheme.go +++ b/vendor/k8s.io/apimachinery/pkg/runtime/scheme.go @@ -151,8 +151,8 @@ func (s *Scheme) AddUnversionedTypes(version schema.GroupVersion, types ...Objec t := reflect.TypeOf(obj).Elem() gvk := version.WithKind(t.Name()) s.unversionedTypes[t] = gvk - if _, ok := s.unversionedKinds[gvk.Kind]; ok { - panic(fmt.Sprintf("%v has already been registered as unversioned kind %q - kind name must be unique", reflect.TypeOf(t), gvk.Kind)) + if old, ok := s.unversionedKinds[gvk.Kind]; ok && t != old { + panic(fmt.Sprintf("%v.%v has already been registered as unversioned kind %q - kind name must be unique", old.PkgPath(), old.Name(), gvk)) } s.unversionedKinds[gvk.Kind] = t } diff --git a/vendor/k8s.io/apimachinery/pkg/util/errors/errors.go b/vendor/k8s.io/apimachinery/pkg/util/errors/errors.go index de62fe39..bdea0e16 100644 --- a/vendor/k8s.io/apimachinery/pkg/util/errors/errors.go +++ b/vendor/k8s.io/apimachinery/pkg/util/errors/errors.go @@ -21,6 +21,9 @@ import ( "fmt" ) +// MessagesgCountMap contains occurance for each error message. +type MessageCountMap map[string]int + // Aggregate represents an object that contains multiple errors, but does not // necessarily have singular semantic meaning. type Aggregate interface { @@ -147,6 +150,22 @@ func Flatten(agg Aggregate) Aggregate { return NewAggregate(result) } +// CreateAggregateFromMessageCountMap converts MessageCountMap Aggregate +func CreateAggregateFromMessageCountMap(m MessageCountMap) Aggregate { + if m == nil { + return nil + } + result := make([]error, 0, len(m)) + for errStr, count := range m { + var countStr string + if count > 1 { + countStr = fmt.Sprintf(" (repeated %v times)", count) + } + result = append(result, fmt.Errorf("%v%v", errStr, countStr)) + } + return NewAggregate(result) +} + // Reduce will return err or, if err is an Aggregate and only has one item, // the first item in the aggregate. func Reduce(err error) error { diff --git a/vendor/k8s.io/apimachinery/pkg/util/intstr/generated.pb.go b/vendor/k8s.io/apimachinery/pkg/util/intstr/generated.pb.go index f9686e9a..433dfa5c 100644 --- a/vendor/k8s.io/apimachinery/pkg/util/intstr/generated.pb.go +++ b/vendor/k8s.io/apimachinery/pkg/util/intstr/generated.pb.go @@ -358,23 +358,24 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 288 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x4c, 0x8f, 0x31, 0x4b, 0xf4, 0x30, - 0x1c, 0xc6, 0x93, 0xf7, 0xee, 0x3d, 0xb4, 0x82, 0x43, 0x71, 0x38, 0x1c, 0xd2, 0xa2, 0x20, 0x5d, - 0x4c, 0x56, 0x71, 0xec, 0x76, 0x20, 0x08, 0x3d, 0x71, 0x70, 0x6b, 0xef, 0x62, 0x2e, 0xf4, 0x2e, - 0x09, 0xe9, 0xbf, 0x42, 0xb7, 0xfb, 0x08, 0xba, 0x39, 0xfa, 0x71, 0x3a, 0xde, 0xe8, 0x20, 0x87, - 0xad, 0xdf, 0xc2, 0x49, 0x9a, 0x16, 0x74, 0x4a, 0x9e, 0xe7, 0xf9, 0xfd, 0x02, 0xf1, 0x6e, 0xf2, - 0xab, 0x82, 0x4a, 0xcd, 0xf2, 0x32, 0xe3, 0x56, 0x71, 0xe0, 0x05, 0x7b, 0xe2, 0x6a, 0xa9, 0x2d, - 0x1b, 0x86, 0xd4, 0xc8, 0x4d, 0xba, 0x58, 0x49, 0xc5, 0x6d, 0xc5, 0x4c, 0x2e, 0x58, 0x09, 0x72, - 0xcd, 0xa4, 0x82, 0x02, 0x2c, 0x13, 0x5c, 0x71, 0x9b, 0x02, 0x5f, 0x52, 0x63, 0x35, 0x68, 0xff, - 0xbc, 0x97, 0xe8, 0x5f, 0x89, 0x9a, 0x5c, 0xd0, 0x4e, 0xa2, 0xbd, 0x74, 0x7a, 0x29, 0x24, 0xac, - 0xca, 0x8c, 0x2e, 0xf4, 0x86, 0x09, 0x2d, 0x34, 0x73, 0x6e, 0x56, 0x3e, 0xba, 0xe4, 0x82, 0xbb, - 0xf5, 0x6f, 0x9e, 0xbd, 0x60, 0xef, 0x68, 0xa6, 0xe0, 0xd6, 0xce, 0xc1, 0x4a, 0x25, 0xfc, 0xc8, - 0x1b, 0x43, 0x65, 0xf8, 0x14, 0x87, 0x38, 0x1a, 0xc5, 0x27, 0xf5, 0x3e, 0x40, 0xed, 0x3e, 0x18, - 0xdf, 0x55, 0x86, 0x7f, 0x0f, 0x67, 0xe2, 0x08, 0xff, 0xc2, 0x9b, 0x48, 0x05, 0xf7, 0xe9, 0x7a, - 0xfa, 0x2f, 0xc4, 0xd1, 0xff, 0xf8, 0x78, 0x60, 0x27, 0x33, 0xd7, 0x26, 0xc3, 0xda, 0x71, 0x05, - 0xd8, 0x8e, 0x1b, 0x85, 0x38, 0x3a, 0xfc, 0xe5, 0xe6, 0xae, 0x4d, 0x86, 0xf5, 0xfa, 0xe0, 0xf5, - 0x2d, 0x40, 0xdb, 0x8f, 0x10, 0xc5, 0x51, 0xdd, 0x10, 0xb4, 0x6b, 0x08, 0x7a, 0x6f, 0x08, 0xda, - 0xb6, 0x04, 0xd7, 0x2d, 0xc1, 0xbb, 0x96, 0xe0, 0xcf, 0x96, 0xe0, 0xe7, 0x2f, 0x82, 0x1e, 0x26, - 0xfd, 0x67, 0x7f, 0x02, 0x00, 0x00, 0xff, 0xff, 0xd6, 0x55, 0xdf, 0x2a, 0x60, 0x01, 0x00, 0x00, + // 292 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x4c, 0x8f, 0x31, 0x4b, 0x33, 0x31, + 0x1c, 0xc6, 0x93, 0xb7, 0x7d, 0x8b, 0x9e, 0xe0, 0x50, 0x1c, 0x8a, 0x43, 0x7a, 0x28, 0xc8, 0x0d, + 0x9a, 0xac, 0xe2, 0xd8, 0xad, 0x20, 0x08, 0x57, 0x71, 0x70, 0xbb, 0x6b, 0x63, 0x1a, 0xae, 0x4d, + 0x42, 0xee, 0x7f, 0xc2, 0x6d, 0xfd, 0x08, 0xba, 0x39, 0xfa, 0x71, 0x6e, 0xec, 0xd8, 0x41, 0x8a, + 0x17, 0xbf, 0x85, 0x93, 0x5c, 0xee, 0x40, 0xa7, 0xe4, 0x79, 0x9e, 0xdf, 0x2f, 0x90, 0xe0, 0x36, + 0xbb, 0xce, 0xa9, 0xd4, 0x2c, 0x2b, 0x52, 0x6e, 0x15, 0x07, 0x9e, 0xb3, 0x67, 0xae, 0x16, 0xda, + 0xb2, 0x6e, 0x48, 0x8c, 0x5c, 0x27, 0xf3, 0xa5, 0x54, 0xdc, 0x96, 0xcc, 0x64, 0x82, 0x15, 0x20, + 0x57, 0x4c, 0x2a, 0xc8, 0xc1, 0x32, 0xc1, 0x15, 0xb7, 0x09, 0xf0, 0x05, 0x35, 0x56, 0x83, 0x1e, + 0x9e, 0xb7, 0x12, 0xfd, 0x2b, 0x51, 0x93, 0x09, 0xda, 0x48, 0xb4, 0x95, 0x4e, 0xaf, 0x84, 0x84, + 0x65, 0x91, 0xd2, 0xb9, 0x5e, 0x33, 0xa1, 0x85, 0x66, 0xde, 0x4d, 0x8b, 0x27, 0x9f, 0x7c, 0xf0, + 0xb7, 0xf6, 0xcd, 0xb3, 0x57, 0x1c, 0x1c, 0x4d, 0x15, 0xdc, 0xd9, 0x19, 0x58, 0xa9, 0xc4, 0x30, + 0x0a, 0xfa, 0x50, 0x1a, 0x3e, 0xc2, 0x21, 0x8e, 0x7a, 0x93, 0x93, 0x6a, 0x3f, 0x46, 0x6e, 0x3f, + 0xee, 0xdf, 0x97, 0x86, 0x7f, 0x77, 0x67, 0xec, 0x89, 0xe1, 0x45, 0x30, 0x90, 0x0a, 0x1e, 0x92, + 0xd5, 0xe8, 0x5f, 0x88, 0xa3, 0xff, 0x93, 0xe3, 0x8e, 0x1d, 0x4c, 0x7d, 0x1b, 0x77, 0x6b, 0xc3, + 0xe5, 0x60, 0x1b, 0xae, 0x17, 0xe2, 0xe8, 0xf0, 0x97, 0x9b, 0xf9, 0x36, 0xee, 0xd6, 0x9b, 0x83, + 0xb7, 0xf7, 0x31, 0xda, 0x7c, 0x84, 0x68, 0x72, 0x59, 0xd5, 0x04, 0x6d, 0x6b, 0x82, 0x76, 0x35, + 0x41, 0x1b, 0x47, 0x70, 0xe5, 0x08, 0xde, 0x3a, 0x82, 0x77, 0x8e, 0xe0, 0x4f, 0x47, 0xf0, 0xcb, + 0x17, 0x41, 0x8f, 0x83, 0xf6, 0xc3, 0x3f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x52, 0xa0, 0xb5, 0xc9, + 0x64, 0x01, 0x00, 0x00, } diff --git a/vendor/k8s.io/apimachinery/pkg/util/mergepatch/errors.go b/vendor/k8s.io/apimachinery/pkg/util/mergepatch/errors.go index 7b7fc6a2..ac3c1e8c 100644 --- a/vendor/k8s.io/apimachinery/pkg/util/mergepatch/errors.go +++ b/vendor/k8s.io/apimachinery/pkg/util/mergepatch/errors.go @@ -19,20 +19,41 @@ package mergepatch import ( "errors" "fmt" + "reflect" ) var ( - ErrBadJSONDoc = errors.New("Invalid JSON document") - ErrNoListOfLists = errors.New("Lists of lists are not supported") - ErrBadPatchFormatForPrimitiveList = errors.New("Invalid patch format of primitive list") + ErrBadJSONDoc = errors.New("invalid JSON document") + ErrNoListOfLists = errors.New("lists of lists are not supported") + ErrBadPatchFormatForPrimitiveList = errors.New("invalid patch format of primitive list") + ErrBadPatchFormatForRetainKeys = errors.New("invalid patch format of retainKeys") + ErrBadPatchFormatForSetElementOrderList = errors.New("invalid patch format of setElementOrder list") + ErrPatchContentNotMatchRetainKeys = errors.New("patch content doesn't match retainKeys list") ) func ErrNoMergeKey(m map[string]interface{}, k string) error { return fmt.Errorf("map: %v does not contain declared merge key: %s", m, k) } -func ErrBadArgType(expected, actual string) error { - return fmt.Errorf("expected a %s, but received a %s", expected, actual) +func ErrBadArgType(expected, actual interface{}) error { + return fmt.Errorf("expected a %s, but received a %s", + reflect.TypeOf(expected), + reflect.TypeOf(actual)) +} + +func ErrBadArgKind(expected, actual interface{}) error { + var expectedKindString, actualKindString string + if expected == nil { + expectedKindString = "nil" + } else { + expectedKindString = reflect.TypeOf(expected).Kind().String() + } + if actual == nil { + actualKindString = "nil" + } else { + actualKindString = reflect.TypeOf(actual).Kind().String() + } + return fmt.Errorf("expected a %s, but received a %s", expectedKindString, actualKindString) } func ErrBadPatchType(t interface{}, m map[string]interface{}) error { diff --git a/vendor/k8s.io/apimachinery/pkg/util/net/http.go b/vendor/k8s.io/apimachinery/pkg/util/net/http.go index b3b2c988..adb80813 100644 --- a/vendor/k8s.io/apimachinery/pkg/util/net/http.go +++ b/vendor/k8s.io/apimachinery/pkg/util/net/http.go @@ -150,13 +150,13 @@ func GetHTTPClient(req *http.Request) string { return "unknown" } -// Extracts and returns the clients IP from the given request. -// Looks at X-Forwarded-For header, X-Real-Ip header and request.RemoteAddr in that order. -// Returns nil if none of them are set or is set to an invalid value. -func GetClientIP(req *http.Request) net.IP { +// SourceIPs splits the comma separated X-Forwarded-For header or returns the X-Real-Ip header or req.RemoteAddr, +// in that order, ignoring invalid IPs. It returns nil if all of these are empty or invalid. +func SourceIPs(req *http.Request) []net.IP { hdr := req.Header // First check the X-Forwarded-For header for requests via proxy. hdrForwardedFor := hdr.Get("X-Forwarded-For") + forwardedForIPs := []net.IP{} if hdrForwardedFor != "" { // X-Forwarded-For can be a csv of IPs in case of multiple proxies. // Use the first valid one. @@ -164,17 +164,20 @@ func GetClientIP(req *http.Request) net.IP { for _, part := range parts { ip := net.ParseIP(strings.TrimSpace(part)) if ip != nil { - return ip + forwardedForIPs = append(forwardedForIPs, ip) } } } + if len(forwardedForIPs) > 0 { + return forwardedForIPs + } // Try the X-Real-Ip header. hdrRealIp := hdr.Get("X-Real-Ip") if hdrRealIp != "" { ip := net.ParseIP(hdrRealIp) if ip != nil { - return ip + return []net.IP{ip} } } @@ -182,11 +185,43 @@ func GetClientIP(req *http.Request) net.IP { // Remote Address in Go's HTTP server is in the form host:port so we need to split that first. host, _, err := net.SplitHostPort(req.RemoteAddr) if err == nil { - return net.ParseIP(host) + if remoteIP := net.ParseIP(host); remoteIP != nil { + return []net.IP{remoteIP} + } } // Fallback if Remote Address was just IP. - return net.ParseIP(req.RemoteAddr) + if remoteIP := net.ParseIP(req.RemoteAddr); remoteIP != nil { + return []net.IP{remoteIP} + } + + return nil +} + +// Extracts and returns the clients IP from the given request. +// Looks at X-Forwarded-For header, X-Real-Ip header and request.RemoteAddr in that order. +// Returns nil if none of them are set or is set to an invalid value. +func GetClientIP(req *http.Request) net.IP { + ips := SourceIPs(req) + if len(ips) == 0 { + return nil + } + return ips[0] +} + +// Prepares the X-Forwarded-For header for another forwarding hop by appending the previous sender's +// IP address to the X-Forwarded-For chain. +func AppendForwardedForHeader(req *http.Request) { + // Copied from net/http/httputil/reverseproxy.go: + if clientIP, _, err := net.SplitHostPort(req.RemoteAddr); err == nil { + // If we aren't the first proxy retain prior + // X-Forwarded-For information as a comma+space + // separated list and fold multiple headers into one. + if prior, ok := req.Header["X-Forwarded-For"]; ok { + clientIP = strings.Join(prior, ", ") + ", " + clientIP + } + req.Header.Set("X-Forwarded-For", clientIP) + } } var defaultProxyFuncPointer = fmt.Sprintf("%p", http.ProxyFromEnvironment) diff --git a/vendor/k8s.io/apimachinery/pkg/util/strategicpatch/patch.go b/vendor/k8s.io/apimachinery/pkg/util/strategicpatch/patch.go index 9b1e325f..828df443 100644 --- a/vendor/k8s.io/apimachinery/pkg/util/strategicpatch/patch.go +++ b/vendor/k8s.io/apimachinery/pkg/util/strategicpatch/patch.go @@ -43,7 +43,11 @@ const ( replaceDirective = "replace" mergeDirective = "merge" + retainKeysStrategy = "retainKeys" + deleteFromPrimitiveListDirectivePrefix = "$deleteFromPrimitiveList" + retainKeysDirective = "$" + retainKeysStrategy + setElementOrderDirectivePrefix = "$setElementOrder" ) // JSONMap is a representations of JSON object encoded as map[string]interface{} @@ -54,15 +58,27 @@ const ( type JSONMap map[string]interface{} type DiffOptions struct { + // SetElementOrder determines whether we generate the $setElementOrder parallel list. + SetElementOrder bool // IgnoreChangesAndAdditions indicates if we keep the changes and additions in the patch. IgnoreChangesAndAdditions bool // IgnoreDeletions indicates if we keep the deletions in the patch. IgnoreDeletions bool + // We introduce a new value retainKeys for patchStrategy. + // It indicates that all fields needing to be preserved must be + // present in the `retainKeys` list. + // And the fields that are present will be merged with live object. + // All the missing fields will be cleared when patching. + BuildRetainKeysDirective bool } type MergeOptions struct { - // MergeDeleteList indicates if we are merging the delete parallel list. - MergeDeleteList bool + // MergeParallelList indicates if we are merging the parallel list. + // We don't merge parallel list when calling mergeMap() in CreateThreeWayMergePatch() + // which is called client-side. + // We merge parallel list iff when calling mergeMap() in StrategicMergeMapPatch() + // which is called server-side + MergeParallelList bool // IgnoreUnmatchedNulls indicates if we should process the unmatched nulls. IgnoreUnmatchedNulls bool } @@ -108,8 +124,7 @@ func CreateTwoWayMergeMapPatch(original, modified JSONMap, dataStruct interface{ } diffOptions := DiffOptions{ - IgnoreChangesAndAdditions: false, - IgnoreDeletions: false, + SetElementOrder: true, } patchMap, err := diffMaps(original, modified, t, diffOptions) if err != nil { @@ -127,13 +142,31 @@ func CreateTwoWayMergeMapPatch(original, modified JSONMap, dataStruct interface{ } // Returns a (recursive) strategic merge patch that yields modified when applied to original. +// Including: +// - Adding fields to the patch present in modified, missing from original +// - Setting fields to the patch present in modified and original with different values +// - Delete fields present in original, missing from modified through +// - IFF map field - set to nil in patch +// - IFF list of maps && merge strategy - use deleteDirective for the elements +// - IFF list of primitives && merge strategy - use parallel deletion list +// - IFF list of maps or primitives with replace strategy (default) - set patch value to the value in modified +// - Build $retainKeys directive for fields with retainKeys patch strategy func diffMaps(original, modified map[string]interface{}, t reflect.Type, diffOptions DiffOptions) (map[string]interface{}, error) { patch := map[string]interface{}{} + // Get the underlying type for pointers if t.Kind() == reflect.Ptr { t = t.Elem() } + // This will be used to build the $retainKeys directive sent in the patch + retainKeysList := make([]interface{}, 0, len(modified)) + // Compare each value in the modified map against the value in the original map for key, modifiedValue := range modified { + // Get the underlying type for pointers + if diffOptions.BuildRetainKeysDirective && modifiedValue != nil { + retainKeysList = append(retainKeysList, key) + } + originalValue, ok := original[key] if !ok { // Key was added, so add to patch @@ -144,6 +177,7 @@ func diffMaps(original, modified map[string]interface{}, t reflect.Type, diffOpt } // The patch may have a patch directive + // TODO: figure out if we need this. This shouldn't be needed by apply. When would the original map have patch directives in it? foundDirectiveMarker, err := handleDirectiveMarker(key, originalValue, modifiedValue, patch) if err != nil { return nil, err @@ -177,6 +211,14 @@ func diffMaps(original, modified map[string]interface{}, t reflect.Type, diffOpt } updatePatchIfMissing(original, modified, patch, diffOptions) + // Insert the retainKeysList iff there are values present in the retainKeysList and + // either of the following is true: + // - the patch is not empty + // - there are additional field in original that need to be cleared + if len(retainKeysList) > 0 && + (len(patch) > 0 || hasAdditionalNewField(original, modified)) { + patch[retainKeysDirective] = sortScalars(retainKeysList) + } return patch, nil } @@ -207,7 +249,7 @@ func handleDirectiveMarker(key string, originalValue, modifiedValue interface{}, // diffOptions contains multiple options to control how we do the diff. func handleMapDiff(key string, originalValue, modifiedValue, patch map[string]interface{}, t reflect.Type, diffOptions DiffOptions) error { - fieldType, fieldPatchStrategy, _, err := forkedjson.LookupPatchMetadata(t, key) + fieldType, fieldPatchStrategies, _, err := forkedjson.LookupPatchMetadata(t, key) if err != nil { // We couldn't look up metadata for the field // If the values are identical, this doesn't matter, no patch is needed @@ -217,7 +259,12 @@ func handleMapDiff(key string, originalValue, modifiedValue, patch map[string]in // Otherwise, return the error return err } - switch fieldPatchStrategy { + retainKeys, patchStrategy, err := extractRetainKeysPatchStrategy(fieldPatchStrategies) + if err != nil { + return err + } + diffOptions.BuildRetainKeysDirective = retainKeys + switch patchStrategy { // The patch strategic from metadata tells us to replace the entire object instead of diffing it case replaceDirective: if !diffOptions.IgnoreChangesAndAdditions { @@ -244,7 +291,7 @@ func handleMapDiff(key string, originalValue, modifiedValue, patch map[string]in // diffOptions contains multiple options to control how we do the diff. func handleSliceDiff(key string, originalValue, modifiedValue []interface{}, patch map[string]interface{}, t reflect.Type, diffOptions DiffOptions) error { - fieldType, fieldPatchStrategy, fieldPatchMergeKey, err := forkedjson.LookupPatchMetadata(t, key) + fieldType, fieldPatchStrategies, fieldPatchMergeKey, err := forkedjson.LookupPatchMetadata(t, key) if err != nil { // We couldn't look up metadata for the field // If the values are identical, this doesn't matter, no patch is needed @@ -254,11 +301,15 @@ func handleSliceDiff(key string, originalValue, modifiedValue []interface{}, pat // Otherwise, return the error return err } - - switch fieldPatchStrategy { + retainKeys, patchStrategy, err := extractRetainKeysPatchStrategy(fieldPatchStrategies) + if err != nil { + return err + } + switch patchStrategy { // Merge the 2 slices using mergePatchKey case mergeDirective: - addList, deletionList, err := diffLists(originalValue, modifiedValue, fieldType.Elem(), fieldPatchMergeKey, diffOptions) + diffOptions.BuildRetainKeysDirective = retainKeys + addList, deletionList, setOrderList, err := diffLists(originalValue, modifiedValue, fieldType.Elem(), fieldPatchMergeKey, diffOptions) if err != nil { return err } @@ -270,6 +321,10 @@ func handleSliceDiff(key string, originalValue, modifiedValue []interface{}, pat parallelDeletionListKey := fmt.Sprintf("%s/%s", deleteFromPrimitiveListDirectivePrefix, key) patch[parallelDeletionListKey] = deletionList } + if len(setOrderList) > 0 { + parallelSetOrderListKey := fmt.Sprintf("%s/%s", setElementOrderDirectivePrefix, key) + patch[parallelSetOrderListKey] = setOrderList + } default: replacePatchFieldIfNotEqual(key, originalValue, modifiedValue, patch, diffOptions) } @@ -311,44 +366,254 @@ func updatePatchIfMissing(original, modified, patch map[string]interface{}, diff } } -// Returns a (recursive) strategic merge patch and a parallel deletion list if necessary. +// validateMergeKeyInLists checks if each map in the list has the mentryerge key. +func validateMergeKeyInLists(mergeKey string, lists ...[]interface{}) error { + for _, list := range lists { + for _, item := range list { + m, ok := item.(map[string]interface{}) + if !ok { + return mergepatch.ErrBadArgType(m, item) + } + if _, ok = m[mergeKey]; !ok { + return mergepatch.ErrNoMergeKey(m, mergeKey) + } + } + } + return nil +} + +// normalizeElementOrder sort `patch` list by `patchOrder` and sort `serverOnly` list by `serverOrder`. +// Then it merges the 2 sorted lists. +// It guarantee the relative order in the patch list and in the serverOnly list is kept. +// `patch` is a list of items in the patch, and `serverOnly` is a list of items in the live object. +// `patchOrder` is the order we want `patch` list to have and +// `serverOrder` is the order we want `serverOnly` list to have. +// kind is the kind of each item in the lists `patch` and `serverOnly`. +func normalizeElementOrder(patch, serverOnly, patchOrder, serverOrder []interface{}, mergeKey string, kind reflect.Kind) ([]interface{}, error) { + patch, err := normalizeSliceOrder(patch, patchOrder, mergeKey, kind) + if err != nil { + return nil, err + } + serverOnly, err = normalizeSliceOrder(serverOnly, serverOrder, mergeKey, kind) + if err != nil { + return nil, err + } + all := mergeSortedSlice(serverOnly, patch, serverOrder, mergeKey, kind) + + return all, nil +} + +// mergeSortedSlice merges the 2 sorted lists by serverOrder with best effort. +// It will insert each item in `left` list to `right` list. In most cases, the 2 lists will be interleaved. +// The relative order of left and right are guaranteed to be kept. +// They have higher precedence than the order in the live list. +// The place for a item in `left` is found by: +// scan from the place of last insertion in `right` to the end of `right`, +// the place is before the first item that is greater than the item we want to insert. +// example usage: using server-only items as left and patch items as right. We insert server-only items +// to patch list. We use the order of live object as record for comparision. +func mergeSortedSlice(left, right, serverOrder []interface{}, mergeKey string, kind reflect.Kind) []interface{} { + // Returns if l is less than r, and if both have been found. + // If l and r both present and l is in front of r, l is less than r. + less := func(l, r interface{}) (bool, bool) { + li := index(serverOrder, l, mergeKey, kind) + ri := index(serverOrder, r, mergeKey, kind) + if li >= 0 && ri >= 0 { + return li < ri, true + } else { + return false, false + } + } + + // left and right should be non-overlapping. + size := len(left) + len(right) + i, j := 0, 0 + s := make([]interface{}, size, size) + + for k := 0; k < size; k++ { + if i >= len(left) && j < len(right) { + // have items left in `right` list + s[k] = right[j] + j++ + } else if j >= len(right) && i < len(left) { + // have items left in `left` list + s[k] = left[i] + i++ + } else { + // compare them if i and j are both in bound + less, foundBoth := less(left[i], right[j]) + if foundBoth && less { + s[k] = left[i] + i++ + } else { + s[k] = right[j] + j++ + } + } + } + return s +} + +// index returns the index of the item in the given items, or -1 if it doesn't exist +// l must NOT be a slice of slices, this should be checked before calling. +func index(l []interface{}, valToLookUp interface{}, mergeKey string, kind reflect.Kind) int { + var getValFn func(interface{}) interface{} + // Get the correct `getValFn` based on item `kind`. + // It should return the value of merge key for maps and + // return the item for other kinds. + switch kind { + case reflect.Map: + getValFn = func(item interface{}) interface{} { + typedItem, ok := item.(map[string]interface{}) + if !ok { + return nil + } + val := typedItem[mergeKey] + return val + } + default: + getValFn = func(item interface{}) interface{} { + return item + } + } + + for i, v := range l { + if getValFn(valToLookUp) == getValFn(v) { + return i + } + } + return -1 +} + +// extractToDeleteItems takes a list and +// returns 2 lists: one contains items that should be kept and the other contains items to be deleted. +func extractToDeleteItems(l []interface{}) ([]interface{}, []interface{}, error) { + var nonDelete, toDelete []interface{} + for _, v := range l { + m, ok := v.(map[string]interface{}) + if !ok { + return nil, nil, mergepatch.ErrBadArgType(m, v) + } + + directive, foundDirective := m[directiveMarker] + if foundDirective && directive == deleteDirective { + toDelete = append(toDelete, v) + } else { + nonDelete = append(nonDelete, v) + } + } + return nonDelete, toDelete, nil +} + +// normalizeSliceOrder sort `toSort` list by `order` +func normalizeSliceOrder(toSort, order []interface{}, mergeKey string, kind reflect.Kind) ([]interface{}, error) { + var toDelete []interface{} + if kind == reflect.Map { + // make sure each item in toSort, order has merge key + err := validateMergeKeyInLists(mergeKey, toSort, order) + if err != nil { + return nil, err + } + toSort, toDelete, err = extractToDeleteItems(toSort) + } + + sort.SliceStable(toSort, func(i, j int) bool { + if ii := index(order, toSort[i], mergeKey, kind); ii >= 0 { + if ij := index(order, toSort[j], mergeKey, kind); ij >= 0 { + return ii < ij + } + } + return true + }) + toSort = append(toSort, toDelete...) + return toSort, nil +} + +// Returns a (recursive) strategic merge patch, a parallel deletion list if necessary and +// another list to set the order of the list // Only list of primitives with merge strategy will generate a parallel deletion list. // These two lists should yield modified when applied to original, for lists with merge semantics. -func diffLists(original, modified []interface{}, t reflect.Type, mergeKey string, diffOptions DiffOptions) ([]interface{}, []interface{}, error) { +func diffLists(original, modified []interface{}, t reflect.Type, mergeKey string, diffOptions DiffOptions) ([]interface{}, []interface{}, []interface{}, error) { if len(original) == 0 { // Both slices are empty - do nothing if len(modified) == 0 || diffOptions.IgnoreChangesAndAdditions { - return nil, nil, nil + return nil, nil, nil, nil } // Old slice was empty - add all elements from the new slice - return modified, nil, nil + return modified, nil, nil, nil } elementType, err := sliceElementType(original, modified) if err != nil { - return nil, nil, err + return nil, nil, nil, err } - switch elementType.Kind() { + var patchList, deleteList, setOrderList []interface{} + kind := elementType.Kind() + switch kind { case reflect.Map: - patchList, err := diffListsOfMaps(original, modified, t, mergeKey, diffOptions) - return patchList, nil, err + patchList, deleteList, err = diffListsOfMaps(original, modified, t, mergeKey, diffOptions) + patchList, err = normalizeSliceOrder(patchList, modified, mergeKey, kind) + orderSame, err := isOrderSame(original, modified, mergeKey) + if err != nil { + return nil, nil, nil, err + } + // append the deletions to the end of the patch list. + patchList = append(patchList, deleteList...) + deleteList = nil + // generate the setElementOrder list when there are content changes or order changes + if diffOptions.SetElementOrder && + ((!diffOptions.IgnoreChangesAndAdditions && (len(patchList) > 0 || !orderSame)) || + (!diffOptions.IgnoreDeletions && len(patchList) > 0)) { + // Generate a list of maps that each item contains only the merge key. + setOrderList = make([]interface{}, len(modified)) + for i, v := range modified { + typedV := v.(map[string]interface{}) + setOrderList[i] = map[string]interface{}{ + mergeKey: typedV[mergeKey], + } + } + } case reflect.Slice: // Lists of Lists are not permitted by the api - return nil, nil, mergepatch.ErrNoListOfLists + return nil, nil, nil, mergepatch.ErrNoListOfLists default: - return diffListsOfScalars(original, modified, diffOptions) + patchList, deleteList, err = diffListsOfScalars(original, modified, diffOptions) + patchList, err = normalizeSliceOrder(patchList, modified, mergeKey, kind) + // generate the setElementOrder list when there are content changes or order changes + if diffOptions.SetElementOrder && ((!diffOptions.IgnoreDeletions && len(deleteList) > 0) || + (!diffOptions.IgnoreChangesAndAdditions && !reflect.DeepEqual(original, modified))) { + setOrderList = modified + } } + return patchList, deleteList, setOrderList, err +} + +// isOrderSame checks if the order in a list has changed +func isOrderSame(original, modified []interface{}, mergeKey string) (bool, error) { + if len(original) != len(modified) { + return false, nil + } + for i, modifiedItem := range modified { + equal, err := mergeKeyValueEqual(original[i], modifiedItem, mergeKey) + if err != nil || !equal { + return equal, err + } + } + return true, nil } // diffListsOfScalars returns 2 lists, the first one is addList and the second one is deletionList. // Argument diffOptions.IgnoreChangesAndAdditions controls if calculate addList. true means not calculate. // Argument diffOptions.IgnoreDeletions controls if calculate deletionList. true means not calculate. +// original may be changed, but modified is guaranteed to not be changed func diffListsOfScalars(original, modified []interface{}, diffOptions DiffOptions) ([]interface{}, []interface{}, error) { + modifiedCopy := make([]interface{}, len(modified)) + copy(modifiedCopy, modified) // Sort the scalars for easier calculating the diff originalScalars := sortScalars(original) - modifiedScalars := sortScalars(modified) + modifiedScalars := sortScalars(modifiedCopy) originalIndex, modifiedIndex := 0, 0 addList := []interface{}{} @@ -394,7 +659,7 @@ func diffListsOfScalars(original, modified []interface{}, diffOptions DiffOption } } - return addList, deletionList, nil + return addList, deduplicateScalars(deletionList), nil } // If first return value is non-nil, list1 contains an element not present in list2 @@ -422,18 +687,20 @@ func compareListValuesAtIndex(list1Inbounds, list2Inbounds bool, list1Value, lis } } -// Returns a (recursive) strategic merge patch that yields modified when applied to original, -// for a pair of lists of maps with merge semantics. -func diffListsOfMaps(original, modified []interface{}, t reflect.Type, mergeKey string, diffOptions DiffOptions) ([]interface{}, error) { - patch := make([]interface{}, 0) +// diffListsOfMaps takes a pair of lists and +// returns a (recursive) strategic merge patch list contains additions and changes and +// a deletion list contains deletions +func diffListsOfMaps(original, modified []interface{}, t reflect.Type, mergeKey string, diffOptions DiffOptions) ([]interface{}, []interface{}, error) { + patch := make([]interface{}, 0, len(modified)) + deletionList := make([]interface{}, 0, len(original)) originalSorted, err := sortMergeListsByNameArray(original, t, mergeKey, false) if err != nil { - return nil, err + return nil, nil, err } modifiedSorted, err := sortMergeListsByNameArray(modified, t, mergeKey, false) if err != nil { - return nil, err + return nil, nil, err } originalIndex, modifiedIndex := 0, 0 @@ -451,14 +718,14 @@ func diffListsOfMaps(original, modified []interface{}, t reflect.Type, mergeKey if originalInBounds { originalElement, originalElementMergeKeyValue, err = getMapAndMergeKeyValueByIndex(originalIndex, mergeKey, originalSorted) if err != nil { - return nil, err + return nil, nil, err } originalElementMergeKeyValueString = fmt.Sprintf("%v", originalElementMergeKeyValue) } if modifiedInBounds { modifiedElement, modifiedElementMergeKeyValue, err = getMapAndMergeKeyValueByIndex(modifiedIndex, mergeKey, modifiedSorted) if err != nil { - return nil, err + return nil, nil, err } modifiedElementMergeKeyValueString = fmt.Sprintf("%v", modifiedElementMergeKeyValue) } @@ -468,7 +735,7 @@ func diffListsOfMaps(original, modified []interface{}, t reflect.Type, mergeKey // Merge key values are equal, so recurse patchValue, err := diffMaps(originalElement, modifiedElement, t, diffOptions) if err != nil { - return nil, err + return nil, nil, err } if len(patchValue) > 0 { patchValue[mergeKey] = modifiedElementMergeKeyValue @@ -492,21 +759,20 @@ func diffListsOfMaps(original, modified []interface{}, t reflect.Type, mergeKey case bothInBounds && ItemRemovedFromModifiedSlice(originalElementMergeKeyValueString, modifiedElementMergeKeyValueString): if !diffOptions.IgnoreDeletions { // Item was deleted, so add delete directive - patch = append(patch, CreateDeleteDirective(mergeKey, originalElementMergeKeyValue)) + deletionList = append(deletionList, CreateDeleteDirective(mergeKey, originalElementMergeKeyValue)) } originalIndex++ } } - return patch, nil + return patch, deletionList, nil } // getMapAndMergeKeyValueByIndex return a map in the list and its merge key value given the index of the map. func getMapAndMergeKeyValueByIndex(index int, mergeKey string, listOfMaps []interface{}) (map[string]interface{}, interface{}, error) { m, ok := listOfMaps[index].(map[string]interface{}) if !ok { - t := reflect.TypeOf(listOfMaps[index]) - return nil, nil, mergepatch.ErrBadArgType("map[string]interface{}", t.Kind().String()) + return nil, nil, mergepatch.ErrBadArgType(m, listOfMaps[index]) } val, ok := m[mergeKey] @@ -560,7 +826,7 @@ func StrategicMergeMapPatch(original, patch JSONMap, dataStruct interface{}) (JS return nil, err } mergeOptions := MergeOptions{ - MergeDeleteList: true, + MergeParallelList: true, IgnoreUnmatchedNulls: true, } return mergeMap(original, patch, t, mergeOptions) @@ -568,16 +834,17 @@ func StrategicMergeMapPatch(original, patch JSONMap, dataStruct interface{}) (JS func getTagStructType(dataStruct interface{}) (reflect.Type, error) { if dataStruct == nil { - return nil, mergepatch.ErrBadArgType("struct", "nil") + return nil, mergepatch.ErrBadArgKind(struct{}{}, nil) } t := reflect.TypeOf(dataStruct) + // Get the underlying type for pointers if t.Kind() == reflect.Ptr { t = t.Elem() } if t.Kind() != reflect.Struct { - return nil, mergepatch.ErrBadArgType("struct", t.Kind().String()) + return nil, mergepatch.ErrBadArgKind(struct{}{}, dataStruct) } return t, nil @@ -602,6 +869,106 @@ func handleDirectiveInMergeMap(directive interface{}, patch map[string]interface return nil, mergepatch.ErrBadPatchType(directive, patch) } +func containsDirectiveMarker(item interface{}) bool { + m, ok := item.(map[string]interface{}) + if ok { + if _, foundDirectiveMarker := m[directiveMarker]; foundDirectiveMarker { + return true + } + } + return false +} + +func mergeKeyValueEqual(left, right interface{}, mergeKey string) (bool, error) { + if len(mergeKey) == 0 { + return left == right, nil + } + typedLeft, ok := left.(map[string]interface{}) + if !ok { + return false, mergepatch.ErrBadArgType(typedLeft, left) + } + typedRight, ok := right.(map[string]interface{}) + if !ok { + return false, mergepatch.ErrBadArgType(typedRight, right) + } + mergeKeyLeft, ok := typedLeft[mergeKey] + if !ok { + return false, mergepatch.ErrNoMergeKey(typedLeft, mergeKey) + } + mergeKeyRight, ok := typedRight[mergeKey] + if !ok { + return false, mergepatch.ErrNoMergeKey(typedRight, mergeKey) + } + return mergeKeyLeft == mergeKeyRight, nil +} + +// extractKey trims the prefix and return the original key +func extractKey(s, prefix string) (string, error) { + substrings := strings.SplitN(s, "/", 2) + if len(substrings) <= 1 || substrings[0] != prefix { + switch prefix { + case deleteFromPrimitiveListDirectivePrefix: + return "", mergepatch.ErrBadPatchFormatForPrimitiveList + case setElementOrderDirectivePrefix: + return "", mergepatch.ErrBadPatchFormatForSetElementOrderList + default: + return "", fmt.Errorf("fail to find unknown prefix %q in %s\n", prefix, s) + } + } + return substrings[1], nil +} + +// validatePatchUsingSetOrderList verifies: +// the relative order of any two items in the setOrderList list matches that in the patch list. +// the items in the patch list must be a subset or the same as the $setElementOrder list (deletions are ignored). +func validatePatchWithSetOrderList(patchList, setOrderList interface{}, mergeKey string) error { + typedSetOrderList, ok := setOrderList.([]interface{}) + if !ok { + return mergepatch.ErrBadPatchFormatForSetElementOrderList + } + typedPatchList, ok := patchList.([]interface{}) + if !ok { + return mergepatch.ErrBadPatchFormatForSetElementOrderList + } + if len(typedSetOrderList) == 0 || len(typedPatchList) == 0 { + return nil + } + + var nonDeleteList, toDeleteList []interface{} + var err error + if len(mergeKey) > 0 { + nonDeleteList, toDeleteList, err = extractToDeleteItems(typedPatchList) + if err != nil { + return err + } + } else { + nonDeleteList = typedPatchList + } + + patchIndex, setOrderIndex := 0, 0 + for patchIndex < len(nonDeleteList) && setOrderIndex < len(typedSetOrderList) { + if containsDirectiveMarker(nonDeleteList[patchIndex]) { + patchIndex++ + continue + } + mergeKeyEqual, err := mergeKeyValueEqual(nonDeleteList[patchIndex], typedSetOrderList[setOrderIndex], mergeKey) + if err != nil { + return err + } + if mergeKeyEqual { + patchIndex++ + } + setOrderIndex++ + } + // If patchIndex is inbound but setOrderIndex if out of bound mean there are items mismatching between the patch list and setElementOrder list. + // the second check is is a sanity check, and should always be true if the first is true. + if patchIndex < len(nonDeleteList) && setOrderIndex >= len(typedSetOrderList) { + return fmt.Errorf("The order in patch list:\n%v\n doesn't match %s list:\n%v\n", typedPatchList, setElementOrderDirectivePrefix, setOrderList) + } + typedPatchList = append(nonDeleteList, toDeleteList...) + return nil +} + // preprocessDeletionListForMerging preprocesses the deletion list. // it returns shouldContinue, isDeletionList, noPrefixKey func preprocessDeletionListForMerging(key string, original map[string]interface{}, @@ -614,19 +981,247 @@ func preprocessDeletionListForMerging(key string, original map[string]interface{ original[key] = patchVal return true, false, "", nil } - substrings := strings.SplitN(key, "/", 2) - if len(substrings) <= 1 { - return false, false, "", mergepatch.ErrBadPatchFormatForPrimitiveList - } - return false, true, substrings[1], nil + originalKey, err := extractKey(key, deleteFromPrimitiveListDirectivePrefix) + return false, true, originalKey, err } return false, false, "", nil } +// applyRetainKeysDirective looks for a retainKeys directive and applies to original +// - if no directive exists do nothing +// - if directive is found, clear keys in original missing from the directive list +// - validate that all keys present in the patch are present in the retainKeys directive +// note: original may be another patch request, e.g. applying the add+modified patch to the deletions patch. In this case it may have directives +func applyRetainKeysDirective(original, patch map[string]interface{}, options MergeOptions) error { + retainKeysInPatch, foundInPatch := patch[retainKeysDirective] + if !foundInPatch { + return nil + } + // cleanup the directive + delete(patch, retainKeysDirective) + + if !options.MergeParallelList { + // If original is actually a patch, make sure the retainKeys directives are the same in both patches if present in both. + // If not present in the original patch, copy from the modified patch. + retainKeysInOriginal, foundInOriginal := original[retainKeysDirective] + if foundInOriginal { + if !reflect.DeepEqual(retainKeysInOriginal, retainKeysInPatch) { + // This error actually should never happen. + return fmt.Errorf("%v and %v are not deep equal: this may happen when calculating the 3-way diff patch", retainKeysInOriginal, retainKeysInPatch) + } + } else { + original[retainKeysDirective] = retainKeysInPatch + } + return nil + } + + retainKeysList, ok := retainKeysInPatch.([]interface{}) + if !ok { + return mergepatch.ErrBadPatchFormatForRetainKeys + } + + // validate patch to make sure all fields in the patch are present in the retainKeysList. + // The map is used only as a set, the value is never referenced + m := map[interface{}]struct{}{} + for _, v := range retainKeysList { + m[v] = struct{}{} + } + for k, v := range patch { + if v == nil || strings.HasPrefix(k, deleteFromPrimitiveListDirectivePrefix) || + strings.HasPrefix(k, setElementOrderDirectivePrefix) { + continue + } + // If there is an item present in the patch but not in the retainKeys list, + // the patch is invalid. + if _, found := m[k]; !found { + return mergepatch.ErrBadPatchFormatForRetainKeys + } + } + + // clear not present fields + for k := range original { + if _, found := m[k]; !found { + delete(original, k) + } + } + return nil +} + +// mergePatchIntoOriginal processes $setElementOrder list. +// When not merging the directive, it will make sure $setElementOrder list exist only in original. +// When merging the directive, it will try to find the $setElementOrder list and +// its corresponding patch list, validate it and merge it. +// Then, sort them by the relative order in setElementOrder, patch list and live list. +// The precedence is $setElementOrder > order in patch list > order in live list. +// This function will delete the item after merging it to prevent process it again in the future. +// Ref: https://git.k8s.io/community/contributors/design-proposals/preserve-order-in-strategic-merge-patch.md +func mergePatchIntoOriginal(original, patch map[string]interface{}, t reflect.Type, mergeOptions MergeOptions) error { + for key, patchV := range patch { + // Do nothing if there is no ordering directive + if !strings.HasPrefix(key, setElementOrderDirectivePrefix) { + continue + } + + setElementOrderInPatch := patchV + // Copies directive from the second patch (`patch`) to the first patch (`original`) + // and checks they are equal and delete the directive in the second patch + if !mergeOptions.MergeParallelList { + setElementOrderListInOriginal, ok := original[key] + if ok { + // check if the setElementOrder list in original and the one in patch matches + if !reflect.DeepEqual(setElementOrderListInOriginal, setElementOrderInPatch) { + return mergepatch.ErrBadPatchFormatForSetElementOrderList + } + } else { + // move the setElementOrder list from patch to original + original[key] = setElementOrderInPatch + } + } + delete(patch, key) + + var ( + ok bool + originalFieldValue, patchFieldValue, merged []interface{} + patchStrategy, mergeKey string + patchStrategies []string + fieldType reflect.Type + ) + typedSetElementOrderList, ok := setElementOrderInPatch.([]interface{}) + if !ok { + return mergepatch.ErrBadArgType(typedSetElementOrderList, setElementOrderInPatch) + } + // Trim the setElementOrderDirectivePrefix to get the key of the list field in original. + originalKey, err := extractKey(key, setElementOrderDirectivePrefix) + if err != nil { + return err + } + // try to find the list with `originalKey` in `original` and `modified` and merge them. + originalList, foundOriginal := original[originalKey] + patchList, foundPatch := patch[originalKey] + if foundOriginal { + originalFieldValue, ok = originalList.([]interface{}) + if !ok { + return mergepatch.ErrBadArgType(originalFieldValue, originalList) + } + } + if foundPatch { + patchFieldValue, ok = patchList.([]interface{}) + if !ok { + return mergepatch.ErrBadArgType(patchFieldValue, patchList) + } + } + fieldType, patchStrategies, mergeKey, err = forkedjson.LookupPatchMetadata(t, originalKey) + if err != nil { + return err + } + _, patchStrategy, err = extractRetainKeysPatchStrategy(patchStrategies) + if err != nil { + return err + } + // Check for consistency between the element order list and the field it applies to + err = validatePatchWithSetOrderList(patchFieldValue, typedSetElementOrderList, mergeKey) + if err != nil { + return err + } + + switch { + case foundOriginal && !foundPatch: + // no change to list contents + merged = originalFieldValue + case !foundOriginal && foundPatch: + // list was added + merged = patchFieldValue + case foundOriginal && foundPatch: + merged, err = mergeSliceHandler(originalList, patchList, fieldType, + patchStrategy, mergeKey, false, mergeOptions) + if err != nil { + return err + } + case !foundOriginal && !foundPatch: + return nil + } + + // Split all items into patch items and server-only items and then enforce the order. + var patchItems, serverOnlyItems []interface{} + if len(mergeKey) == 0 { + // Primitives doesn't need merge key to do partitioning. + patchItems, serverOnlyItems = partitionPrimitivesByPresentInList(merged, typedSetElementOrderList) + + } else { + // Maps need merge key to do partitioning. + patchItems, serverOnlyItems, err = partitionMapsByPresentInList(merged, typedSetElementOrderList, mergeKey) + if err != nil { + return err + } + } + + elementType, err := sliceElementType(originalFieldValue, patchFieldValue) + if err != nil { + return err + } + kind := elementType.Kind() + // normalize merged list + // typedSetElementOrderList contains all the relative order in typedPatchList, + // so don't need to use typedPatchList + both, err := normalizeElementOrder(patchItems, serverOnlyItems, typedSetElementOrderList, originalFieldValue, mergeKey, kind) + if err != nil { + return err + } + original[originalKey] = both + // delete patch list from patch to prevent process again in the future + delete(patch, originalKey) + } + return nil +} + +// partitionPrimitivesByPresentInList partitions elements into 2 slices, the first containing items present in partitionBy, the other not. +func partitionPrimitivesByPresentInList(original, partitionBy []interface{}) ([]interface{}, []interface{}) { + patch := make([]interface{}, 0, len(original)) + serverOnly := make([]interface{}, 0, len(original)) + inPatch := map[interface{}]bool{} + for _, v := range partitionBy { + inPatch[v] = true + } + for _, v := range original { + if !inPatch[v] { + serverOnly = append(serverOnly, v) + } else { + patch = append(patch, v) + } + } + return patch, serverOnly +} + +// partitionMapsByPresentInList partitions elements into 2 slices, the first containing items present in partitionBy, the other not. +func partitionMapsByPresentInList(original, partitionBy []interface{}, mergeKey string) ([]interface{}, []interface{}, error) { + patch := make([]interface{}, 0, len(original)) + serverOnly := make([]interface{}, 0, len(original)) + for _, v := range original { + typedV, ok := v.(map[string]interface{}) + if !ok { + return nil, nil, mergepatch.ErrBadArgType(typedV, v) + } + mergeKeyValue, foundMergeKey := typedV[mergeKey] + if !foundMergeKey { + return nil, nil, mergepatch.ErrNoMergeKey(typedV, mergeKey) + } + _, _, found, err := findMapInSliceBasedOnKeyValue(partitionBy, mergeKey, mergeKeyValue) + if err != nil { + return nil, nil, err + } + if !found { + serverOnly = append(serverOnly, v) + } else { + patch = append(patch, v) + } + } + return patch, serverOnly, nil +} + // Merge fields from a patch map into the original map. Note: This may modify // both the original map and the patch because getting a deep copy of a map in // golang is highly non-trivial. -// flag mergeOptions.MergeDeleteList controls if using the parallel list to delete or keeping the list. +// flag mergeOptions.MergeParallelList controls if using the parallel list to delete or keeping the list. // If patch contains any null field (e.g. field_1: null) that is not // present in original, then to propagate it to the end result use // mergeOptions.IgnoreUnmatchedNulls == false. @@ -641,9 +1236,23 @@ func mergeMap(original, patch map[string]interface{}, t reflect.Type, mergeOptio original = map[string]interface{}{} } + err := applyRetainKeysDirective(original, patch, mergeOptions) + if err != nil { + return nil, err + } + + // Process $setElementOrder list and other lists sharing the same key. + // When not merging the directive, it will make sure $setElementOrder list exist only in original. + // When merging the directive, it will process $setElementOrder and its patch list together. + // This function will delete the merged elements from patch so they will not be reprocessed + err = mergePatchIntoOriginal(original, patch, t, mergeOptions) + if err != nil { + return nil, err + } + // Start merging the patch into the original. for k, patchV := range patch { - skipProcessing, isDeleteList, noPrefixKey, err := preprocessDeletionListForMerging(k, original, patchV, mergeOptions.MergeDeleteList) + skipProcessing, isDeleteList, noPrefixKey, err := preprocessDeletionListForMerging(k, original, patchV, mergeOptions.MergeParallelList) if err != nil { return nil, err } @@ -687,16 +1296,21 @@ func mergeMap(original, patch map[string]interface{}, t reflect.Type, mergeOptio } // If they're both maps or lists, recurse into the value. // First find the fieldPatchStrategy and fieldPatchMergeKey. - fieldType, fieldPatchStrategy, fieldPatchMergeKey, err := forkedjson.LookupPatchMetadata(t, k) + fieldType, fieldPatchStrategies, fieldPatchMergeKey, err := forkedjson.LookupPatchMetadata(t, k) if err != nil { return nil, err } + _, patchStrategy, err := extractRetainKeysPatchStrategy(fieldPatchStrategies) + if err != nil { + return nil, err + } + switch originalType.Kind() { case reflect.Map: - original[k], err = mergeMapHandler(original[k], patchV, fieldType, fieldPatchStrategy, mergeOptions) + original[k], err = mergeMapHandler(original[k], patchV, fieldType, patchStrategy, mergeOptions) case reflect.Slice: - original[k], err = mergeSliceHandler(original[k], patchV, fieldType, fieldPatchStrategy, fieldPatchMergeKey, isDeleteList, mergeOptions) + original[k], err = mergeSliceHandler(original[k], patchV, fieldType, patchStrategy, fieldPatchMergeKey, isDeleteList, mergeOptions) default: original[k] = patchV } @@ -754,27 +1368,45 @@ func mergeSlice(original, patch []interface{}, elemType reflect.Type, mergeKey s return nil, err } + var merged []interface{} + kind := t.Kind() // If the elements are not maps, merge the slices of scalars. - if t.Kind() != reflect.Map { - if mergeOptions.MergeDeleteList && isDeleteList { + if kind != reflect.Map { + if mergeOptions.MergeParallelList && isDeleteList { return deleteFromSlice(original, patch), nil } // Maybe in the future add a "concat" mode that doesn't - // uniqify. + // deduplicate. both := append(original, patch...) - return uniqifyScalars(both), nil + merged = deduplicateScalars(both) + + } else { + if mergeKey == "" { + return nil, fmt.Errorf("cannot merge lists without merge key for type %s", elemType.Kind().String()) + } + + original, patch, err = mergeSliceWithSpecialElements(original, patch, mergeKey) + if err != nil { + return nil, err + } + + merged, err = mergeSliceWithoutSpecialElements(original, patch, mergeKey, elemType, mergeOptions) + if err != nil { + return nil, err + } } - if mergeKey == "" { - return nil, fmt.Errorf("cannot merge lists without merge key for type %s", elemType.Kind().String()) + // enforce the order + var patchItems, serverOnlyItems []interface{} + if len(mergeKey) == 0 { + patchItems, serverOnlyItems = partitionPrimitivesByPresentInList(merged, patch) + } else { + patchItems, serverOnlyItems, err = partitionMapsByPresentInList(merged, patch, mergeKey) + if err != nil { + return nil, err + } } - - original, patch, err = mergeSliceWithSpecialElements(original, patch, mergeKey) - if err != nil { - return nil, err - } - - return mergeSliceWithoutSpecialElements(original, patch, mergeKey, elemType, mergeOptions) + return normalizeElementOrder(patchItems, serverOnlyItems, patch, original, mergeKey, kind) } // mergeSliceWithSpecialElements handles special elements with directiveMarker @@ -799,7 +1431,7 @@ func mergeSliceWithSpecialElements(original, patch []interface{}, mergeKey strin return nil, nil, err } } else { - return nil, nil, fmt.Errorf("delete patch type with no merge key defined") + return nil, nil, mergepatch.ErrNoMergeKey(typedV, mergeKey) } case replaceDirective: replace = true @@ -870,30 +1502,17 @@ func mergeSliceWithoutSpecialElements(original, patch []interface{}, mergeKey st // deleteFromSlice uses the parallel list to delete the items in a list of scalars func deleteFromSlice(current, toDelete []interface{}) []interface{} { - currentScalars := uniqifyAndSortScalars(current) - toDeleteScalars := uniqifyAndSortScalars(toDelete) - - currentIndex, toDeleteIndex := 0, 0 - mergedList := []interface{}{} - - for currentIndex < len(currentScalars) && toDeleteIndex < len(toDeleteScalars) { - originalString := fmt.Sprintf("%v", currentScalars[currentIndex]) - modifiedString := fmt.Sprintf("%v", toDeleteScalars[toDeleteIndex]) - - switch { - // found an item to delete - case originalString == modifiedString: - currentIndex++ - // Request to delete an item that was not found in the current list - case originalString > modifiedString: - toDeleteIndex++ - // Found an item that was not part of the deletion list, keep it - case originalString < modifiedString: - mergedList = append(mergedList, currentScalars[currentIndex]) - currentIndex++ + toDeleteMap := map[interface{}]interface{}{} + processed := make([]interface{}, 0, len(current)) + for _, v := range toDelete { + toDeleteMap[v] = true + } + for _, v := range current { + if _, found := toDeleteMap[v]; !found { + processed = append(processed, v) } } - return append(mergedList, currentScalars[currentIndex:]...) + return processed } // This method no longer panics if any element of the slice is not a map. @@ -936,14 +1555,29 @@ func sortMergeListsByName(mapJSON []byte, dataStruct interface{}) ([]byte, error func sortMergeListsByNameMap(s map[string]interface{}, t reflect.Type) (map[string]interface{}, error) { newS := map[string]interface{}{} for k, v := range s { - if strings.HasPrefix(k, deleteFromPrimitiveListDirectivePrefix) { + if k == retainKeysDirective { + typedV, ok := v.([]interface{}) + if !ok { + return nil, mergepatch.ErrBadPatchFormatForRetainKeys + } + v = sortScalars(typedV) + } else if strings.HasPrefix(k, deleteFromPrimitiveListDirectivePrefix) { typedV, ok := v.([]interface{}) if !ok { return nil, mergepatch.ErrBadPatchFormatForPrimitiveList } - v = uniqifyAndSortScalars(typedV) + v = sortScalars(typedV) + } else if strings.HasPrefix(k, setElementOrderDirectivePrefix) { + _, ok := v.([]interface{}) + if !ok { + return nil, mergepatch.ErrBadPatchFormatForSetElementOrderList + } } else if k != directiveMarker { - fieldType, fieldPatchStrategy, fieldPatchMergeKey, err := forkedjson.LookupPatchMetadata(t, k) + fieldType, fieldPatchStrategies, fieldPatchMergeKey, err := forkedjson.LookupPatchMetadata(t, k) + if err != nil { + return nil, err + } + _, patchStrategy, err := extractRetainKeysPatchStrategy(fieldPatchStrategies) if err != nil { return nil, err } @@ -956,7 +1590,7 @@ func sortMergeListsByNameMap(s map[string]interface{}, t reflect.Type) (map[stri return nil, err } } else if typedV, ok := v.([]interface{}); ok { - if fieldPatchStrategy == mergeDirective { + if patchStrategy == mergeDirective { var err error v, err = sortMergeListsByNameArray(typedV, fieldType.Elem(), fieldPatchMergeKey, true) if err != nil { @@ -987,7 +1621,7 @@ func sortMergeListsByNameArray(s []interface{}, elemType reflect.Type, mergeKey // If the elements are not maps... if t.Kind() != reflect.Map { // Sort the elements, because they may have been merged out of order. - return uniqifyAndSortScalars(s), nil + return deduplicateAndSortScalars(s), nil } // Elements are maps - if one of the keys of the map is a map or a @@ -1060,8 +1694,8 @@ func (ss SortableSliceOfMaps) Swap(i, j int) { ss.s[j] = tmp } -func uniqifyAndSortScalars(s []interface{}) []interface{} { - s = uniqifyScalars(s) +func deduplicateAndSortScalars(s []interface{}) []interface{} { + s = deduplicateScalars(s) return sortScalars(s) } @@ -1071,8 +1705,8 @@ func sortScalars(s []interface{}) []interface{} { return ss.s } -func uniqifyScalars(s []interface{}) []interface{} { - // Clever algorithm to uniqify. +func deduplicateScalars(s []interface{}) []interface{} { + // Clever algorithm to deduplicate. length := len(s) - 1 for i := 0; i < length; i++ { for j := i + 1; j <= length; j++ { @@ -1202,15 +1836,19 @@ func mergingMapFieldsHaveConflicts( func mapsHaveConflicts(typedLeft, typedRight map[string]interface{}, structType reflect.Type) (bool, error) { for key, leftValue := range typedLeft { - if key != directiveMarker { + if key != directiveMarker && key != retainKeysDirective { if rightValue, ok := typedRight[key]; ok { - fieldType, fieldPatchStrategy, fieldPatchMergeKey, err := forkedjson.LookupPatchMetadata(structType, key) + fieldType, fieldPatchStrategies, fieldPatchMergeKey, err := forkedjson.LookupPatchMetadata(structType, key) + if err != nil { + return true, err + } + _, patchStrategy, err := extractRetainKeysPatchStrategy(fieldPatchStrategies) if err != nil { return true, err } if hasConflicts, err := mergingMapFieldsHaveConflicts(leftValue, rightValue, - fieldType, fieldPatchStrategy, fieldPatchMergeKey); hasConflicts { + fieldType, patchStrategy, fieldPatchMergeKey); hasConflicts { return true, err } } @@ -1260,8 +1898,8 @@ func slicesHaveConflicts( // Sort scalar slices to prevent ordering issues // We have no way to sort non-merging lists of maps if elementType.Kind() != reflect.Map { - typedLeft = uniqifyAndSortScalars(typedLeft) - typedRight = uniqifyAndSortScalars(typedRight) + typedLeft = deduplicateAndSortScalars(typedLeft) + typedRight = deduplicateAndSortScalars(typedRight) } // Compare the slices element by element in order @@ -1349,26 +1987,23 @@ func CreateThreeWayMergePatch(original, modified, current []byte, dataStruct int // original to modified, and delta, which is the difference from current to modified without // deletions, and then apply delta to deletions as a patch, which should be strictly additive. deltaMapDiffOptions := DiffOptions{ - IgnoreChangesAndAdditions: false, - IgnoreDeletions: true, + IgnoreDeletions: true, + SetElementOrder: true, } deltaMap, err := diffMaps(currentMap, modifiedMap, t, deltaMapDiffOptions) if err != nil { return nil, err } deletionsMapDiffOptions := DiffOptions{ + SetElementOrder: true, IgnoreChangesAndAdditions: true, - IgnoreDeletions: false, } deletionsMap, err := diffMaps(originalMap, modifiedMap, t, deletionsMapDiffOptions) if err != nil { return nil, err } - mergeOptions := MergeOptions{ - MergeDeleteList: false, - IgnoreUnmatchedNulls: false, - } + mergeOptions := MergeOptions{} patchMap, err := mergeMap(deletionsMap, deltaMap, t, mergeOptions) if err != nil { return nil, err @@ -1384,10 +2019,7 @@ func CreateThreeWayMergePatch(original, modified, current []byte, dataStruct int // If overwrite is false, and the patch contains any keys that were changed differently, // then return a conflict error. if !overwrite { - changeMapDiffOptions := DiffOptions{ - IgnoreChangesAndAdditions: false, - IgnoreDeletions: false, - } + changeMapDiffOptions := DiffOptions{} changedMap, err := diffMaps(originalMap, currentMap, t, changeMapDiffOptions) if err != nil { return nil, err @@ -1419,13 +2051,11 @@ func CreateDeleteDirective(mergeKey string, mergeKeyValue interface{}) map[strin func mapTypeAssertion(original, patch interface{}) (map[string]interface{}, map[string]interface{}, error) { typedOriginal, ok := original.(map[string]interface{}) if !ok { - t := reflect.TypeOf(original) - return nil, nil, mergepatch.ErrBadArgType("map[string]interface{}", t.String()) + return nil, nil, mergepatch.ErrBadArgType(typedOriginal, original) } typedPatch, ok := patch.(map[string]interface{}) if !ok { - t := reflect.TypeOf(patch) - return nil, nil, mergepatch.ErrBadArgType("map[string]interface{}", t.String()) + return nil, nil, mergepatch.ErrBadArgType(typedPatch, patch) } return typedOriginal, typedPatch, nil } @@ -1433,13 +2063,53 @@ func mapTypeAssertion(original, patch interface{}) (map[string]interface{}, map[ func sliceTypeAssertion(original, patch interface{}) ([]interface{}, []interface{}, error) { typedOriginal, ok := original.([]interface{}) if !ok { - t := reflect.TypeOf(original) - return nil, nil, mergepatch.ErrBadArgType("[]interface{}", t.String()) + return nil, nil, mergepatch.ErrBadArgType(typedOriginal, original) } typedPatch, ok := patch.([]interface{}) if !ok { - t := reflect.TypeOf(patch) - return nil, nil, mergepatch.ErrBadArgType("[]interface{}", t.String()) + return nil, nil, mergepatch.ErrBadArgType(typedPatch, patch) } return typedOriginal, typedPatch, nil } + +// extractRetainKeysPatchStrategy process patch strategy, which is a string may contains multiple +// patch strategies seperated by ",". It returns a boolean var indicating if it has +// retainKeys strategies and a string for the other strategy. +func extractRetainKeysPatchStrategy(strategies []string) (bool, string, error) { + switch len(strategies) { + case 0: + return false, "", nil + case 1: + singleStrategy := strategies[0] + switch singleStrategy { + case retainKeysStrategy: + return true, "", nil + default: + return false, singleStrategy, nil + } + case 2: + switch { + case strategies[0] == retainKeysStrategy: + return true, strategies[1], nil + case strategies[1] == retainKeysStrategy: + return true, strategies[0], nil + default: + return false, "", fmt.Errorf("unexpected patch strategy: %v", strategies) + } + default: + return false, "", fmt.Errorf("unexpected patch strategy: %v", strategies) + } +} + +// hasAdditionalNewField returns if original map has additional key with non-nil value than modified. +func hasAdditionalNewField(original, modified map[string]interface{}) bool { + for k, v := range original { + if v == nil { + continue + } + if _, found := modified[k]; !found { + return true + } + } + return false +} diff --git a/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go b/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go index 1538550e..badaa215 100644 --- a/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go +++ b/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go @@ -65,9 +65,9 @@ func NonSlidingUntil(f func(), period time.Duration, stopCh <-chan struct{}) { // JitterUntil loops until stop channel is closed, running f every period. // // If jitterFactor is positive, the period is jittered before every run of f. -// If jitterFactor is not positive, the period is unchanged and not jitterd. +// If jitterFactor is not positive, the period is unchanged and not jittered. // -// If slidingis true, the period is computed after f runs. If it is false then +// If sliding is true, the period is computed after f runs. If it is false then // period includes the runtime for f. // // Close stopCh to stop. f may not be invoked if stop channel is already @@ -138,14 +138,14 @@ type ConditionFunc func() (done bool, err error) // Backoff holds parameters applied to a Backoff function. type Backoff struct { Duration time.Duration // the base duration - Factor float64 // Duration is multipled by factor each iteration + Factor float64 // Duration is multiplied by factor each iteration Jitter float64 // The amount of jitter applied each iteration Steps int // Exit with error after this many steps } // ExponentialBackoff repeats a condition check with exponential backoff. // -// It checks the condition up to Steps times, increasing the wait by multipling +// It checks the condition up to Steps times, increasing the wait by multiplying // the previous duration by Factor. // // If Jitter is greater than zero, a random amount of each duration is added diff --git a/vendor/k8s.io/apimachinery/pkg/watch/until.go b/vendor/k8s.io/apimachinery/pkg/watch/until.go index 6e139de5..c2772ddb 100644 --- a/vendor/k8s.io/apimachinery/pkg/watch/until.go +++ b/vendor/k8s.io/apimachinery/pkg/watch/until.go @@ -29,8 +29,8 @@ import ( // from false to true). type ConditionFunc func(event Event) (bool, error) -// errWatchClosed is returned when the watch channel is closed before timeout in Until. -var errWatchClosed = errors.New("watch closed before Until timeout") +// ErrWatchClosed is returned when the watch channel is closed before timeout in Until. +var ErrWatchClosed = errors.New("watch closed before Until timeout") // Until reads items from the watch until each provided condition succeeds, and then returns the last watch // encountered. The first condition that returns an error terminates the watch (and the event is also returned). @@ -65,7 +65,7 @@ func Until(timeout time.Duration, watcher Interface, conditions ...ConditionFunc select { case event, ok := <-ch: if !ok { - return lastEvent, errWatchClosed + return lastEvent, ErrWatchClosed } lastEvent = &event diff --git a/vendor/k8s.io/apimachinery/third_party/forked/golang/json/fields.go b/vendor/k8s.io/apimachinery/third_party/forked/golang/json/fields.go index 1d17270e..ac6d9cb9 100644 --- a/vendor/k8s.io/apimachinery/third_party/forked/golang/json/fields.go +++ b/vendor/k8s.io/apimachinery/third_party/forked/golang/json/fields.go @@ -17,16 +17,25 @@ import ( "unicode/utf8" ) +const ( + patchStrategyTagKey = "patchStrategy" + patchMergeKeyTagKey = "patchMergeKey" +) + // Finds the patchStrategy and patchMergeKey struct tag fields on a given // struct field given the struct type and the JSON name of the field. +// It returns field type, a slice of patch strategies, merge key and error. // TODO: fix the returned errors to be introspectable. -func LookupPatchMetadata(t reflect.Type, jsonField string) (reflect.Type, string, string, error) { +func LookupPatchMetadata(t reflect.Type, jsonField string) ( + elemType reflect.Type, patchStrategies []string, patchMergeKey string, e error) { if t.Kind() == reflect.Map { - return t.Elem(), "", "", nil + elemType = t.Elem() + return } if t.Kind() != reflect.Struct { - return nil, "", "", fmt.Errorf("merging an object in json but data type is not map or struct, instead is: %s", + e = fmt.Errorf("merging an object in json but data type is not map or struct, instead is: %s", t.Kind().String()) + return } jf := []byte(jsonField) // Find the field that the JSON library would use. @@ -50,11 +59,14 @@ func LookupPatchMetadata(t reflect.Type, jsonField string) (reflect.Type, string for i := 1; i < len(f.index); i++ { tjf = tjf.Type.Field(f.index[i]) } - patchStrategy := tjf.Tag.Get("patchStrategy") - patchMergeKey := tjf.Tag.Get("patchMergeKey") - return tjf.Type, patchStrategy, patchMergeKey, nil + patchStrategy := tjf.Tag.Get(patchStrategyTagKey) + patchMergeKey = tjf.Tag.Get(patchMergeKeyTagKey) + patchStrategies = strings.Split(patchStrategy, ",") + elemType = tjf.Type + return } - return nil, "", "", fmt.Errorf("unable to find api field in struct %s for the json field %q", t.Name(), jsonField) + e = fmt.Errorf("unable to find api field in struct %s for the json field %q", t.Name(), jsonField) + return } // A field represents a single field found in a struct. diff --git a/vendor/k8s.io/apiserver/README.md b/vendor/k8s.io/apiserver/README.md index 91255726..96927ae7 100644 --- a/vendor/k8s.io/apiserver/README.md +++ b/vendor/k8s.io/apiserver/README.md @@ -6,7 +6,7 @@ Generic library for building a Kubernetes aggregated API server. ## Purpose This library contains code to create Kubernetes aggregation server complete with delegated authentication and authorization, -`kubectl` compatible discovery information, optional admission chain, and versioned types. It's first comsumers are +`kubectl` compatible discovery information, optional admission chain, and versioned types. It's first consumers are `k8s.io/kubernetes`, `k8s.io/kube-aggregator`, and `github.com/kubernetes-incubator/service-catalog`. diff --git a/vendor/k8s.io/apiserver/pkg/features/kube_features.go b/vendor/k8s.io/apiserver/pkg/features/kube_features.go index 8ab10fa2..1b896e1e 100644 --- a/vendor/k8s.io/apiserver/pkg/features/kube_features.go +++ b/vendor/k8s.io/apiserver/pkg/features/kube_features.go @@ -33,6 +33,14 @@ const ( // StreamingProxyRedirects controls whether the apiserver should intercept (and follow) // redirects from the backend (Kubelet) for streaming requests (exec/attach/port-forward). StreamingProxyRedirects utilfeature.Feature = "StreamingProxyRedirects" + + // owner: timstclair + // alpha: v1.7 + // + // AdvancedAuditing enables a much more general API auditing pipeline, which includes support for + // pluggable output backends and an audit policy specifying how different requests should be + // audited. + AdvancedAuditing utilfeature.Feature = "AdvancedAuditing" ) func init() { @@ -44,4 +52,5 @@ func init() { // available throughout Kubernetes binaries. var defaultKubernetesFeatureGates = map[utilfeature.Feature]utilfeature.FeatureSpec{ StreamingProxyRedirects: {Default: true, PreRelease: utilfeature.Beta}, + AdvancedAuditing: {Default: false, PreRelease: utilfeature.Alpha}, } diff --git a/vendor/k8s.io/client-go/kubernetes/clientset.go b/vendor/k8s.io/client-go/kubernetes/clientset.go index 5fd0c54e..8a05da50 100644 --- a/vendor/k8s.io/client-go/kubernetes/clientset.go +++ b/vendor/k8s.io/client-go/kubernetes/clientset.go @@ -19,6 +19,7 @@ package kubernetes import ( glog "github.com/golang/glog" discovery "k8s.io/client-go/discovery" + admissionregistrationv1alpha1 "k8s.io/client-go/kubernetes/typed/admissionregistration/v1alpha1" appsv1beta1 "k8s.io/client-go/kubernetes/typed/apps/v1beta1" authenticationv1 "k8s.io/client-go/kubernetes/typed/authentication/v1" authenticationv1beta1 "k8s.io/client-go/kubernetes/typed/authentication/v1beta1" @@ -31,6 +32,7 @@ import ( certificatesv1beta1 "k8s.io/client-go/kubernetes/typed/certificates/v1beta1" corev1 "k8s.io/client-go/kubernetes/typed/core/v1" extensionsv1beta1 "k8s.io/client-go/kubernetes/typed/extensions/v1beta1" + networkingv1 "k8s.io/client-go/kubernetes/typed/networking/v1" policyv1beta1 "k8s.io/client-go/kubernetes/typed/policy/v1beta1" rbacv1alpha1 "k8s.io/client-go/kubernetes/typed/rbac/v1alpha1" rbacv1beta1 "k8s.io/client-go/kubernetes/typed/rbac/v1beta1" @@ -43,6 +45,9 @@ import ( type Interface interface { Discovery() discovery.DiscoveryInterface + AdmissionregistrationV1alpha1() admissionregistrationv1alpha1.AdmissionregistrationV1alpha1Interface + // Deprecated: please explicitly pick a version if possible. + Admissionregistration() admissionregistrationv1alpha1.AdmissionregistrationV1alpha1Interface CoreV1() corev1.CoreV1Interface // Deprecated: please explicitly pick a version if possible. Core() corev1.CoreV1Interface @@ -71,6 +76,9 @@ type Interface interface { ExtensionsV1beta1() extensionsv1beta1.ExtensionsV1beta1Interface // Deprecated: please explicitly pick a version if possible. Extensions() extensionsv1beta1.ExtensionsV1beta1Interface + NetworkingV1() networkingv1.NetworkingV1Interface + // Deprecated: please explicitly pick a version if possible. + Networking() networkingv1.NetworkingV1Interface PolicyV1beta1() policyv1beta1.PolicyV1beta1Interface // Deprecated: please explicitly pick a version if possible. Policy() policyv1beta1.PolicyV1beta1Interface @@ -91,6 +99,7 @@ type Interface interface { // version included in a Clientset. type Clientset struct { *discovery.DiscoveryClient + *admissionregistrationv1alpha1.AdmissionregistrationV1alpha1Client *corev1.CoreV1Client *appsv1beta1.AppsV1beta1Client *authenticationv1.AuthenticationV1Client @@ -103,6 +112,7 @@ type Clientset struct { *batchv2alpha1.BatchV2alpha1Client *certificatesv1beta1.CertificatesV1beta1Client *extensionsv1beta1.ExtensionsV1beta1Client + *networkingv1.NetworkingV1Client *policyv1beta1.PolicyV1beta1Client *rbacv1beta1.RbacV1beta1Client *rbacv1alpha1.RbacV1alpha1Client @@ -111,6 +121,23 @@ type Clientset struct { *storagev1.StorageV1Client } +// AdmissionregistrationV1alpha1 retrieves the AdmissionregistrationV1alpha1Client +func (c *Clientset) AdmissionregistrationV1alpha1() admissionregistrationv1alpha1.AdmissionregistrationV1alpha1Interface { + if c == nil { + return nil + } + return c.AdmissionregistrationV1alpha1Client +} + +// Deprecated: Admissionregistration retrieves the default version of AdmissionregistrationClient. +// Please explicitly pick a version. +func (c *Clientset) Admissionregistration() admissionregistrationv1alpha1.AdmissionregistrationV1alpha1Interface { + if c == nil { + return nil + } + return c.AdmissionregistrationV1alpha1Client +} + // CoreV1 retrieves the CoreV1Client func (c *Clientset) CoreV1() corev1.CoreV1Interface { if c == nil { @@ -279,6 +306,23 @@ func (c *Clientset) Extensions() extensionsv1beta1.ExtensionsV1beta1Interface { return c.ExtensionsV1beta1Client } +// NetworkingV1 retrieves the NetworkingV1Client +func (c *Clientset) NetworkingV1() networkingv1.NetworkingV1Interface { + if c == nil { + return nil + } + return c.NetworkingV1Client +} + +// Deprecated: Networking retrieves the default version of NetworkingClient. +// Please explicitly pick a version. +func (c *Clientset) Networking() networkingv1.NetworkingV1Interface { + if c == nil { + return nil + } + return c.NetworkingV1Client +} + // PolicyV1beta1 retrieves the PolicyV1beta1Client func (c *Clientset) PolicyV1beta1() policyv1beta1.PolicyV1beta1Interface { if c == nil { @@ -379,6 +423,10 @@ func NewForConfig(c *rest.Config) (*Clientset, error) { } var cs Clientset var err error + cs.AdmissionregistrationV1alpha1Client, err = admissionregistrationv1alpha1.NewForConfig(&configShallowCopy) + if err != nil { + return nil, err + } cs.CoreV1Client, err = corev1.NewForConfig(&configShallowCopy) if err != nil { return nil, err @@ -427,6 +475,10 @@ func NewForConfig(c *rest.Config) (*Clientset, error) { if err != nil { return nil, err } + cs.NetworkingV1Client, err = networkingv1.NewForConfig(&configShallowCopy) + if err != nil { + return nil, err + } cs.PolicyV1beta1Client, err = policyv1beta1.NewForConfig(&configShallowCopy) if err != nil { return nil, err @@ -464,6 +516,7 @@ func NewForConfig(c *rest.Config) (*Clientset, error) { // panics if there is an error in the config. func NewForConfigOrDie(c *rest.Config) *Clientset { var cs Clientset + cs.AdmissionregistrationV1alpha1Client = admissionregistrationv1alpha1.NewForConfigOrDie(c) cs.CoreV1Client = corev1.NewForConfigOrDie(c) cs.AppsV1beta1Client = appsv1beta1.NewForConfigOrDie(c) cs.AuthenticationV1Client = authenticationv1.NewForConfigOrDie(c) @@ -476,6 +529,7 @@ func NewForConfigOrDie(c *rest.Config) *Clientset { cs.BatchV2alpha1Client = batchv2alpha1.NewForConfigOrDie(c) cs.CertificatesV1beta1Client = certificatesv1beta1.NewForConfigOrDie(c) cs.ExtensionsV1beta1Client = extensionsv1beta1.NewForConfigOrDie(c) + cs.NetworkingV1Client = networkingv1.NewForConfigOrDie(c) cs.PolicyV1beta1Client = policyv1beta1.NewForConfigOrDie(c) cs.RbacV1beta1Client = rbacv1beta1.NewForConfigOrDie(c) cs.RbacV1alpha1Client = rbacv1alpha1.NewForConfigOrDie(c) @@ -490,6 +544,7 @@ func NewForConfigOrDie(c *rest.Config) *Clientset { // New creates a new Clientset for the given RESTClient. func New(c rest.Interface) *Clientset { var cs Clientset + cs.AdmissionregistrationV1alpha1Client = admissionregistrationv1alpha1.New(c) cs.CoreV1Client = corev1.New(c) cs.AppsV1beta1Client = appsv1beta1.New(c) cs.AuthenticationV1Client = authenticationv1.New(c) @@ -502,6 +557,7 @@ func New(c rest.Interface) *Clientset { cs.BatchV2alpha1Client = batchv2alpha1.New(c) cs.CertificatesV1beta1Client = certificatesv1beta1.New(c) cs.ExtensionsV1beta1Client = extensionsv1beta1.New(c) + cs.NetworkingV1Client = networkingv1.New(c) cs.PolicyV1beta1Client = policyv1beta1.New(c) cs.RbacV1beta1Client = rbacv1beta1.New(c) cs.RbacV1alpha1Client = rbacv1alpha1.New(c) diff --git a/vendor/k8s.io/client-go/kubernetes/scheme/register.go b/vendor/k8s.io/client-go/kubernetes/scheme/register.go index 1fe5dbe4..c4af63a4 100644 --- a/vendor/k8s.io/client-go/kubernetes/scheme/register.go +++ b/vendor/k8s.io/client-go/kubernetes/scheme/register.go @@ -22,6 +22,7 @@ import ( schema "k8s.io/apimachinery/pkg/runtime/schema" serializer "k8s.io/apimachinery/pkg/runtime/serializer" corev1 "k8s.io/client-go/pkg/api/v1" + admissionregistrationv1alpha1 "k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1" appsv1beta1 "k8s.io/client-go/pkg/apis/apps/v1beta1" authenticationv1 "k8s.io/client-go/pkg/apis/authentication/v1" authenticationv1beta1 "k8s.io/client-go/pkg/apis/authentication/v1beta1" @@ -33,6 +34,7 @@ import ( batchv2alpha1 "k8s.io/client-go/pkg/apis/batch/v2alpha1" certificatesv1beta1 "k8s.io/client-go/pkg/apis/certificates/v1beta1" extensionsv1beta1 "k8s.io/client-go/pkg/apis/extensions/v1beta1" + networkingv1 "k8s.io/client-go/pkg/apis/networking/v1" policyv1beta1 "k8s.io/client-go/pkg/apis/policy/v1beta1" rbacv1alpha1 "k8s.io/client-go/pkg/apis/rbac/v1alpha1" rbacv1beta1 "k8s.io/client-go/pkg/apis/rbac/v1beta1" @@ -65,6 +67,7 @@ func init() { // After this, RawExtensions in Kubernetes types will serialize kube-aggregator types // correctly. func AddToScheme(scheme *runtime.Scheme) { + admissionregistrationv1alpha1.AddToScheme(scheme) corev1.AddToScheme(scheme) appsv1beta1.AddToScheme(scheme) authenticationv1.AddToScheme(scheme) @@ -77,6 +80,7 @@ func AddToScheme(scheme *runtime.Scheme) { batchv2alpha1.AddToScheme(scheme) certificatesv1beta1.AddToScheme(scheme) extensionsv1beta1.AddToScheme(scheme) + networkingv1.AddToScheme(scheme) policyv1beta1.AddToScheme(scheme) rbacv1beta1.AddToScheme(scheme) rbacv1alpha1.AddToScheme(scheme) diff --git a/vendor/k8s.io/client-go/kubernetes/typed/admissionregistration/v1alpha1/admissionregistration_client.go b/vendor/k8s.io/client-go/kubernetes/typed/admissionregistration/v1alpha1/admissionregistration_client.go new file mode 100644 index 00000000..1ac48c8f --- /dev/null +++ b/vendor/k8s.io/client-go/kubernetes/typed/admissionregistration/v1alpha1/admissionregistration_client.go @@ -0,0 +1,93 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1alpha1 + +import ( + serializer "k8s.io/apimachinery/pkg/runtime/serializer" + "k8s.io/client-go/kubernetes/scheme" + v1alpha1 "k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1" + rest "k8s.io/client-go/rest" +) + +type AdmissionregistrationV1alpha1Interface interface { + RESTClient() rest.Interface + ExternalAdmissionHookConfigurationsGetter + InitializerConfigurationsGetter +} + +// AdmissionregistrationV1alpha1Client is used to interact with features provided by the admissionregistration.k8s.io group. +type AdmissionregistrationV1alpha1Client struct { + restClient rest.Interface +} + +func (c *AdmissionregistrationV1alpha1Client) ExternalAdmissionHookConfigurations() ExternalAdmissionHookConfigurationInterface { + return newExternalAdmissionHookConfigurations(c) +} + +func (c *AdmissionregistrationV1alpha1Client) InitializerConfigurations() InitializerConfigurationInterface { + return newInitializerConfigurations(c) +} + +// NewForConfig creates a new AdmissionregistrationV1alpha1Client for the given config. +func NewForConfig(c *rest.Config) (*AdmissionregistrationV1alpha1Client, error) { + config := *c + if err := setConfigDefaults(&config); err != nil { + return nil, err + } + client, err := rest.RESTClientFor(&config) + if err != nil { + return nil, err + } + return &AdmissionregistrationV1alpha1Client{client}, nil +} + +// NewForConfigOrDie creates a new AdmissionregistrationV1alpha1Client for the given config and +// panics if there is an error in the config. +func NewForConfigOrDie(c *rest.Config) *AdmissionregistrationV1alpha1Client { + client, err := NewForConfig(c) + if err != nil { + panic(err) + } + return client +} + +// New creates a new AdmissionregistrationV1alpha1Client for the given RESTClient. +func New(c rest.Interface) *AdmissionregistrationV1alpha1Client { + return &AdmissionregistrationV1alpha1Client{c} +} + +func setConfigDefaults(config *rest.Config) error { + gv := v1alpha1.SchemeGroupVersion + config.GroupVersion = &gv + config.APIPath = "/apis" + config.NegotiatedSerializer = serializer.DirectCodecFactory{CodecFactory: scheme.Codecs} + + if config.UserAgent == "" { + config.UserAgent = rest.DefaultKubernetesUserAgent() + } + + return nil +} + +// RESTClient returns a RESTClient that is used to communicate +// with API server by this client implementation. +func (c *AdmissionregistrationV1alpha1Client) RESTClient() rest.Interface { + if c == nil { + return nil + } + return c.restClient +} diff --git a/vendor/k8s.io/client-go/kubernetes/typed/admissionregistration/v1alpha1/doc.go b/vendor/k8s.io/client-go/kubernetes/typed/admissionregistration/v1alpha1/doc.go new file mode 100644 index 00000000..ba8d10d3 --- /dev/null +++ b/vendor/k8s.io/client-go/kubernetes/typed/admissionregistration/v1alpha1/doc.go @@ -0,0 +1,20 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This package is generated by client-gen with custom arguments. + +// This package has the automatically generated typed clients. +package v1alpha1 diff --git a/vendor/k8s.io/client-go/kubernetes/typed/admissionregistration/v1alpha1/externaladmissionhookconfiguration.go b/vendor/k8s.io/client-go/kubernetes/typed/admissionregistration/v1alpha1/externaladmissionhookconfiguration.go new file mode 100644 index 00000000..08d68dd0 --- /dev/null +++ b/vendor/k8s.io/client-go/kubernetes/typed/admissionregistration/v1alpha1/externaladmissionhookconfiguration.go @@ -0,0 +1,145 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1alpha1 + +import ( + v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + types "k8s.io/apimachinery/pkg/types" + watch "k8s.io/apimachinery/pkg/watch" + scheme "k8s.io/client-go/kubernetes/scheme" + v1alpha1 "k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1" + rest "k8s.io/client-go/rest" +) + +// ExternalAdmissionHookConfigurationsGetter has a method to return a ExternalAdmissionHookConfigurationInterface. +// A group's client should implement this interface. +type ExternalAdmissionHookConfigurationsGetter interface { + ExternalAdmissionHookConfigurations() ExternalAdmissionHookConfigurationInterface +} + +// ExternalAdmissionHookConfigurationInterface has methods to work with ExternalAdmissionHookConfiguration resources. +type ExternalAdmissionHookConfigurationInterface interface { + Create(*v1alpha1.ExternalAdmissionHookConfiguration) (*v1alpha1.ExternalAdmissionHookConfiguration, error) + Update(*v1alpha1.ExternalAdmissionHookConfiguration) (*v1alpha1.ExternalAdmissionHookConfiguration, error) + Delete(name string, options *v1.DeleteOptions) error + DeleteCollection(options *v1.DeleteOptions, listOptions v1.ListOptions) error + Get(name string, options v1.GetOptions) (*v1alpha1.ExternalAdmissionHookConfiguration, error) + List(opts v1.ListOptions) (*v1alpha1.ExternalAdmissionHookConfigurationList, error) + Watch(opts v1.ListOptions) (watch.Interface, error) + Patch(name string, pt types.PatchType, data []byte, subresources ...string) (result *v1alpha1.ExternalAdmissionHookConfiguration, err error) + ExternalAdmissionHookConfigurationExpansion +} + +// externalAdmissionHookConfigurations implements ExternalAdmissionHookConfigurationInterface +type externalAdmissionHookConfigurations struct { + client rest.Interface +} + +// newExternalAdmissionHookConfigurations returns a ExternalAdmissionHookConfigurations +func newExternalAdmissionHookConfigurations(c *AdmissionregistrationV1alpha1Client) *externalAdmissionHookConfigurations { + return &externalAdmissionHookConfigurations{ + client: c.RESTClient(), + } +} + +// Create takes the representation of a externalAdmissionHookConfiguration and creates it. Returns the server's representation of the externalAdmissionHookConfiguration, and an error, if there is any. +func (c *externalAdmissionHookConfigurations) Create(externalAdmissionHookConfiguration *v1alpha1.ExternalAdmissionHookConfiguration) (result *v1alpha1.ExternalAdmissionHookConfiguration, err error) { + result = &v1alpha1.ExternalAdmissionHookConfiguration{} + err = c.client.Post(). + Resource("externaladmissionhookconfigurations"). + Body(externalAdmissionHookConfiguration). + Do(). + Into(result) + return +} + +// Update takes the representation of a externalAdmissionHookConfiguration and updates it. Returns the server's representation of the externalAdmissionHookConfiguration, and an error, if there is any. +func (c *externalAdmissionHookConfigurations) Update(externalAdmissionHookConfiguration *v1alpha1.ExternalAdmissionHookConfiguration) (result *v1alpha1.ExternalAdmissionHookConfiguration, err error) { + result = &v1alpha1.ExternalAdmissionHookConfiguration{} + err = c.client.Put(). + Resource("externaladmissionhookconfigurations"). + Name(externalAdmissionHookConfiguration.Name). + Body(externalAdmissionHookConfiguration). + Do(). + Into(result) + return +} + +// Delete takes name of the externalAdmissionHookConfiguration and deletes it. Returns an error if one occurs. +func (c *externalAdmissionHookConfigurations) Delete(name string, options *v1.DeleteOptions) error { + return c.client.Delete(). + Resource("externaladmissionhookconfigurations"). + Name(name). + Body(options). + Do(). + Error() +} + +// DeleteCollection deletes a collection of objects. +func (c *externalAdmissionHookConfigurations) DeleteCollection(options *v1.DeleteOptions, listOptions v1.ListOptions) error { + return c.client.Delete(). + Resource("externaladmissionhookconfigurations"). + VersionedParams(&listOptions, scheme.ParameterCodec). + Body(options). + Do(). + Error() +} + +// Get takes name of the externalAdmissionHookConfiguration, and returns the corresponding externalAdmissionHookConfiguration object, and an error if there is any. +func (c *externalAdmissionHookConfigurations) Get(name string, options v1.GetOptions) (result *v1alpha1.ExternalAdmissionHookConfiguration, err error) { + result = &v1alpha1.ExternalAdmissionHookConfiguration{} + err = c.client.Get(). + Resource("externaladmissionhookconfigurations"). + Name(name). + VersionedParams(&options, scheme.ParameterCodec). + Do(). + Into(result) + return +} + +// List takes label and field selectors, and returns the list of ExternalAdmissionHookConfigurations that match those selectors. +func (c *externalAdmissionHookConfigurations) List(opts v1.ListOptions) (result *v1alpha1.ExternalAdmissionHookConfigurationList, err error) { + result = &v1alpha1.ExternalAdmissionHookConfigurationList{} + err = c.client.Get(). + Resource("externaladmissionhookconfigurations"). + VersionedParams(&opts, scheme.ParameterCodec). + Do(). + Into(result) + return +} + +// Watch returns a watch.Interface that watches the requested externalAdmissionHookConfigurations. +func (c *externalAdmissionHookConfigurations) Watch(opts v1.ListOptions) (watch.Interface, error) { + opts.Watch = true + return c.client.Get(). + Resource("externaladmissionhookconfigurations"). + VersionedParams(&opts, scheme.ParameterCodec). + Watch() +} + +// Patch applies the patch and returns the patched externalAdmissionHookConfiguration. +func (c *externalAdmissionHookConfigurations) Patch(name string, pt types.PatchType, data []byte, subresources ...string) (result *v1alpha1.ExternalAdmissionHookConfiguration, err error) { + result = &v1alpha1.ExternalAdmissionHookConfiguration{} + err = c.client.Patch(pt). + Resource("externaladmissionhookconfigurations"). + SubResource(subresources...). + Name(name). + Body(data). + Do(). + Into(result) + return +} diff --git a/vendor/k8s.io/client-go/kubernetes/typed/admissionregistration/v1alpha1/generated_expansion.go b/vendor/k8s.io/client-go/kubernetes/typed/admissionregistration/v1alpha1/generated_expansion.go new file mode 100644 index 00000000..eef439ab --- /dev/null +++ b/vendor/k8s.io/client-go/kubernetes/typed/admissionregistration/v1alpha1/generated_expansion.go @@ -0,0 +1,21 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1alpha1 + +type ExternalAdmissionHookConfigurationExpansion interface{} + +type InitializerConfigurationExpansion interface{} diff --git a/vendor/k8s.io/client-go/kubernetes/typed/admissionregistration/v1alpha1/initializerconfiguration.go b/vendor/k8s.io/client-go/kubernetes/typed/admissionregistration/v1alpha1/initializerconfiguration.go new file mode 100644 index 00000000..25fee850 --- /dev/null +++ b/vendor/k8s.io/client-go/kubernetes/typed/admissionregistration/v1alpha1/initializerconfiguration.go @@ -0,0 +1,145 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1alpha1 + +import ( + v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + types "k8s.io/apimachinery/pkg/types" + watch "k8s.io/apimachinery/pkg/watch" + scheme "k8s.io/client-go/kubernetes/scheme" + v1alpha1 "k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1" + rest "k8s.io/client-go/rest" +) + +// InitializerConfigurationsGetter has a method to return a InitializerConfigurationInterface. +// A group's client should implement this interface. +type InitializerConfigurationsGetter interface { + InitializerConfigurations() InitializerConfigurationInterface +} + +// InitializerConfigurationInterface has methods to work with InitializerConfiguration resources. +type InitializerConfigurationInterface interface { + Create(*v1alpha1.InitializerConfiguration) (*v1alpha1.InitializerConfiguration, error) + Update(*v1alpha1.InitializerConfiguration) (*v1alpha1.InitializerConfiguration, error) + Delete(name string, options *v1.DeleteOptions) error + DeleteCollection(options *v1.DeleteOptions, listOptions v1.ListOptions) error + Get(name string, options v1.GetOptions) (*v1alpha1.InitializerConfiguration, error) + List(opts v1.ListOptions) (*v1alpha1.InitializerConfigurationList, error) + Watch(opts v1.ListOptions) (watch.Interface, error) + Patch(name string, pt types.PatchType, data []byte, subresources ...string) (result *v1alpha1.InitializerConfiguration, err error) + InitializerConfigurationExpansion +} + +// initializerConfigurations implements InitializerConfigurationInterface +type initializerConfigurations struct { + client rest.Interface +} + +// newInitializerConfigurations returns a InitializerConfigurations +func newInitializerConfigurations(c *AdmissionregistrationV1alpha1Client) *initializerConfigurations { + return &initializerConfigurations{ + client: c.RESTClient(), + } +} + +// Create takes the representation of a initializerConfiguration and creates it. Returns the server's representation of the initializerConfiguration, and an error, if there is any. +func (c *initializerConfigurations) Create(initializerConfiguration *v1alpha1.InitializerConfiguration) (result *v1alpha1.InitializerConfiguration, err error) { + result = &v1alpha1.InitializerConfiguration{} + err = c.client.Post(). + Resource("initializerconfigurations"). + Body(initializerConfiguration). + Do(). + Into(result) + return +} + +// Update takes the representation of a initializerConfiguration and updates it. Returns the server's representation of the initializerConfiguration, and an error, if there is any. +func (c *initializerConfigurations) Update(initializerConfiguration *v1alpha1.InitializerConfiguration) (result *v1alpha1.InitializerConfiguration, err error) { + result = &v1alpha1.InitializerConfiguration{} + err = c.client.Put(). + Resource("initializerconfigurations"). + Name(initializerConfiguration.Name). + Body(initializerConfiguration). + Do(). + Into(result) + return +} + +// Delete takes name of the initializerConfiguration and deletes it. Returns an error if one occurs. +func (c *initializerConfigurations) Delete(name string, options *v1.DeleteOptions) error { + return c.client.Delete(). + Resource("initializerconfigurations"). + Name(name). + Body(options). + Do(). + Error() +} + +// DeleteCollection deletes a collection of objects. +func (c *initializerConfigurations) DeleteCollection(options *v1.DeleteOptions, listOptions v1.ListOptions) error { + return c.client.Delete(). + Resource("initializerconfigurations"). + VersionedParams(&listOptions, scheme.ParameterCodec). + Body(options). + Do(). + Error() +} + +// Get takes name of the initializerConfiguration, and returns the corresponding initializerConfiguration object, and an error if there is any. +func (c *initializerConfigurations) Get(name string, options v1.GetOptions) (result *v1alpha1.InitializerConfiguration, err error) { + result = &v1alpha1.InitializerConfiguration{} + err = c.client.Get(). + Resource("initializerconfigurations"). + Name(name). + VersionedParams(&options, scheme.ParameterCodec). + Do(). + Into(result) + return +} + +// List takes label and field selectors, and returns the list of InitializerConfigurations that match those selectors. +func (c *initializerConfigurations) List(opts v1.ListOptions) (result *v1alpha1.InitializerConfigurationList, err error) { + result = &v1alpha1.InitializerConfigurationList{} + err = c.client.Get(). + Resource("initializerconfigurations"). + VersionedParams(&opts, scheme.ParameterCodec). + Do(). + Into(result) + return +} + +// Watch returns a watch.Interface that watches the requested initializerConfigurations. +func (c *initializerConfigurations) Watch(opts v1.ListOptions) (watch.Interface, error) { + opts.Watch = true + return c.client.Get(). + Resource("initializerconfigurations"). + VersionedParams(&opts, scheme.ParameterCodec). + Watch() +} + +// Patch applies the patch and returns the patched initializerConfiguration. +func (c *initializerConfigurations) Patch(name string, pt types.PatchType, data []byte, subresources ...string) (result *v1alpha1.InitializerConfiguration, err error) { + result = &v1alpha1.InitializerConfiguration{} + err = c.client.Patch(pt). + Resource("initializerconfigurations"). + SubResource(subresources...). + Name(name). + Body(data). + Do(). + Into(result) + return +} diff --git a/vendor/k8s.io/client-go/kubernetes/typed/apps/v1beta1/apps_client.go b/vendor/k8s.io/client-go/kubernetes/typed/apps/v1beta1/apps_client.go index a520f87f..c18da39f 100644 --- a/vendor/k8s.io/client-go/kubernetes/typed/apps/v1beta1/apps_client.go +++ b/vendor/k8s.io/client-go/kubernetes/typed/apps/v1beta1/apps_client.go @@ -25,6 +25,7 @@ import ( type AppsV1beta1Interface interface { RESTClient() rest.Interface + ControllerRevisionsGetter DeploymentsGetter ScalesGetter StatefulSetsGetter @@ -35,6 +36,10 @@ type AppsV1beta1Client struct { restClient rest.Interface } +func (c *AppsV1beta1Client) ControllerRevisions(namespace string) ControllerRevisionInterface { + return newControllerRevisions(c, namespace) +} + func (c *AppsV1beta1Client) Deployments(namespace string) DeploymentInterface { return newDeployments(c, namespace) } diff --git a/vendor/k8s.io/client-go/kubernetes/typed/apps/v1beta1/controllerrevision.go b/vendor/k8s.io/client-go/kubernetes/typed/apps/v1beta1/controllerrevision.go new file mode 100644 index 00000000..de24bbb5 --- /dev/null +++ b/vendor/k8s.io/client-go/kubernetes/typed/apps/v1beta1/controllerrevision.go @@ -0,0 +1,155 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1beta1 + +import ( + v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + types "k8s.io/apimachinery/pkg/types" + watch "k8s.io/apimachinery/pkg/watch" + scheme "k8s.io/client-go/kubernetes/scheme" + v1beta1 "k8s.io/client-go/pkg/apis/apps/v1beta1" + rest "k8s.io/client-go/rest" +) + +// ControllerRevisionsGetter has a method to return a ControllerRevisionInterface. +// A group's client should implement this interface. +type ControllerRevisionsGetter interface { + ControllerRevisions(namespace string) ControllerRevisionInterface +} + +// ControllerRevisionInterface has methods to work with ControllerRevision resources. +type ControllerRevisionInterface interface { + Create(*v1beta1.ControllerRevision) (*v1beta1.ControllerRevision, error) + Update(*v1beta1.ControllerRevision) (*v1beta1.ControllerRevision, error) + Delete(name string, options *v1.DeleteOptions) error + DeleteCollection(options *v1.DeleteOptions, listOptions v1.ListOptions) error + Get(name string, options v1.GetOptions) (*v1beta1.ControllerRevision, error) + List(opts v1.ListOptions) (*v1beta1.ControllerRevisionList, error) + Watch(opts v1.ListOptions) (watch.Interface, error) + Patch(name string, pt types.PatchType, data []byte, subresources ...string) (result *v1beta1.ControllerRevision, err error) + ControllerRevisionExpansion +} + +// controllerRevisions implements ControllerRevisionInterface +type controllerRevisions struct { + client rest.Interface + ns string +} + +// newControllerRevisions returns a ControllerRevisions +func newControllerRevisions(c *AppsV1beta1Client, namespace string) *controllerRevisions { + return &controllerRevisions{ + client: c.RESTClient(), + ns: namespace, + } +} + +// Create takes the representation of a controllerRevision and creates it. Returns the server's representation of the controllerRevision, and an error, if there is any. +func (c *controllerRevisions) Create(controllerRevision *v1beta1.ControllerRevision) (result *v1beta1.ControllerRevision, err error) { + result = &v1beta1.ControllerRevision{} + err = c.client.Post(). + Namespace(c.ns). + Resource("controllerrevisions"). + Body(controllerRevision). + Do(). + Into(result) + return +} + +// Update takes the representation of a controllerRevision and updates it. Returns the server's representation of the controllerRevision, and an error, if there is any. +func (c *controllerRevisions) Update(controllerRevision *v1beta1.ControllerRevision) (result *v1beta1.ControllerRevision, err error) { + result = &v1beta1.ControllerRevision{} + err = c.client.Put(). + Namespace(c.ns). + Resource("controllerrevisions"). + Name(controllerRevision.Name). + Body(controllerRevision). + Do(). + Into(result) + return +} + +// Delete takes name of the controllerRevision and deletes it. Returns an error if one occurs. +func (c *controllerRevisions) Delete(name string, options *v1.DeleteOptions) error { + return c.client.Delete(). + Namespace(c.ns). + Resource("controllerrevisions"). + Name(name). + Body(options). + Do(). + Error() +} + +// DeleteCollection deletes a collection of objects. +func (c *controllerRevisions) DeleteCollection(options *v1.DeleteOptions, listOptions v1.ListOptions) error { + return c.client.Delete(). + Namespace(c.ns). + Resource("controllerrevisions"). + VersionedParams(&listOptions, scheme.ParameterCodec). + Body(options). + Do(). + Error() +} + +// Get takes name of the controllerRevision, and returns the corresponding controllerRevision object, and an error if there is any. +func (c *controllerRevisions) Get(name string, options v1.GetOptions) (result *v1beta1.ControllerRevision, err error) { + result = &v1beta1.ControllerRevision{} + err = c.client.Get(). + Namespace(c.ns). + Resource("controllerrevisions"). + Name(name). + VersionedParams(&options, scheme.ParameterCodec). + Do(). + Into(result) + return +} + +// List takes label and field selectors, and returns the list of ControllerRevisions that match those selectors. +func (c *controllerRevisions) List(opts v1.ListOptions) (result *v1beta1.ControllerRevisionList, err error) { + result = &v1beta1.ControllerRevisionList{} + err = c.client.Get(). + Namespace(c.ns). + Resource("controllerrevisions"). + VersionedParams(&opts, scheme.ParameterCodec). + Do(). + Into(result) + return +} + +// Watch returns a watch.Interface that watches the requested controllerRevisions. +func (c *controllerRevisions) Watch(opts v1.ListOptions) (watch.Interface, error) { + opts.Watch = true + return c.client.Get(). + Namespace(c.ns). + Resource("controllerrevisions"). + VersionedParams(&opts, scheme.ParameterCodec). + Watch() +} + +// Patch applies the patch and returns the patched controllerRevision. +func (c *controllerRevisions) Patch(name string, pt types.PatchType, data []byte, subresources ...string) (result *v1beta1.ControllerRevision, err error) { + result = &v1beta1.ControllerRevision{} + err = c.client.Patch(pt). + Namespace(c.ns). + Resource("controllerrevisions"). + SubResource(subresources...). + Name(name). + Body(data). + Do(). + Into(result) + return +} diff --git a/vendor/k8s.io/client-go/kubernetes/typed/apps/v1beta1/generated_expansion.go b/vendor/k8s.io/client-go/kubernetes/typed/apps/v1beta1/generated_expansion.go index deca5c86..a091b902 100644 --- a/vendor/k8s.io/client-go/kubernetes/typed/apps/v1beta1/generated_expansion.go +++ b/vendor/k8s.io/client-go/kubernetes/typed/apps/v1beta1/generated_expansion.go @@ -16,6 +16,8 @@ limitations under the License. package v1beta1 +type ControllerRevisionExpansion interface{} + type DeploymentExpansion interface{} type ScaleExpansion interface{} diff --git a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/well_known_annotations.go b/vendor/k8s.io/client-go/kubernetes/typed/networking/v1/doc.go similarity index 63% rename from vendor/k8s.io/apimachinery/pkg/apis/meta/v1/well_known_annotations.go rename to vendor/k8s.io/client-go/kubernetes/typed/networking/v1/doc.go index 937c54c7..54673bfa 100644 --- a/vendor/k8s.io/apimachinery/pkg/apis/meta/v1/well_known_annotations.go +++ b/vendor/k8s.io/client-go/kubernetes/typed/networking/v1/doc.go @@ -14,12 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -package v1 +// This package is generated by client-gen with custom arguments. -const ( - // When kubelet is started with the "external" cloud provider, then - // it sets this annotation on the node to denote an ip address set from the - // cmd line flag. This ip is verified with the cloudprovider as valid by - // the cloud-controller-manager - AnnotationProvidedIPAddr = "alpha.kubernetes.io/provided-node-ip" -) +// This package has the automatically generated typed clients. +package v1 diff --git a/vendor/k8s.io/client-go/kubernetes/typed/networking/v1/generated_expansion.go b/vendor/k8s.io/client-go/kubernetes/typed/networking/v1/generated_expansion.go new file mode 100644 index 00000000..cdd70ae3 --- /dev/null +++ b/vendor/k8s.io/client-go/kubernetes/typed/networking/v1/generated_expansion.go @@ -0,0 +1,19 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +type NetworkPolicyExpansion interface{} diff --git a/vendor/k8s.io/client-go/kubernetes/typed/networking/v1/networking_client.go b/vendor/k8s.io/client-go/kubernetes/typed/networking/v1/networking_client.go new file mode 100644 index 00000000..20429dd5 --- /dev/null +++ b/vendor/k8s.io/client-go/kubernetes/typed/networking/v1/networking_client.go @@ -0,0 +1,88 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +import ( + serializer "k8s.io/apimachinery/pkg/runtime/serializer" + "k8s.io/client-go/kubernetes/scheme" + v1 "k8s.io/client-go/pkg/apis/networking/v1" + rest "k8s.io/client-go/rest" +) + +type NetworkingV1Interface interface { + RESTClient() rest.Interface + NetworkPoliciesGetter +} + +// NetworkingV1Client is used to interact with features provided by the networking.k8s.io group. +type NetworkingV1Client struct { + restClient rest.Interface +} + +func (c *NetworkingV1Client) NetworkPolicies(namespace string) NetworkPolicyInterface { + return newNetworkPolicies(c, namespace) +} + +// NewForConfig creates a new NetworkingV1Client for the given config. +func NewForConfig(c *rest.Config) (*NetworkingV1Client, error) { + config := *c + if err := setConfigDefaults(&config); err != nil { + return nil, err + } + client, err := rest.RESTClientFor(&config) + if err != nil { + return nil, err + } + return &NetworkingV1Client{client}, nil +} + +// NewForConfigOrDie creates a new NetworkingV1Client for the given config and +// panics if there is an error in the config. +func NewForConfigOrDie(c *rest.Config) *NetworkingV1Client { + client, err := NewForConfig(c) + if err != nil { + panic(err) + } + return client +} + +// New creates a new NetworkingV1Client for the given RESTClient. +func New(c rest.Interface) *NetworkingV1Client { + return &NetworkingV1Client{c} +} + +func setConfigDefaults(config *rest.Config) error { + gv := v1.SchemeGroupVersion + config.GroupVersion = &gv + config.APIPath = "/apis" + config.NegotiatedSerializer = serializer.DirectCodecFactory{CodecFactory: scheme.Codecs} + + if config.UserAgent == "" { + config.UserAgent = rest.DefaultKubernetesUserAgent() + } + + return nil +} + +// RESTClient returns a RESTClient that is used to communicate +// with API server by this client implementation. +func (c *NetworkingV1Client) RESTClient() rest.Interface { + if c == nil { + return nil + } + return c.restClient +} diff --git a/vendor/k8s.io/client-go/kubernetes/typed/networking/v1/networkpolicy.go b/vendor/k8s.io/client-go/kubernetes/typed/networking/v1/networkpolicy.go new file mode 100644 index 00000000..14d1e669 --- /dev/null +++ b/vendor/k8s.io/client-go/kubernetes/typed/networking/v1/networkpolicy.go @@ -0,0 +1,155 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +import ( + meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + types "k8s.io/apimachinery/pkg/types" + watch "k8s.io/apimachinery/pkg/watch" + scheme "k8s.io/client-go/kubernetes/scheme" + v1 "k8s.io/client-go/pkg/apis/networking/v1" + rest "k8s.io/client-go/rest" +) + +// NetworkPoliciesGetter has a method to return a NetworkPolicyInterface. +// A group's client should implement this interface. +type NetworkPoliciesGetter interface { + NetworkPolicies(namespace string) NetworkPolicyInterface +} + +// NetworkPolicyInterface has methods to work with NetworkPolicy resources. +type NetworkPolicyInterface interface { + Create(*v1.NetworkPolicy) (*v1.NetworkPolicy, error) + Update(*v1.NetworkPolicy) (*v1.NetworkPolicy, error) + Delete(name string, options *meta_v1.DeleteOptions) error + DeleteCollection(options *meta_v1.DeleteOptions, listOptions meta_v1.ListOptions) error + Get(name string, options meta_v1.GetOptions) (*v1.NetworkPolicy, error) + List(opts meta_v1.ListOptions) (*v1.NetworkPolicyList, error) + Watch(opts meta_v1.ListOptions) (watch.Interface, error) + Patch(name string, pt types.PatchType, data []byte, subresources ...string) (result *v1.NetworkPolicy, err error) + NetworkPolicyExpansion +} + +// networkPolicies implements NetworkPolicyInterface +type networkPolicies struct { + client rest.Interface + ns string +} + +// newNetworkPolicies returns a NetworkPolicies +func newNetworkPolicies(c *NetworkingV1Client, namespace string) *networkPolicies { + return &networkPolicies{ + client: c.RESTClient(), + ns: namespace, + } +} + +// Create takes the representation of a networkPolicy and creates it. Returns the server's representation of the networkPolicy, and an error, if there is any. +func (c *networkPolicies) Create(networkPolicy *v1.NetworkPolicy) (result *v1.NetworkPolicy, err error) { + result = &v1.NetworkPolicy{} + err = c.client.Post(). + Namespace(c.ns). + Resource("networkpolicies"). + Body(networkPolicy). + Do(). + Into(result) + return +} + +// Update takes the representation of a networkPolicy and updates it. Returns the server's representation of the networkPolicy, and an error, if there is any. +func (c *networkPolicies) Update(networkPolicy *v1.NetworkPolicy) (result *v1.NetworkPolicy, err error) { + result = &v1.NetworkPolicy{} + err = c.client.Put(). + Namespace(c.ns). + Resource("networkpolicies"). + Name(networkPolicy.Name). + Body(networkPolicy). + Do(). + Into(result) + return +} + +// Delete takes name of the networkPolicy and deletes it. Returns an error if one occurs. +func (c *networkPolicies) Delete(name string, options *meta_v1.DeleteOptions) error { + return c.client.Delete(). + Namespace(c.ns). + Resource("networkpolicies"). + Name(name). + Body(options). + Do(). + Error() +} + +// DeleteCollection deletes a collection of objects. +func (c *networkPolicies) DeleteCollection(options *meta_v1.DeleteOptions, listOptions meta_v1.ListOptions) error { + return c.client.Delete(). + Namespace(c.ns). + Resource("networkpolicies"). + VersionedParams(&listOptions, scheme.ParameterCodec). + Body(options). + Do(). + Error() +} + +// Get takes name of the networkPolicy, and returns the corresponding networkPolicy object, and an error if there is any. +func (c *networkPolicies) Get(name string, options meta_v1.GetOptions) (result *v1.NetworkPolicy, err error) { + result = &v1.NetworkPolicy{} + err = c.client.Get(). + Namespace(c.ns). + Resource("networkpolicies"). + Name(name). + VersionedParams(&options, scheme.ParameterCodec). + Do(). + Into(result) + return +} + +// List takes label and field selectors, and returns the list of NetworkPolicies that match those selectors. +func (c *networkPolicies) List(opts meta_v1.ListOptions) (result *v1.NetworkPolicyList, err error) { + result = &v1.NetworkPolicyList{} + err = c.client.Get(). + Namespace(c.ns). + Resource("networkpolicies"). + VersionedParams(&opts, scheme.ParameterCodec). + Do(). + Into(result) + return +} + +// Watch returns a watch.Interface that watches the requested networkPolicies. +func (c *networkPolicies) Watch(opts meta_v1.ListOptions) (watch.Interface, error) { + opts.Watch = true + return c.client.Get(). + Namespace(c.ns). + Resource("networkpolicies"). + VersionedParams(&opts, scheme.ParameterCodec). + Watch() +} + +// Patch applies the patch and returns the patched networkPolicy. +func (c *networkPolicies) Patch(name string, pt types.PatchType, data []byte, subresources ...string) (result *v1.NetworkPolicy, err error) { + result = &v1.NetworkPolicy{} + err = c.client.Patch(pt). + Namespace(c.ns). + Resource("networkpolicies"). + SubResource(subresources...). + Name(name). + Body(data). + Do(). + Into(result) + return +} diff --git a/vendor/k8s.io/client-go/pkg/api/annotation_key_constants.go b/vendor/k8s.io/client-go/pkg/api/annotation_key_constants.go index bfb42c8b..e1080a34 100644 --- a/vendor/k8s.io/client-go/pkg/api/annotation_key_constants.go +++ b/vendor/k8s.io/client-go/pkg/api/annotation_key_constants.go @@ -19,6 +19,13 @@ limitations under the License. package api const ( + // ImagePolicyFailedOpenKey is added to pods created by failing open when the image policy + // webhook backend fails. + ImagePolicyFailedOpenKey string = "alpha.image-policy.k8s.io/failed-open" + + // PodPresetOptOutAnnotationKey represents the annotation key for a pod to exempt itself from pod preset manipulation + PodPresetOptOutAnnotationKey string = "podpreset.admission.kubernetes.io/exclude" + // MirrorAnnotationKey represents the annotation key set by kubelets when creating mirror pods MirrorPodAnnotationKey string = "kubernetes.io/config.mirror" diff --git a/vendor/k8s.io/client-go/pkg/api/register.go b/vendor/k8s.io/client-go/pkg/api/register.go index 23cfaabd..5f261bdf 100644 --- a/vendor/k8s.io/client-go/pkg/api/register.go +++ b/vendor/k8s.io/client-go/pkg/api/register.go @@ -50,10 +50,6 @@ const GroupName = "" // SchemeGroupVersion is group version used to register these objects var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: runtime.APIVersionInternal} -// Unversioned is group version for unversioned API objects -// TODO: this should be v1 probably -var Unversioned = schema.GroupVersion{Group: "", Version: "v1"} - // ParameterCodec handles versioning of objects that are converted to query parameters. var ParameterCodec = runtime.NewParameterCodec(Scheme) @@ -123,13 +119,5 @@ func addKnownTypes(scheme *runtime.Scheme) error { &ConfigMapList{}, ) - // Register Unversioned types under their own special group - scheme.AddUnversionedTypes(Unversioned, - &metav1.Status{}, - &metav1.APIVersions{}, - &metav1.APIGroupList{}, - &metav1.APIGroup{}, - &metav1.APIResourceList{}, - ) return nil } diff --git a/vendor/k8s.io/client-go/pkg/api/resource.go b/vendor/k8s.io/client-go/pkg/api/resource.go index 1ea96d16..27b7fd66 100644 --- a/vendor/k8s.io/client-go/pkg/api/resource.go +++ b/vendor/k8s.io/client-go/pkg/api/resource.go @@ -53,3 +53,10 @@ func (self *ResourceList) NvidiaGPU() *resource.Quantity { } return &resource.Quantity{} } + +func (self *ResourceList) StorageOverlay() *resource.Quantity { + if val, ok := (*self)[ResourceStorageOverlay]; ok { + return &val + } + return &resource.Quantity{} +} diff --git a/vendor/k8s.io/client-go/pkg/api/types.go b/vendor/k8s.io/client-go/pkg/api/types.go index 0984bab2..412d6d08 100644 --- a/vendor/k8s.io/client-go/pkg/api/types.go +++ b/vendor/k8s.io/client-go/pkg/api/types.go @@ -131,7 +131,7 @@ type ObjectMeta struct { // // Populated by the system when a graceful deletion is requested. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional DeletionTimestamp *metav1.Time @@ -313,6 +313,9 @@ type VolumeSource struct { // ScaleIO represents a ScaleIO persistent volume attached and mounted on Kubernetes nodes. // +optional ScaleIO *ScaleIOVolumeSource + // StorageOS represents a StorageOS volume that is attached to the kubelet's host machine and mounted into the pod + // +optional + StorageOS *StorageOSVolumeSource } // Similar to VolumeSource but meant for the administrator who creates PVs. @@ -381,6 +384,13 @@ type PersistentVolumeSource struct { // ScaleIO represents a ScaleIO persistent volume attached and mounted on Kubernetes nodes. // +optional ScaleIO *ScaleIOVolumeSource + // Local represents directly-attached storage with node affinity + // +optional + Local *LocalVolumeSource + // StorageOS represents a StorageOS volume that is attached to the kubelet's host machine and mounted into the pod + // More info: https://releases.k8s.io/HEAD/examples/volumes/storageos/README.md + // +optional + StorageOS *StorageOSPersistentVolumeSource } type PersistentVolumeClaimVolumeSource struct { @@ -399,6 +409,10 @@ const ( // MountOptionAnnotation defines mount option annotation used in PVs MountOptionAnnotation = "volume.beta.kubernetes.io/mount-options" + + // AlphaStorageNodeAffinityAnnotation defines node affinity policies for a PersistentVolume. + // Value is a string of the json representation of type NodeAffinity + AlphaStorageNodeAffinityAnnotation = "volume.alpha.kubernetes.io/node-affinity" ) // +genclient=true @@ -594,6 +608,14 @@ type EmptyDirVolumeSource struct { // The default is "" which means to use the node's default medium. // +optional Medium StorageMedium + // Total amount of local storage required for this EmptyDir volume. + // The size limit is also applicable for memory medium. + // The maximum usage on memory medium EmptyDir would be the minimum value between + // the SizeLimit specified here and the sum of memory limits of all containers in a pod. + // The default is nil which means that the limit is undefined. + // More info: http://kubernetes.io/docs/user-guide/volumes#emptydir + // +optional + SizeLimit resource.Quantity } // StorageMedium defines ways that storage can be allocated to a volume. @@ -1031,6 +1053,12 @@ type VsphereVirtualDiskVolumeSource struct { // Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. // +optional FSType string + // Storage Policy Based Management (SPBM) profile name. + // +optional + StoragePolicyName string + // Storage Policy Based Management (SPBM) profile ID associated with the StoragePolicyName. + // +optional + StoragePolicyID string } // Represents a Photon Controller persistent disk resource. @@ -1075,7 +1103,7 @@ const ( type AzureDiskVolumeSource struct { // The Name of the data disk in the blob storage DiskName string - // The URI the the data disk in the blob storage + // The URI of the data disk in the blob storage DataDiskURI string // Host Caching mode: None, Read Only, Read Write. // +optional @@ -1128,6 +1156,62 @@ type ScaleIOVolumeSource struct { ReadOnly bool } +// Represents a StorageOS persistent volume resource. +type StorageOSVolumeSource struct { + // VolumeName is the human-readable name of the StorageOS volume. Volume + // names are only unique within a namespace. + VolumeName string + // VolumeNamespace specifies the scope of the volume within StorageOS. If no + // namespace is specified then the Pod's namespace will be used. This allows the + // Kubernetes name scoping to be mirrored within StorageOS for tighter integration. + // Set VolumeName to any name to override the default behaviour. + // Set to "default" if you are not using namespaces within StorageOS. + // Namespaces that do not pre-exist within StorageOS will be created. + // +optional + VolumeNamespace string + // Filesystem type to mount. + // Must be a filesystem type supported by the host operating system. + // Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. + // +optional + FSType string + // Defaults to false (read/write). ReadOnly here will force + // the ReadOnly setting in VolumeMounts. + // +optional + ReadOnly bool + // SecretRef specifies the secret to use for obtaining the StorageOS API + // credentials. If not specified, default values will be attempted. + // +optional + SecretRef *LocalObjectReference +} + +// Represents a StorageOS persistent volume resource. +type StorageOSPersistentVolumeSource struct { + // VolumeName is the human-readable name of the StorageOS volume. Volume + // names are only unique within a namespace. + VolumeName string + // VolumeNamespace specifies the scope of the volume within StorageOS. If no + // namespace is specified then the Pod's namespace will be used. This allows the + // Kubernetes name scoping to be mirrored within StorageOS for tighter integration. + // Set VolumeName to any name to override the default behaviour. + // Set to "default" if you are not using namespaces within StorageOS. + // Namespaces that do not pre-exist within StorageOS will be created. + // +optional + VolumeNamespace string + // Filesystem type to mount. + // Must be a filesystem type supported by the host operating system. + // Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. + // +optional + FSType string + // Defaults to false (read/write). ReadOnly here will force + // the ReadOnly setting in VolumeMounts. + // +optional + ReadOnly bool + // SecretRef specifies the secret to use for obtaining the StorageOS API + // credentials. If not specified, default values will be attempted. + // +optional + SecretRef *ObjectReference +} + // Adapts a ConfigMap into a volume. // // The contents of the target ConfigMap's Data field will be presented in a @@ -1223,6 +1307,14 @@ type KeyToPath struct { Mode *int32 } +// Local represents directly-attached storage with node affinity +type LocalVolumeSource struct { + // The full path to the volume on the node + // For alpha, this path must be a directory + // Once block as a source is supported, then this path can point to a block device + Path string +} + // ContainerPort represents a network port in a single container type ContainerPort struct { // Optional: If specified, this must be an IANA_SVC_NAME Each named port @@ -2475,10 +2567,10 @@ const ( type ServiceExternalTrafficPolicyType string const ( - // ServiceExternalTrafficPolicyTypeLocal specifies local endpoints behavior. + // ServiceExternalTrafficPolicyTypeLocal specifies node-local endpoints behavior. ServiceExternalTrafficPolicyTypeLocal ServiceExternalTrafficPolicyType = "Local" - // ServiceExternalTrafficPolicyTypeGlobal specifies global (legacy) behavior. - ServiceExternalTrafficPolicyTypeGlobal ServiceExternalTrafficPolicyType = "Global" + // ServiceExternalTrafficPolicyTypeCluster specifies cluster-wide (legacy) behavior. + ServiceExternalTrafficPolicyTypeCluster ServiceExternalTrafficPolicyType = "Cluster" ) // ServiceStatus represents the current status of a service @@ -2581,9 +2673,12 @@ type ServiceSpec struct { // +optional LoadBalancerSourceRanges []string - // externalTrafficPolicy denotes if this Service desires to route external traffic to - // local endpoints only. This preserves Source IP and avoids a second hop for - // LoadBalancer and Nodeport type services. + // externalTrafficPolicy denotes if this Service desires to route external + // traffic to node-local or cluster-wide endpoints. "Local" preserves the + // client source IP and avoids a second hop for LoadBalancer and Nodeport + // type services, but risks potentially imbalanced traffic spreading. + // "Cluster" obscures the client source IP and may cause a second hop to + // another node, but should have good overall load-spreading. // +optional ExternalTrafficPolicy ServiceExternalTrafficPolicyType @@ -2802,11 +2897,11 @@ type NodeDaemonEndpoints struct { // NodeSystemInfo is a set of ids/uuids to uniquely identify the node. type NodeSystemInfo struct { // MachineID reported by the node. For unique machine identification - // in the cluster this field is prefered. Learn more from man(5) + // in the cluster this field is preferred. Learn more from man(5) // machine-id: http://man7.org/linux/man-pages/man5/machine-id.5.html MachineID string // SystemUUID reported by the node. For unique machine identification - // MachineID is prefered. This field is specific to Red Hat hosts + // MachineID is preferred. This field is specific to Red Hat hosts // https://access.redhat.com/documentation/en-US/Red_Hat_Subscription_Management/1/html/RHSM/getting-system-uuid.html SystemUUID string // Boot ID reported by the node. @@ -2996,6 +3091,12 @@ const ( ResourceMemory ResourceName = "memory" // Volume size, in bytes (e,g. 5Gi = 5GiB = 5 * 1024 * 1024 * 1024) ResourceStorage ResourceName = "storage" + // Local Storage for overlay filesystem, in bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024) + // The resource name for ResourceStorageOverlay is alpha and it can change across releases. + ResourceStorageOverlay ResourceName = "storage.kubernetes.io/overlay" + // Local Storage for scratch space, in bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024) + // The resource name for ResourceStorageScratch is alpha and it can change across releases. + ResourceStorageScratch ResourceName = "storage.kubernetes.io/scratch" // NVIDIA GPU, in devices. Alpha, might change: although fractional and allowing values >1, only one whole device per node is assigned. ResourceNvidiaGPU ResourceName = "alpha.kubernetes.io/nvidia-gpu" // Number of Pods that may be running on this Node: see ResourcePods @@ -3097,7 +3198,8 @@ type NamespaceList struct { Items []Namespace } -// Binding ties one object to another - for example, a pod is bound to a node by a scheduler. +// Binding ties one object to another; for example, a pod is bound to a node by a scheduler. +// Deprecated in 1.7, please use the bindings subresource of pods instead. type Binding struct { metav1.TypeMeta // ObjectMeta describes the object that is being bound. @@ -3884,8 +3986,4 @@ const ( // When the --hard-pod-affinity-weight scheduler flag is not specified, // DefaultHardPodAffinityWeight defines the weight of the implicit PreferredDuringScheduling affinity rule. DefaultHardPodAffinitySymmetricWeight int = 1 - - // When the --failure-domains scheduler flag is not specified, - // DefaultFailureDomains defines the set of label keys used when TopologyKey is empty in PreferredDuringScheduling anti-affinity. - DefaultFailureDomains string = metav1.LabelHostname + "," + metav1.LabelZoneFailureDomain + "," + metav1.LabelZoneRegion ) diff --git a/vendor/k8s.io/client-go/pkg/api/v1/annotation_key_constants.go b/vendor/k8s.io/client-go/pkg/api/v1/annotation_key_constants.go index 96bbdd57..bb458855 100644 --- a/vendor/k8s.io/client-go/pkg/api/v1/annotation_key_constants.go +++ b/vendor/k8s.io/client-go/pkg/api/v1/annotation_key_constants.go @@ -19,6 +19,13 @@ limitations under the License. package v1 const ( + // ImagePolicyFailedOpenKey is added to pods created by failing open when the image policy + // webhook backend fails. + ImagePolicyFailedOpenKey string = "alpha.image-policy.k8s.io/failed-open" + + // PodPresetOptOutAnnotationKey represents the annotation key for a pod to exempt itself from pod preset manipulation + PodPresetOptOutAnnotationKey string = "podpreset.admission.kubernetes.io/exclude" + // MirrorAnnotationKey represents the annotation key set by kubelets when creating mirror pods MirrorPodAnnotationKey string = "kubernetes.io/config.mirror" diff --git a/vendor/k8s.io/client-go/pkg/api/v1/defaults.go b/vendor/k8s.io/client-go/pkg/api/v1/defaults.go index 19c6f6f5..a791ba7b 100644 --- a/vendor/k8s.io/client-go/pkg/api/v1/defaults.go +++ b/vendor/k8s.io/client-go/pkg/api/v1/defaults.go @@ -120,7 +120,7 @@ func SetDefaults_Service(obj *Service) { } else if (obj.Spec.Type == ServiceTypeNodePort || obj.Spec.Type == ServiceTypeLoadBalancer) && obj.Spec.ExternalTrafficPolicy == "" { - obj.Spec.ExternalTrafficPolicy = ServiceExternalTrafficPolicyTypeGlobal + obj.Spec.ExternalTrafficPolicy = ServiceExternalTrafficPolicyTypeCluster } } func SetDefaults_Pod(obj *Pod) { diff --git a/vendor/k8s.io/client-go/pkg/api/v1/generated.pb.go b/vendor/k8s.io/client-go/pkg/api/v1/generated.pb.go index 839a9221..13804ea9 100644 --- a/vendor/k8s.io/client-go/pkg/api/v1/generated.pb.go +++ b/vendor/k8s.io/client-go/pkg/api/v1/generated.pb.go @@ -93,6 +93,7 @@ limitations under the License. LoadBalancerIngress LoadBalancerStatus LocalObjectReference + LocalVolumeSource NFSVolumeSource Namespace NamespaceList @@ -183,6 +184,8 @@ limitations under the License. ServiceProxyOptions ServiceSpec ServiceStatus + StorageOSPersistentVolumeSource + StorageOSVolumeSource Sysctl TCPSocketAction Taint @@ -206,9 +209,10 @@ import k8s_io_apimachinery_pkg_runtime "k8s.io/apimachinery/pkg/runtime" import k8s_io_apimachinery_pkg_types "k8s.io/apimachinery/pkg/types" +import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + import strings "strings" import reflect "reflect" -import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" import io "io" @@ -503,430 +507,446 @@ func (m *LocalObjectReference) Reset() { *m = LocalObjectRefe func (*LocalObjectReference) ProtoMessage() {} func (*LocalObjectReference) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{67} } +func (m *LocalVolumeSource) Reset() { *m = LocalVolumeSource{} } +func (*LocalVolumeSource) ProtoMessage() {} +func (*LocalVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{68} } + func (m *NFSVolumeSource) Reset() { *m = NFSVolumeSource{} } func (*NFSVolumeSource) ProtoMessage() {} -func (*NFSVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{68} } +func (*NFSVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{69} } func (m *Namespace) Reset() { *m = Namespace{} } func (*Namespace) ProtoMessage() {} -func (*Namespace) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{69} } +func (*Namespace) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{70} } func (m *NamespaceList) Reset() { *m = NamespaceList{} } func (*NamespaceList) ProtoMessage() {} -func (*NamespaceList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{70} } +func (*NamespaceList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{71} } func (m *NamespaceSpec) Reset() { *m = NamespaceSpec{} } func (*NamespaceSpec) ProtoMessage() {} -func (*NamespaceSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{71} } +func (*NamespaceSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{72} } func (m *NamespaceStatus) Reset() { *m = NamespaceStatus{} } func (*NamespaceStatus) ProtoMessage() {} -func (*NamespaceStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{72} } +func (*NamespaceStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{73} } func (m *Node) Reset() { *m = Node{} } func (*Node) ProtoMessage() {} -func (*Node) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{73} } +func (*Node) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{74} } func (m *NodeAddress) Reset() { *m = NodeAddress{} } func (*NodeAddress) ProtoMessage() {} -func (*NodeAddress) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{74} } +func (*NodeAddress) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{75} } func (m *NodeAffinity) Reset() { *m = NodeAffinity{} } func (*NodeAffinity) ProtoMessage() {} -func (*NodeAffinity) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{75} } +func (*NodeAffinity) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{76} } func (m *NodeCondition) Reset() { *m = NodeCondition{} } func (*NodeCondition) ProtoMessage() {} -func (*NodeCondition) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{76} } +func (*NodeCondition) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{77} } func (m *NodeDaemonEndpoints) Reset() { *m = NodeDaemonEndpoints{} } func (*NodeDaemonEndpoints) ProtoMessage() {} -func (*NodeDaemonEndpoints) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{77} } +func (*NodeDaemonEndpoints) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{78} } func (m *NodeList) Reset() { *m = NodeList{} } func (*NodeList) ProtoMessage() {} -func (*NodeList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{78} } +func (*NodeList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{79} } func (m *NodeProxyOptions) Reset() { *m = NodeProxyOptions{} } func (*NodeProxyOptions) ProtoMessage() {} -func (*NodeProxyOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{79} } +func (*NodeProxyOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{80} } func (m *NodeResources) Reset() { *m = NodeResources{} } func (*NodeResources) ProtoMessage() {} -func (*NodeResources) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{80} } +func (*NodeResources) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{81} } func (m *NodeSelector) Reset() { *m = NodeSelector{} } func (*NodeSelector) ProtoMessage() {} -func (*NodeSelector) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{81} } +func (*NodeSelector) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{82} } func (m *NodeSelectorRequirement) Reset() { *m = NodeSelectorRequirement{} } func (*NodeSelectorRequirement) ProtoMessage() {} func (*NodeSelectorRequirement) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{82} + return fileDescriptorGenerated, []int{83} } func (m *NodeSelectorTerm) Reset() { *m = NodeSelectorTerm{} } func (*NodeSelectorTerm) ProtoMessage() {} -func (*NodeSelectorTerm) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{83} } +func (*NodeSelectorTerm) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{84} } func (m *NodeSpec) Reset() { *m = NodeSpec{} } func (*NodeSpec) ProtoMessage() {} -func (*NodeSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{84} } +func (*NodeSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{85} } func (m *NodeStatus) Reset() { *m = NodeStatus{} } func (*NodeStatus) ProtoMessage() {} -func (*NodeStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{85} } +func (*NodeStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{86} } func (m *NodeSystemInfo) Reset() { *m = NodeSystemInfo{} } func (*NodeSystemInfo) ProtoMessage() {} -func (*NodeSystemInfo) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{86} } +func (*NodeSystemInfo) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{87} } func (m *ObjectFieldSelector) Reset() { *m = ObjectFieldSelector{} } func (*ObjectFieldSelector) ProtoMessage() {} -func (*ObjectFieldSelector) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{87} } +func (*ObjectFieldSelector) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{88} } func (m *ObjectMeta) Reset() { *m = ObjectMeta{} } func (*ObjectMeta) ProtoMessage() {} -func (*ObjectMeta) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{88} } +func (*ObjectMeta) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{89} } func (m *ObjectReference) Reset() { *m = ObjectReference{} } func (*ObjectReference) ProtoMessage() {} -func (*ObjectReference) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{89} } +func (*ObjectReference) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{90} } func (m *PersistentVolume) Reset() { *m = PersistentVolume{} } func (*PersistentVolume) ProtoMessage() {} -func (*PersistentVolume) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{90} } +func (*PersistentVolume) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{91} } func (m *PersistentVolumeClaim) Reset() { *m = PersistentVolumeClaim{} } func (*PersistentVolumeClaim) ProtoMessage() {} -func (*PersistentVolumeClaim) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{91} } +func (*PersistentVolumeClaim) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{92} } func (m *PersistentVolumeClaimList) Reset() { *m = PersistentVolumeClaimList{} } func (*PersistentVolumeClaimList) ProtoMessage() {} func (*PersistentVolumeClaimList) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{92} + return fileDescriptorGenerated, []int{93} } func (m *PersistentVolumeClaimSpec) Reset() { *m = PersistentVolumeClaimSpec{} } func (*PersistentVolumeClaimSpec) ProtoMessage() {} func (*PersistentVolumeClaimSpec) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{93} + return fileDescriptorGenerated, []int{94} } func (m *PersistentVolumeClaimStatus) Reset() { *m = PersistentVolumeClaimStatus{} } func (*PersistentVolumeClaimStatus) ProtoMessage() {} func (*PersistentVolumeClaimStatus) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{94} + return fileDescriptorGenerated, []int{95} } func (m *PersistentVolumeClaimVolumeSource) Reset() { *m = PersistentVolumeClaimVolumeSource{} } func (*PersistentVolumeClaimVolumeSource) ProtoMessage() {} func (*PersistentVolumeClaimVolumeSource) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{95} + return fileDescriptorGenerated, []int{96} } func (m *PersistentVolumeList) Reset() { *m = PersistentVolumeList{} } func (*PersistentVolumeList) ProtoMessage() {} -func (*PersistentVolumeList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{96} } +func (*PersistentVolumeList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{97} } func (m *PersistentVolumeSource) Reset() { *m = PersistentVolumeSource{} } func (*PersistentVolumeSource) ProtoMessage() {} -func (*PersistentVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{97} } +func (*PersistentVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{98} } func (m *PersistentVolumeSpec) Reset() { *m = PersistentVolumeSpec{} } func (*PersistentVolumeSpec) ProtoMessage() {} -func (*PersistentVolumeSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{98} } +func (*PersistentVolumeSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{99} } -func (m *PersistentVolumeStatus) Reset() { *m = PersistentVolumeStatus{} } -func (*PersistentVolumeStatus) ProtoMessage() {} -func (*PersistentVolumeStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{99} } +func (m *PersistentVolumeStatus) Reset() { *m = PersistentVolumeStatus{} } +func (*PersistentVolumeStatus) ProtoMessage() {} +func (*PersistentVolumeStatus) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{100} +} func (m *PhotonPersistentDiskVolumeSource) Reset() { *m = PhotonPersistentDiskVolumeSource{} } func (*PhotonPersistentDiskVolumeSource) ProtoMessage() {} func (*PhotonPersistentDiskVolumeSource) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{100} + return fileDescriptorGenerated, []int{101} } func (m *Pod) Reset() { *m = Pod{} } func (*Pod) ProtoMessage() {} -func (*Pod) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{101} } +func (*Pod) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{102} } func (m *PodAffinity) Reset() { *m = PodAffinity{} } func (*PodAffinity) ProtoMessage() {} -func (*PodAffinity) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{102} } +func (*PodAffinity) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{103} } func (m *PodAffinityTerm) Reset() { *m = PodAffinityTerm{} } func (*PodAffinityTerm) ProtoMessage() {} -func (*PodAffinityTerm) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{103} } +func (*PodAffinityTerm) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{104} } func (m *PodAntiAffinity) Reset() { *m = PodAntiAffinity{} } func (*PodAntiAffinity) ProtoMessage() {} -func (*PodAntiAffinity) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{104} } +func (*PodAntiAffinity) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{105} } func (m *PodAttachOptions) Reset() { *m = PodAttachOptions{} } func (*PodAttachOptions) ProtoMessage() {} -func (*PodAttachOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{105} } +func (*PodAttachOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{106} } func (m *PodCondition) Reset() { *m = PodCondition{} } func (*PodCondition) ProtoMessage() {} -func (*PodCondition) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{106} } +func (*PodCondition) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{107} } func (m *PodExecOptions) Reset() { *m = PodExecOptions{} } func (*PodExecOptions) ProtoMessage() {} -func (*PodExecOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{107} } +func (*PodExecOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{108} } func (m *PodList) Reset() { *m = PodList{} } func (*PodList) ProtoMessage() {} -func (*PodList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{108} } +func (*PodList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{109} } func (m *PodLogOptions) Reset() { *m = PodLogOptions{} } func (*PodLogOptions) ProtoMessage() {} -func (*PodLogOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{109} } +func (*PodLogOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{110} } func (m *PodPortForwardOptions) Reset() { *m = PodPortForwardOptions{} } func (*PodPortForwardOptions) ProtoMessage() {} -func (*PodPortForwardOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{110} } +func (*PodPortForwardOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{111} } func (m *PodProxyOptions) Reset() { *m = PodProxyOptions{} } func (*PodProxyOptions) ProtoMessage() {} -func (*PodProxyOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{111} } +func (*PodProxyOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{112} } func (m *PodSecurityContext) Reset() { *m = PodSecurityContext{} } func (*PodSecurityContext) ProtoMessage() {} -func (*PodSecurityContext) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{112} } +func (*PodSecurityContext) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{113} } func (m *PodSignature) Reset() { *m = PodSignature{} } func (*PodSignature) ProtoMessage() {} -func (*PodSignature) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{113} } +func (*PodSignature) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{114} } func (m *PodSpec) Reset() { *m = PodSpec{} } func (*PodSpec) ProtoMessage() {} -func (*PodSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{114} } +func (*PodSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{115} } func (m *PodStatus) Reset() { *m = PodStatus{} } func (*PodStatus) ProtoMessage() {} -func (*PodStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{115} } +func (*PodStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{116} } func (m *PodStatusResult) Reset() { *m = PodStatusResult{} } func (*PodStatusResult) ProtoMessage() {} -func (*PodStatusResult) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{116} } +func (*PodStatusResult) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{117} } func (m *PodTemplate) Reset() { *m = PodTemplate{} } func (*PodTemplate) ProtoMessage() {} -func (*PodTemplate) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{117} } +func (*PodTemplate) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{118} } func (m *PodTemplateList) Reset() { *m = PodTemplateList{} } func (*PodTemplateList) ProtoMessage() {} -func (*PodTemplateList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{118} } +func (*PodTemplateList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{119} } func (m *PodTemplateSpec) Reset() { *m = PodTemplateSpec{} } func (*PodTemplateSpec) ProtoMessage() {} -func (*PodTemplateSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{119} } +func (*PodTemplateSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{120} } func (m *PortworxVolumeSource) Reset() { *m = PortworxVolumeSource{} } func (*PortworxVolumeSource) ProtoMessage() {} -func (*PortworxVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{120} } +func (*PortworxVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{121} } func (m *Preconditions) Reset() { *m = Preconditions{} } func (*Preconditions) ProtoMessage() {} -func (*Preconditions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{121} } +func (*Preconditions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{122} } func (m *PreferAvoidPodsEntry) Reset() { *m = PreferAvoidPodsEntry{} } func (*PreferAvoidPodsEntry) ProtoMessage() {} -func (*PreferAvoidPodsEntry) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{122} } +func (*PreferAvoidPodsEntry) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{123} } func (m *PreferredSchedulingTerm) Reset() { *m = PreferredSchedulingTerm{} } func (*PreferredSchedulingTerm) ProtoMessage() {} func (*PreferredSchedulingTerm) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{123} + return fileDescriptorGenerated, []int{124} } func (m *Probe) Reset() { *m = Probe{} } func (*Probe) ProtoMessage() {} -func (*Probe) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{124} } +func (*Probe) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{125} } func (m *ProjectedVolumeSource) Reset() { *m = ProjectedVolumeSource{} } func (*ProjectedVolumeSource) ProtoMessage() {} -func (*ProjectedVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{125} } +func (*ProjectedVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{126} } func (m *QuobyteVolumeSource) Reset() { *m = QuobyteVolumeSource{} } func (*QuobyteVolumeSource) ProtoMessage() {} -func (*QuobyteVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{126} } +func (*QuobyteVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{127} } func (m *RBDVolumeSource) Reset() { *m = RBDVolumeSource{} } func (*RBDVolumeSource) ProtoMessage() {} -func (*RBDVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{127} } +func (*RBDVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{128} } func (m *RangeAllocation) Reset() { *m = RangeAllocation{} } func (*RangeAllocation) ProtoMessage() {} -func (*RangeAllocation) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{128} } +func (*RangeAllocation) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{129} } func (m *ReplicationController) Reset() { *m = ReplicationController{} } func (*ReplicationController) ProtoMessage() {} -func (*ReplicationController) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{129} } +func (*ReplicationController) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{130} } func (m *ReplicationControllerCondition) Reset() { *m = ReplicationControllerCondition{} } func (*ReplicationControllerCondition) ProtoMessage() {} func (*ReplicationControllerCondition) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{130} + return fileDescriptorGenerated, []int{131} } func (m *ReplicationControllerList) Reset() { *m = ReplicationControllerList{} } func (*ReplicationControllerList) ProtoMessage() {} func (*ReplicationControllerList) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{131} + return fileDescriptorGenerated, []int{132} } func (m *ReplicationControllerSpec) Reset() { *m = ReplicationControllerSpec{} } func (*ReplicationControllerSpec) ProtoMessage() {} func (*ReplicationControllerSpec) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{132} + return fileDescriptorGenerated, []int{133} } func (m *ReplicationControllerStatus) Reset() { *m = ReplicationControllerStatus{} } func (*ReplicationControllerStatus) ProtoMessage() {} func (*ReplicationControllerStatus) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{133} + return fileDescriptorGenerated, []int{134} } func (m *ResourceFieldSelector) Reset() { *m = ResourceFieldSelector{} } func (*ResourceFieldSelector) ProtoMessage() {} -func (*ResourceFieldSelector) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{134} } +func (*ResourceFieldSelector) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{135} } func (m *ResourceQuota) Reset() { *m = ResourceQuota{} } func (*ResourceQuota) ProtoMessage() {} -func (*ResourceQuota) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{135} } +func (*ResourceQuota) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{136} } func (m *ResourceQuotaList) Reset() { *m = ResourceQuotaList{} } func (*ResourceQuotaList) ProtoMessage() {} -func (*ResourceQuotaList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{136} } +func (*ResourceQuotaList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{137} } func (m *ResourceQuotaSpec) Reset() { *m = ResourceQuotaSpec{} } func (*ResourceQuotaSpec) ProtoMessage() {} -func (*ResourceQuotaSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{137} } +func (*ResourceQuotaSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{138} } func (m *ResourceQuotaStatus) Reset() { *m = ResourceQuotaStatus{} } func (*ResourceQuotaStatus) ProtoMessage() {} -func (*ResourceQuotaStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{138} } +func (*ResourceQuotaStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{139} } func (m *ResourceRequirements) Reset() { *m = ResourceRequirements{} } func (*ResourceRequirements) ProtoMessage() {} -func (*ResourceRequirements) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{139} } +func (*ResourceRequirements) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{140} } func (m *SELinuxOptions) Reset() { *m = SELinuxOptions{} } func (*SELinuxOptions) ProtoMessage() {} -func (*SELinuxOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{140} } +func (*SELinuxOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{141} } func (m *ScaleIOVolumeSource) Reset() { *m = ScaleIOVolumeSource{} } func (*ScaleIOVolumeSource) ProtoMessage() {} -func (*ScaleIOVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{141} } +func (*ScaleIOVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{142} } func (m *Secret) Reset() { *m = Secret{} } func (*Secret) ProtoMessage() {} -func (*Secret) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{142} } +func (*Secret) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{143} } func (m *SecretEnvSource) Reset() { *m = SecretEnvSource{} } func (*SecretEnvSource) ProtoMessage() {} -func (*SecretEnvSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{143} } +func (*SecretEnvSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{144} } func (m *SecretKeySelector) Reset() { *m = SecretKeySelector{} } func (*SecretKeySelector) ProtoMessage() {} -func (*SecretKeySelector) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{144} } +func (*SecretKeySelector) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{145} } func (m *SecretList) Reset() { *m = SecretList{} } func (*SecretList) ProtoMessage() {} -func (*SecretList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{145} } +func (*SecretList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{146} } func (m *SecretProjection) Reset() { *m = SecretProjection{} } func (*SecretProjection) ProtoMessage() {} -func (*SecretProjection) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{146} } +func (*SecretProjection) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{147} } func (m *SecretVolumeSource) Reset() { *m = SecretVolumeSource{} } func (*SecretVolumeSource) ProtoMessage() {} -func (*SecretVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{147} } +func (*SecretVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{148} } func (m *SecurityContext) Reset() { *m = SecurityContext{} } func (*SecurityContext) ProtoMessage() {} -func (*SecurityContext) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{148} } +func (*SecurityContext) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{149} } func (m *SerializedReference) Reset() { *m = SerializedReference{} } func (*SerializedReference) ProtoMessage() {} -func (*SerializedReference) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{149} } +func (*SerializedReference) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{150} } func (m *Service) Reset() { *m = Service{} } func (*Service) ProtoMessage() {} -func (*Service) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{150} } +func (*Service) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{151} } func (m *ServiceAccount) Reset() { *m = ServiceAccount{} } func (*ServiceAccount) ProtoMessage() {} -func (*ServiceAccount) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{151} } +func (*ServiceAccount) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{152} } func (m *ServiceAccountList) Reset() { *m = ServiceAccountList{} } func (*ServiceAccountList) ProtoMessage() {} -func (*ServiceAccountList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{152} } +func (*ServiceAccountList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{153} } func (m *ServiceList) Reset() { *m = ServiceList{} } func (*ServiceList) ProtoMessage() {} -func (*ServiceList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{153} } +func (*ServiceList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{154} } func (m *ServicePort) Reset() { *m = ServicePort{} } func (*ServicePort) ProtoMessage() {} -func (*ServicePort) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{154} } +func (*ServicePort) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{155} } func (m *ServiceProxyOptions) Reset() { *m = ServiceProxyOptions{} } func (*ServiceProxyOptions) ProtoMessage() {} -func (*ServiceProxyOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{155} } +func (*ServiceProxyOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{156} } func (m *ServiceSpec) Reset() { *m = ServiceSpec{} } func (*ServiceSpec) ProtoMessage() {} -func (*ServiceSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{156} } +func (*ServiceSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{157} } func (m *ServiceStatus) Reset() { *m = ServiceStatus{} } func (*ServiceStatus) ProtoMessage() {} -func (*ServiceStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{157} } +func (*ServiceStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{158} } + +func (m *StorageOSPersistentVolumeSource) Reset() { *m = StorageOSPersistentVolumeSource{} } +func (*StorageOSPersistentVolumeSource) ProtoMessage() {} +func (*StorageOSPersistentVolumeSource) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{159} +} + +func (m *StorageOSVolumeSource) Reset() { *m = StorageOSVolumeSource{} } +func (*StorageOSVolumeSource) ProtoMessage() {} +func (*StorageOSVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{160} } func (m *Sysctl) Reset() { *m = Sysctl{} } func (*Sysctl) ProtoMessage() {} -func (*Sysctl) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{158} } +func (*Sysctl) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{161} } func (m *TCPSocketAction) Reset() { *m = TCPSocketAction{} } func (*TCPSocketAction) ProtoMessage() {} -func (*TCPSocketAction) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{159} } +func (*TCPSocketAction) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{162} } func (m *Taint) Reset() { *m = Taint{} } func (*Taint) ProtoMessage() {} -func (*Taint) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{160} } +func (*Taint) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{163} } func (m *Toleration) Reset() { *m = Toleration{} } func (*Toleration) ProtoMessage() {} -func (*Toleration) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{161} } +func (*Toleration) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{164} } func (m *Volume) Reset() { *m = Volume{} } func (*Volume) ProtoMessage() {} -func (*Volume) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{162} } +func (*Volume) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{165} } func (m *VolumeMount) Reset() { *m = VolumeMount{} } func (*VolumeMount) ProtoMessage() {} -func (*VolumeMount) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{163} } +func (*VolumeMount) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{166} } func (m *VolumeProjection) Reset() { *m = VolumeProjection{} } func (*VolumeProjection) ProtoMessage() {} -func (*VolumeProjection) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{164} } +func (*VolumeProjection) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{167} } func (m *VolumeSource) Reset() { *m = VolumeSource{} } func (*VolumeSource) ProtoMessage() {} -func (*VolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{165} } +func (*VolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{168} } func (m *VsphereVirtualDiskVolumeSource) Reset() { *m = VsphereVirtualDiskVolumeSource{} } func (*VsphereVirtualDiskVolumeSource) ProtoMessage() {} func (*VsphereVirtualDiskVolumeSource) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{166} + return fileDescriptorGenerated, []int{169} } func (m *WeightedPodAffinityTerm) Reset() { *m = WeightedPodAffinityTerm{} } func (*WeightedPodAffinityTerm) ProtoMessage() {} func (*WeightedPodAffinityTerm) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{167} + return fileDescriptorGenerated, []int{170} } func init() { @@ -998,6 +1018,7 @@ func init() { proto.RegisterType((*LoadBalancerIngress)(nil), "k8s.io.client-go.pkg.api.v1.LoadBalancerIngress") proto.RegisterType((*LoadBalancerStatus)(nil), "k8s.io.client-go.pkg.api.v1.LoadBalancerStatus") proto.RegisterType((*LocalObjectReference)(nil), "k8s.io.client-go.pkg.api.v1.LocalObjectReference") + proto.RegisterType((*LocalVolumeSource)(nil), "k8s.io.client-go.pkg.api.v1.LocalVolumeSource") proto.RegisterType((*NFSVolumeSource)(nil), "k8s.io.client-go.pkg.api.v1.NFSVolumeSource") proto.RegisterType((*Namespace)(nil), "k8s.io.client-go.pkg.api.v1.Namespace") proto.RegisterType((*NamespaceList)(nil), "k8s.io.client-go.pkg.api.v1.NamespaceList") @@ -1088,6 +1109,8 @@ func init() { proto.RegisterType((*ServiceProxyOptions)(nil), "k8s.io.client-go.pkg.api.v1.ServiceProxyOptions") proto.RegisterType((*ServiceSpec)(nil), "k8s.io.client-go.pkg.api.v1.ServiceSpec") proto.RegisterType((*ServiceStatus)(nil), "k8s.io.client-go.pkg.api.v1.ServiceStatus") + proto.RegisterType((*StorageOSPersistentVolumeSource)(nil), "k8s.io.client-go.pkg.api.v1.StorageOSPersistentVolumeSource") + proto.RegisterType((*StorageOSVolumeSource)(nil), "k8s.io.client-go.pkg.api.v1.StorageOSVolumeSource") proto.RegisterType((*Sysctl)(nil), "k8s.io.client-go.pkg.api.v1.Sysctl") proto.RegisterType((*TCPSocketAction)(nil), "k8s.io.client-go.pkg.api.v1.TCPSocketAction") proto.RegisterType((*Taint)(nil), "k8s.io.client-go.pkg.api.v1.Taint") @@ -1641,10 +1664,15 @@ func (m *ConfigMap) MarshalTo(dAtA []byte) (int, error) { } i += n9 if len(m.Data) > 0 { + keysForData := make([]string, 0, len(m.Data)) for k := range m.Data { + keysForData = append(keysForData, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForData) + for _, k := range keysForData { dAtA[i] = 0x12 i++ - v := m.Data[k] + v := m.Data[string(k)] mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v))) i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) dAtA[i] = 0xa @@ -2563,6 +2591,14 @@ func (m *EmptyDirVolumeSource) MarshalTo(dAtA []byte) (int, error) { i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.Medium))) i += copy(dAtA[i:], m.Medium) + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.SizeLimit.Size())) + n31, err := m.SizeLimit.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n31 return i, nil } @@ -2589,11 +2625,11 @@ func (m *EndpointAddress) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.TargetRef.Size())) - n31, err := m.TargetRef.MarshalTo(dAtA[i:]) + n32, err := m.TargetRef.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n31 + i += n32 } dAtA[i] = 0x1a i++ @@ -2709,11 +2745,11 @@ func (m *Endpoints) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n32, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + n33, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n32 + i += n33 if len(m.Subsets) > 0 { for _, msg := range m.Subsets { dAtA[i] = 0x12 @@ -2747,11 +2783,11 @@ func (m *EndpointsList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n33, err := m.ListMeta.MarshalTo(dAtA[i:]) + n34, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n33 + i += n34 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -2790,21 +2826,21 @@ func (m *EnvFromSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ConfigMapRef.Size())) - n34, err := m.ConfigMapRef.MarshalTo(dAtA[i:]) + n35, err := m.ConfigMapRef.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n34 + i += n35 } if m.SecretRef != nil { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.SecretRef.Size())) - n35, err := m.SecretRef.MarshalTo(dAtA[i:]) + n36, err := m.SecretRef.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n35 + i += n36 } return i, nil } @@ -2836,11 +2872,11 @@ func (m *EnvVar) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ValueFrom.Size())) - n36, err := m.ValueFrom.MarshalTo(dAtA[i:]) + n37, err := m.ValueFrom.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n36 + i += n37 } return i, nil } @@ -2864,42 +2900,42 @@ func (m *EnvVarSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.FieldRef.Size())) - n37, err := m.FieldRef.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n37 - } - if m.ResourceFieldRef != nil { - dAtA[i] = 0x12 - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.ResourceFieldRef.Size())) - n38, err := m.ResourceFieldRef.MarshalTo(dAtA[i:]) + n38, err := m.FieldRef.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n38 } - if m.ConfigMapKeyRef != nil { - dAtA[i] = 0x1a + if m.ResourceFieldRef != nil { + dAtA[i] = 0x12 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.ConfigMapKeyRef.Size())) - n39, err := m.ConfigMapKeyRef.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.ResourceFieldRef.Size())) + n39, err := m.ResourceFieldRef.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n39 } - if m.SecretKeyRef != nil { - dAtA[i] = 0x22 + if m.ConfigMapKeyRef != nil { + dAtA[i] = 0x1a i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.SecretKeyRef.Size())) - n40, err := m.SecretKeyRef.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.ConfigMapKeyRef.Size())) + n40, err := m.ConfigMapKeyRef.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n40 } + if m.SecretKeyRef != nil { + dAtA[i] = 0x22 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.SecretKeyRef.Size())) + n41, err := m.SecretKeyRef.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n41 + } return i, nil } @@ -2921,19 +2957,19 @@ func (m *Event) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n41, err := m.ObjectMeta.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n41 - dAtA[i] = 0x12 - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.InvolvedObject.Size())) - n42, err := m.InvolvedObject.MarshalTo(dAtA[i:]) + n42, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n42 + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.InvolvedObject.Size())) + n43, err := m.InvolvedObject.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n43 dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.Reason))) @@ -2945,27 +2981,27 @@ func (m *Event) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x2a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Source.Size())) - n43, err := m.Source.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n43 - dAtA[i] = 0x32 - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.FirstTimestamp.Size())) - n44, err := m.FirstTimestamp.MarshalTo(dAtA[i:]) + n44, err := m.Source.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n44 - dAtA[i] = 0x3a + dAtA[i] = 0x32 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.LastTimestamp.Size())) - n45, err := m.LastTimestamp.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.FirstTimestamp.Size())) + n45, err := m.FirstTimestamp.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n45 + dAtA[i] = 0x3a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.LastTimestamp.Size())) + n46, err := m.LastTimestamp.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n46 dAtA[i] = 0x40 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Count)) @@ -2994,11 +3030,11 @@ func (m *EventList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n46, err := m.ListMeta.MarshalTo(dAtA[i:]) + n47, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n46 + i += n47 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -3150,11 +3186,11 @@ func (m *FlexVolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.SecretRef.Size())) - n47, err := m.SecretRef.MarshalTo(dAtA[i:]) + n48, err := m.SecretRef.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n47 + i += n48 } dAtA[i] = 0x20 i++ @@ -3165,10 +3201,15 @@ func (m *FlexVolumeSource) MarshalTo(dAtA []byte) (int, error) { } i++ if len(m.Options) > 0 { + keysForOptions := make([]string, 0, len(m.Options)) for k := range m.Options { + keysForOptions = append(keysForOptions, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForOptions) + for _, k := range keysForOptions { dAtA[i] = 0x2a i++ - v := m.Options[k] + v := m.Options[string(k)] mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v))) i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) dAtA[i] = 0xa @@ -3333,11 +3374,11 @@ func (m *HTTPGetAction) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Port.Size())) - n48, err := m.Port.MarshalTo(dAtA[i:]) + n49, err := m.Port.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n48 + i += n49 dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.Host))) @@ -3406,32 +3447,32 @@ func (m *Handler) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Exec.Size())) - n49, err := m.Exec.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n49 - } - if m.HTTPGet != nil { - dAtA[i] = 0x12 - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.HTTPGet.Size())) - n50, err := m.HTTPGet.MarshalTo(dAtA[i:]) + n50, err := m.Exec.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n50 } - if m.TCPSocket != nil { - dAtA[i] = 0x1a + if m.HTTPGet != nil { + dAtA[i] = 0x12 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.TCPSocket.Size())) - n51, err := m.TCPSocket.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.HTTPGet.Size())) + n51, err := m.HTTPGet.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n51 } + if m.TCPSocket != nil { + dAtA[i] = 0x1a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.TCPSocket.Size())) + n52, err := m.TCPSocket.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n52 + } return i, nil } @@ -3563,11 +3604,11 @@ func (m *ISCSIVolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x52 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.SecretRef.Size())) - n52, err := m.SecretRef.MarshalTo(dAtA[i:]) + n53, err := m.SecretRef.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n52 + i += n53 } dAtA[i] = 0x58 i++ @@ -3630,21 +3671,21 @@ func (m *Lifecycle) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.PostStart.Size())) - n53, err := m.PostStart.MarshalTo(dAtA[i:]) + n54, err := m.PostStart.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n53 + i += n54 } if m.PreStop != nil { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.PreStop.Size())) - n54, err := m.PreStop.MarshalTo(dAtA[i:]) + n55, err := m.PreStop.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n54 + i += n55 } return i, nil } @@ -3667,19 +3708,19 @@ func (m *LimitRange) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n55, err := m.ObjectMeta.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n55 - dAtA[i] = 0x12 - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) - n56, err := m.Spec.MarshalTo(dAtA[i:]) + n56, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n56 + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) + n57, err := m.Spec.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n57 return i, nil } @@ -3703,36 +3744,15 @@ func (m *LimitRangeItem) MarshalTo(dAtA []byte) (int, error) { i = encodeVarintGenerated(dAtA, i, uint64(len(m.Type))) i += copy(dAtA[i:], m.Type) if len(m.Max) > 0 { + keysForMax := make([]string, 0, len(m.Max)) for k := range m.Max { - dAtA[i] = 0x12 - i++ - v := m.Max[k] - msgSize := 0 - if (&v) != nil { - msgSize = (&v).Size() - msgSize += 1 + sovGenerated(uint64(msgSize)) - } - mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + msgSize - i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) - dAtA[i] = 0xa - i++ - i = encodeVarintGenerated(dAtA, i, uint64(len(k))) - i += copy(dAtA[i:], k) - dAtA[i] = 0x12 - i++ - i = encodeVarintGenerated(dAtA, i, uint64((&v).Size())) - n57, err := (&v).MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n57 + keysForMax = append(keysForMax, string(k)) } - } - if len(m.Min) > 0 { - for k := range m.Min { - dAtA[i] = 0x1a + github_com_gogo_protobuf_sortkeys.Strings(keysForMax) + for _, k := range keysForMax { + dAtA[i] = 0x12 i++ - v := m.Min[k] + v := m.Max[ResourceName(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -3754,11 +3774,16 @@ func (m *LimitRangeItem) MarshalTo(dAtA []byte) (int, error) { i += n58 } } - if len(m.Default) > 0 { - for k := range m.Default { - dAtA[i] = 0x22 + if len(m.Min) > 0 { + keysForMin := make([]string, 0, len(m.Min)) + for k := range m.Min { + keysForMin = append(keysForMin, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForMin) + for _, k := range keysForMin { + dAtA[i] = 0x1a i++ - v := m.Default[k] + v := m.Min[ResourceName(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -3780,11 +3805,16 @@ func (m *LimitRangeItem) MarshalTo(dAtA []byte) (int, error) { i += n59 } } - if len(m.DefaultRequest) > 0 { - for k := range m.DefaultRequest { - dAtA[i] = 0x2a + if len(m.Default) > 0 { + keysForDefault := make([]string, 0, len(m.Default)) + for k := range m.Default { + keysForDefault = append(keysForDefault, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForDefault) + for _, k := range keysForDefault { + dAtA[i] = 0x22 i++ - v := m.DefaultRequest[k] + v := m.Default[ResourceName(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -3806,11 +3836,16 @@ func (m *LimitRangeItem) MarshalTo(dAtA []byte) (int, error) { i += n60 } } - if len(m.MaxLimitRequestRatio) > 0 { - for k := range m.MaxLimitRequestRatio { - dAtA[i] = 0x32 + if len(m.DefaultRequest) > 0 { + keysForDefaultRequest := make([]string, 0, len(m.DefaultRequest)) + for k := range m.DefaultRequest { + keysForDefaultRequest = append(keysForDefaultRequest, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForDefaultRequest) + for _, k := range keysForDefaultRequest { + dAtA[i] = 0x2a i++ - v := m.MaxLimitRequestRatio[k] + v := m.DefaultRequest[ResourceName(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -3832,6 +3867,37 @@ func (m *LimitRangeItem) MarshalTo(dAtA []byte) (int, error) { i += n61 } } + if len(m.MaxLimitRequestRatio) > 0 { + keysForMaxLimitRequestRatio := make([]string, 0, len(m.MaxLimitRequestRatio)) + for k := range m.MaxLimitRequestRatio { + keysForMaxLimitRequestRatio = append(keysForMaxLimitRequestRatio, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForMaxLimitRequestRatio) + for _, k := range keysForMaxLimitRequestRatio { + dAtA[i] = 0x32 + i++ + v := m.MaxLimitRequestRatio[ResourceName(k)] + msgSize := 0 + if (&v) != nil { + msgSize = (&v).Size() + msgSize += 1 + sovGenerated(uint64(msgSize)) + } + mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + msgSize + i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(k))) + i += copy(dAtA[i:], k) + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64((&v).Size())) + n62, err := (&v).MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n62 + } + } return i, nil } @@ -3853,11 +3919,11 @@ func (m *LimitRangeList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n62, err := m.ListMeta.MarshalTo(dAtA[i:]) + n63, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n62 + i += n63 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -3921,11 +3987,11 @@ func (m *List) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n63, err := m.ListMeta.MarshalTo(dAtA[i:]) + n64, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n63 + i += n64 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -4070,6 +4136,28 @@ func (m *LocalObjectReference) MarshalTo(dAtA []byte) (int, error) { return i, nil } +func (m *LocalVolumeSource) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *LocalVolumeSource) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.Path))) + i += copy(dAtA[i:], m.Path) + return i, nil +} + func (m *NFSVolumeSource) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -4122,27 +4210,27 @@ func (m *Namespace) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n64, err := m.ObjectMeta.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n64 - dAtA[i] = 0x12 - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) - n65, err := m.Spec.MarshalTo(dAtA[i:]) + n65, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n65 - dAtA[i] = 0x1a + dAtA[i] = 0x12 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) - n66, err := m.Status.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) + n66, err := m.Spec.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n66 + dAtA[i] = 0x1a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) + n67, err := m.Status.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n67 return i, nil } @@ -4164,11 +4252,11 @@ func (m *NamespaceList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n67, err := m.ListMeta.MarshalTo(dAtA[i:]) + n68, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n67 + i += n68 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -4257,27 +4345,27 @@ func (m *Node) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n68, err := m.ObjectMeta.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n68 - dAtA[i] = 0x12 - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) - n69, err := m.Spec.MarshalTo(dAtA[i:]) + n69, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n69 - dAtA[i] = 0x1a + dAtA[i] = 0x12 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) - n70, err := m.Status.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) + n70, err := m.Spec.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n70 + dAtA[i] = 0x1a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) + n71, err := m.Status.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n71 return i, nil } @@ -4326,11 +4414,11 @@ func (m *NodeAffinity) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.RequiredDuringSchedulingIgnoredDuringExecution.Size())) - n71, err := m.RequiredDuringSchedulingIgnoredDuringExecution.MarshalTo(dAtA[i:]) + n72, err := m.RequiredDuringSchedulingIgnoredDuringExecution.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n71 + i += n72 } if len(m.PreferredDuringSchedulingIgnoredDuringExecution) > 0 { for _, msg := range m.PreferredDuringSchedulingIgnoredDuringExecution { @@ -4373,19 +4461,19 @@ func (m *NodeCondition) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.LastHeartbeatTime.Size())) - n72, err := m.LastHeartbeatTime.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n72 - dAtA[i] = 0x22 - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.LastTransitionTime.Size())) - n73, err := m.LastTransitionTime.MarshalTo(dAtA[i:]) + n73, err := m.LastHeartbeatTime.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n73 + dAtA[i] = 0x22 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.LastTransitionTime.Size())) + n74, err := m.LastTransitionTime.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n74 dAtA[i] = 0x2a i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.Reason))) @@ -4415,11 +4503,11 @@ func (m *NodeDaemonEndpoints) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.KubeletEndpoint.Size())) - n74, err := m.KubeletEndpoint.MarshalTo(dAtA[i:]) + n75, err := m.KubeletEndpoint.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n74 + i += n75 return i, nil } @@ -4441,11 +4529,11 @@ func (m *NodeList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n75, err := m.ListMeta.MarshalTo(dAtA[i:]) + n76, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n75 + i += n76 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -4499,10 +4587,15 @@ func (m *NodeResources) MarshalTo(dAtA []byte) (int, error) { var l int _ = l if len(m.Capacity) > 0 { + keysForCapacity := make([]string, 0, len(m.Capacity)) for k := range m.Capacity { + keysForCapacity = append(keysForCapacity, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForCapacity) + for _, k := range keysForCapacity { dAtA[i] = 0xa i++ - v := m.Capacity[k] + v := m.Capacity[ResourceName(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -4517,11 +4610,11 @@ func (m *NodeResources) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64((&v).Size())) - n76, err := (&v).MarshalTo(dAtA[i:]) + n77, err := (&v).MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n76 + i += n77 } } return i, nil @@ -4694,36 +4787,15 @@ func (m *NodeStatus) MarshalTo(dAtA []byte) (int, error) { var l int _ = l if len(m.Capacity) > 0 { + keysForCapacity := make([]string, 0, len(m.Capacity)) for k := range m.Capacity { - dAtA[i] = 0xa - i++ - v := m.Capacity[k] - msgSize := 0 - if (&v) != nil { - msgSize = (&v).Size() - msgSize += 1 + sovGenerated(uint64(msgSize)) - } - mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + msgSize - i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) - dAtA[i] = 0xa - i++ - i = encodeVarintGenerated(dAtA, i, uint64(len(k))) - i += copy(dAtA[i:], k) - dAtA[i] = 0x12 - i++ - i = encodeVarintGenerated(dAtA, i, uint64((&v).Size())) - n77, err := (&v).MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n77 + keysForCapacity = append(keysForCapacity, string(k)) } - } - if len(m.Allocatable) > 0 { - for k := range m.Allocatable { - dAtA[i] = 0x12 + github_com_gogo_protobuf_sortkeys.Strings(keysForCapacity) + for _, k := range keysForCapacity { + dAtA[i] = 0xa i++ - v := m.Allocatable[k] + v := m.Capacity[ResourceName(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -4745,6 +4817,37 @@ func (m *NodeStatus) MarshalTo(dAtA []byte) (int, error) { i += n78 } } + if len(m.Allocatable) > 0 { + keysForAllocatable := make([]string, 0, len(m.Allocatable)) + for k := range m.Allocatable { + keysForAllocatable = append(keysForAllocatable, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForAllocatable) + for _, k := range keysForAllocatable { + dAtA[i] = 0x12 + i++ + v := m.Allocatable[ResourceName(k)] + msgSize := 0 + if (&v) != nil { + msgSize = (&v).Size() + msgSize += 1 + sovGenerated(uint64(msgSize)) + } + mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + msgSize + i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(k))) + i += copy(dAtA[i:], k) + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64((&v).Size())) + n79, err := (&v).MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n79 + } + } dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.Phase))) @@ -4776,19 +4879,19 @@ func (m *NodeStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x32 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.DaemonEndpoints.Size())) - n79, err := m.DaemonEndpoints.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n79 - dAtA[i] = 0x3a - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.NodeInfo.Size())) - n80, err := m.NodeInfo.MarshalTo(dAtA[i:]) + n80, err := m.DaemonEndpoints.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n80 + dAtA[i] = 0x3a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.NodeInfo.Size())) + n81, err := m.NodeInfo.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n81 if len(m.Images) > 0 { for _, msg := range m.Images { dAtA[i] = 0x42 @@ -4960,20 +5063,20 @@ func (m *ObjectMeta) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x42 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.CreationTimestamp.Size())) - n81, err := m.CreationTimestamp.MarshalTo(dAtA[i:]) + n82, err := m.CreationTimestamp.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n81 + i += n82 if m.DeletionTimestamp != nil { dAtA[i] = 0x4a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.DeletionTimestamp.Size())) - n82, err := m.DeletionTimestamp.MarshalTo(dAtA[i:]) + n83, err := m.DeletionTimestamp.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n82 + i += n83 } if m.DeletionGracePeriodSeconds != nil { dAtA[i] = 0x50 @@ -4981,10 +5084,15 @@ func (m *ObjectMeta) MarshalTo(dAtA []byte) (int, error) { i = encodeVarintGenerated(dAtA, i, uint64(*m.DeletionGracePeriodSeconds)) } if len(m.Labels) > 0 { + keysForLabels := make([]string, 0, len(m.Labels)) for k := range m.Labels { + keysForLabels = append(keysForLabels, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) + for _, k := range keysForLabels { dAtA[i] = 0x5a i++ - v := m.Labels[k] + v := m.Labels[string(k)] mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v))) i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) dAtA[i] = 0xa @@ -4998,10 +5106,15 @@ func (m *ObjectMeta) MarshalTo(dAtA []byte) (int, error) { } } if len(m.Annotations) > 0 { + keysForAnnotations := make([]string, 0, len(m.Annotations)) for k := range m.Annotations { + keysForAnnotations = append(keysForAnnotations, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForAnnotations) + for _, k := range keysForAnnotations { dAtA[i] = 0x62 i++ - v := m.Annotations[k] + v := m.Annotations[string(k)] mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v))) i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) dAtA[i] = 0xa @@ -5051,11 +5164,11 @@ func (m *ObjectMeta) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Initializers.Size())) - n83, err := m.Initializers.MarshalTo(dAtA[i:]) + n84, err := m.Initializers.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n83 + i += n84 } return i, nil } @@ -5124,27 +5237,27 @@ func (m *PersistentVolume) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n84, err := m.ObjectMeta.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n84 - dAtA[i] = 0x12 - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) - n85, err := m.Spec.MarshalTo(dAtA[i:]) + n85, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n85 - dAtA[i] = 0x1a + dAtA[i] = 0x12 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) - n86, err := m.Status.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) + n86, err := m.Spec.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n86 + dAtA[i] = 0x1a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) + n87, err := m.Status.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n87 return i, nil } @@ -5166,27 +5279,27 @@ func (m *PersistentVolumeClaim) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n87, err := m.ObjectMeta.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n87 - dAtA[i] = 0x12 - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) - n88, err := m.Spec.MarshalTo(dAtA[i:]) + n88, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n88 - dAtA[i] = 0x1a + dAtA[i] = 0x12 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) - n89, err := m.Status.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) + n89, err := m.Spec.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n89 + dAtA[i] = 0x1a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) + n90, err := m.Status.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n90 return i, nil } @@ -5208,11 +5321,11 @@ func (m *PersistentVolumeClaimList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n90, err := m.ListMeta.MarshalTo(dAtA[i:]) + n91, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n90 + i += n91 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -5261,11 +5374,11 @@ func (m *PersistentVolumeClaimSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Resources.Size())) - n91, err := m.Resources.MarshalTo(dAtA[i:]) + n92, err := m.Resources.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n91 + i += n92 dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.VolumeName))) @@ -5274,11 +5387,11 @@ func (m *PersistentVolumeClaimSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x22 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Selector.Size())) - n92, err := m.Selector.MarshalTo(dAtA[i:]) + n93, err := m.Selector.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n92 + i += n93 } if m.StorageClassName != nil { dAtA[i] = 0x2a @@ -5324,10 +5437,15 @@ func (m *PersistentVolumeClaimStatus) MarshalTo(dAtA []byte) (int, error) { } } if len(m.Capacity) > 0 { + keysForCapacity := make([]string, 0, len(m.Capacity)) for k := range m.Capacity { + keysForCapacity = append(keysForCapacity, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForCapacity) + for _, k := range keysForCapacity { dAtA[i] = 0x1a i++ - v := m.Capacity[k] + v := m.Capacity[ResourceName(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -5342,11 +5460,11 @@ func (m *PersistentVolumeClaimStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64((&v).Size())) - n93, err := (&v).MarshalTo(dAtA[i:]) + n94, err := (&v).MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n93 + i += n94 } } return i, nil @@ -5400,11 +5518,11 @@ func (m *PersistentVolumeList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n94, err := m.ListMeta.MarshalTo(dAtA[i:]) + n95, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n94 + i += n95 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -5439,163 +5557,163 @@ func (m *PersistentVolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.GCEPersistentDisk.Size())) - n95, err := m.GCEPersistentDisk.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n95 - } - if m.AWSElasticBlockStore != nil { - dAtA[i] = 0x12 - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.AWSElasticBlockStore.Size())) - n96, err := m.AWSElasticBlockStore.MarshalTo(dAtA[i:]) + n96, err := m.GCEPersistentDisk.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n96 } - if m.HostPath != nil { - dAtA[i] = 0x1a + if m.AWSElasticBlockStore != nil { + dAtA[i] = 0x12 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.HostPath.Size())) - n97, err := m.HostPath.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.AWSElasticBlockStore.Size())) + n97, err := m.AWSElasticBlockStore.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n97 } - if m.Glusterfs != nil { - dAtA[i] = 0x22 + if m.HostPath != nil { + dAtA[i] = 0x1a i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Glusterfs.Size())) - n98, err := m.Glusterfs.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.HostPath.Size())) + n98, err := m.HostPath.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n98 } - if m.NFS != nil { - dAtA[i] = 0x2a + if m.Glusterfs != nil { + dAtA[i] = 0x22 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.NFS.Size())) - n99, err := m.NFS.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.Glusterfs.Size())) + n99, err := m.Glusterfs.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n99 } - if m.RBD != nil { - dAtA[i] = 0x32 + if m.NFS != nil { + dAtA[i] = 0x2a i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.RBD.Size())) - n100, err := m.RBD.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.NFS.Size())) + n100, err := m.NFS.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n100 } - if m.ISCSI != nil { - dAtA[i] = 0x3a + if m.RBD != nil { + dAtA[i] = 0x32 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.ISCSI.Size())) - n101, err := m.ISCSI.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.RBD.Size())) + n101, err := m.RBD.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n101 } - if m.Cinder != nil { - dAtA[i] = 0x42 + if m.ISCSI != nil { + dAtA[i] = 0x3a i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Cinder.Size())) - n102, err := m.Cinder.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.ISCSI.Size())) + n102, err := m.ISCSI.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n102 } - if m.CephFS != nil { - dAtA[i] = 0x4a + if m.Cinder != nil { + dAtA[i] = 0x42 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.CephFS.Size())) - n103, err := m.CephFS.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.Cinder.Size())) + n103, err := m.Cinder.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n103 } - if m.FC != nil { - dAtA[i] = 0x52 + if m.CephFS != nil { + dAtA[i] = 0x4a i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.FC.Size())) - n104, err := m.FC.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.CephFS.Size())) + n104, err := m.CephFS.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n104 } - if m.Flocker != nil { - dAtA[i] = 0x5a + if m.FC != nil { + dAtA[i] = 0x52 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Flocker.Size())) - n105, err := m.Flocker.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.FC.Size())) + n105, err := m.FC.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n105 } - if m.FlexVolume != nil { - dAtA[i] = 0x62 + if m.Flocker != nil { + dAtA[i] = 0x5a i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.FlexVolume.Size())) - n106, err := m.FlexVolume.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.Flocker.Size())) + n106, err := m.Flocker.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n106 } - if m.AzureFile != nil { - dAtA[i] = 0x6a + if m.FlexVolume != nil { + dAtA[i] = 0x62 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.AzureFile.Size())) - n107, err := m.AzureFile.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.FlexVolume.Size())) + n107, err := m.FlexVolume.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n107 } - if m.VsphereVolume != nil { - dAtA[i] = 0x72 + if m.AzureFile != nil { + dAtA[i] = 0x6a i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.VsphereVolume.Size())) - n108, err := m.VsphereVolume.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.AzureFile.Size())) + n108, err := m.AzureFile.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n108 } - if m.Quobyte != nil { - dAtA[i] = 0x7a + if m.VsphereVolume != nil { + dAtA[i] = 0x72 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Quobyte.Size())) - n109, err := m.Quobyte.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.VsphereVolume.Size())) + n109, err := m.VsphereVolume.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n109 } + if m.Quobyte != nil { + dAtA[i] = 0x7a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Quobyte.Size())) + n110, err := m.Quobyte.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n110 + } if m.AzureDisk != nil { dAtA[i] = 0x82 i++ dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.AzureDisk.Size())) - n110, err := m.AzureDisk.MarshalTo(dAtA[i:]) + n111, err := m.AzureDisk.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n110 + i += n111 } if m.PhotonPersistentDisk != nil { dAtA[i] = 0x8a @@ -5603,11 +5721,11 @@ func (m *PersistentVolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.PhotonPersistentDisk.Size())) - n111, err := m.PhotonPersistentDisk.MarshalTo(dAtA[i:]) + n112, err := m.PhotonPersistentDisk.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n111 + i += n112 } if m.PortworxVolume != nil { dAtA[i] = 0x92 @@ -5615,11 +5733,11 @@ func (m *PersistentVolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.PortworxVolume.Size())) - n112, err := m.PortworxVolume.MarshalTo(dAtA[i:]) + n113, err := m.PortworxVolume.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n112 + i += n113 } if m.ScaleIO != nil { dAtA[i] = 0x9a @@ -5627,11 +5745,35 @@ func (m *PersistentVolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ScaleIO.Size())) - n113, err := m.ScaleIO.MarshalTo(dAtA[i:]) + n114, err := m.ScaleIO.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n113 + i += n114 + } + if m.Local != nil { + dAtA[i] = 0xa2 + i++ + dAtA[i] = 0x1 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Local.Size())) + n115, err := m.Local.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n115 + } + if m.StorageOS != nil { + dAtA[i] = 0xaa + i++ + dAtA[i] = 0x1 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.StorageOS.Size())) + n116, err := m.StorageOS.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n116 } return i, nil } @@ -5652,10 +5794,15 @@ func (m *PersistentVolumeSpec) MarshalTo(dAtA []byte) (int, error) { var l int _ = l if len(m.Capacity) > 0 { + keysForCapacity := make([]string, 0, len(m.Capacity)) for k := range m.Capacity { + keysForCapacity = append(keysForCapacity, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForCapacity) + for _, k := range keysForCapacity { dAtA[i] = 0xa i++ - v := m.Capacity[k] + v := m.Capacity[ResourceName(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -5670,21 +5817,21 @@ func (m *PersistentVolumeSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64((&v).Size())) - n114, err := (&v).MarshalTo(dAtA[i:]) + n117, err := (&v).MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n114 + i += n117 } } dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.PersistentVolumeSource.Size())) - n115, err := m.PersistentVolumeSource.MarshalTo(dAtA[i:]) + n118, err := m.PersistentVolumeSource.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n115 + i += n118 if len(m.AccessModes) > 0 { for _, s := range m.AccessModes { dAtA[i] = 0x1a @@ -5704,11 +5851,11 @@ func (m *PersistentVolumeSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x22 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ClaimRef.Size())) - n116, err := m.ClaimRef.MarshalTo(dAtA[i:]) + n119, err := m.ClaimRef.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n116 + i += n119 } dAtA[i] = 0x2a i++ @@ -5795,27 +5942,27 @@ func (m *Pod) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n117, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + n120, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n117 + i += n120 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) - n118, err := m.Spec.MarshalTo(dAtA[i:]) + n121, err := m.Spec.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n118 + i += n121 dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) - n119, err := m.Status.MarshalTo(dAtA[i:]) + n122, err := m.Status.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n119 + i += n122 return i, nil } @@ -5880,11 +6027,11 @@ func (m *PodAffinityTerm) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.LabelSelector.Size())) - n120, err := m.LabelSelector.MarshalTo(dAtA[i:]) + n123, err := m.LabelSelector.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n120 + i += n123 } if len(m.Namespaces) > 0 { for _, s := range m.Namespaces { @@ -6030,19 +6177,19 @@ func (m *PodCondition) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.LastProbeTime.Size())) - n121, err := m.LastProbeTime.MarshalTo(dAtA[i:]) + n124, err := m.LastProbeTime.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n121 + i += n124 dAtA[i] = 0x22 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.LastTransitionTime.Size())) - n122, err := m.LastTransitionTime.MarshalTo(dAtA[i:]) + n125, err := m.LastTransitionTime.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n122 + i += n125 dAtA[i] = 0x2a i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.Reason))) @@ -6141,11 +6288,11 @@ func (m *PodList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n123, err := m.ListMeta.MarshalTo(dAtA[i:]) + n126, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n123 + i += n126 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -6205,11 +6352,11 @@ func (m *PodLogOptions) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x2a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.SinceTime.Size())) - n124, err := m.SinceTime.MarshalTo(dAtA[i:]) + n127, err := m.SinceTime.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n124 + i += n127 } dAtA[i] = 0x30 i++ @@ -6298,11 +6445,11 @@ func (m *PodSecurityContext) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.SELinuxOptions.Size())) - n125, err := m.SELinuxOptions.MarshalTo(dAtA[i:]) + n128, err := m.SELinuxOptions.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n125 + i += n128 } if m.RunAsUser != nil { dAtA[i] = 0x10 @@ -6353,11 +6500,11 @@ func (m *PodSignature) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.PodController.Size())) - n126, err := m.PodController.MarshalTo(dAtA[i:]) + n129, err := m.PodController.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n126 + i += n129 } return i, nil } @@ -6420,10 +6567,15 @@ func (m *PodSpec) MarshalTo(dAtA []byte) (int, error) { i = encodeVarintGenerated(dAtA, i, uint64(len(m.DNSPolicy))) i += copy(dAtA[i:], m.DNSPolicy) if len(m.NodeSelector) > 0 { + keysForNodeSelector := make([]string, 0, len(m.NodeSelector)) for k := range m.NodeSelector { + keysForNodeSelector = append(keysForNodeSelector, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForNodeSelector) + for _, k := range keysForNodeSelector { dAtA[i] = 0x3a i++ - v := m.NodeSelector[k] + v := m.NodeSelector[string(k)] mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v))) i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) dAtA[i] = 0xa @@ -6476,11 +6628,11 @@ func (m *PodSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x72 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.SecurityContext.Size())) - n127, err := m.SecurityContext.MarshalTo(dAtA[i:]) + n130, err := m.SecurityContext.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n127 + i += n130 } if len(m.ImagePullSecrets) > 0 { for _, msg := range m.ImagePullSecrets { @@ -6512,11 +6664,11 @@ func (m *PodSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Affinity.Size())) - n128, err := m.Affinity.MarshalTo(dAtA[i:]) + n131, err := m.Affinity.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n128 + i += n131 } dAtA[i] = 0x9a i++ @@ -6632,11 +6784,11 @@ func (m *PodStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x3a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.StartTime.Size())) - n129, err := m.StartTime.MarshalTo(dAtA[i:]) + n132, err := m.StartTime.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n129 + i += n132 } if len(m.ContainerStatuses) > 0 { for _, msg := range m.ContainerStatuses { @@ -6687,19 +6839,19 @@ func (m *PodStatusResult) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n130, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + n133, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n130 + i += n133 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) - n131, err := m.Status.MarshalTo(dAtA[i:]) + n134, err := m.Status.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n131 + i += n134 return i, nil } @@ -6721,19 +6873,19 @@ func (m *PodTemplate) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n132, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + n135, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n132 + i += n135 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Template.Size())) - n133, err := m.Template.MarshalTo(dAtA[i:]) + n136, err := m.Template.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n133 + i += n136 return i, nil } @@ -6755,11 +6907,11 @@ func (m *PodTemplateList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n134, err := m.ListMeta.MarshalTo(dAtA[i:]) + n137, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n134 + i += n137 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -6793,19 +6945,19 @@ func (m *PodTemplateSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n135, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + n138, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n135 + i += n138 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) - n136, err := m.Spec.MarshalTo(dAtA[i:]) + n139, err := m.Spec.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n136 + i += n139 return i, nil } @@ -6885,19 +7037,19 @@ func (m *PreferAvoidPodsEntry) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.PodSignature.Size())) - n137, err := m.PodSignature.MarshalTo(dAtA[i:]) + n140, err := m.PodSignature.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n137 + i += n140 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.EvictionTime.Size())) - n138, err := m.EvictionTime.MarshalTo(dAtA[i:]) + n141, err := m.EvictionTime.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n138 + i += n141 dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.Reason))) @@ -6930,11 +7082,11 @@ func (m *PreferredSchedulingTerm) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Preference.Size())) - n139, err := m.Preference.MarshalTo(dAtA[i:]) + n142, err := m.Preference.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n139 + i += n142 return i, nil } @@ -6956,11 +7108,11 @@ func (m *Probe) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Handler.Size())) - n140, err := m.Handler.MarshalTo(dAtA[i:]) + n143, err := m.Handler.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n140 + i += n143 dAtA[i] = 0x10 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.InitialDelaySeconds)) @@ -7110,11 +7262,11 @@ func (m *RBDVolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x3a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.SecretRef.Size())) - n141, err := m.SecretRef.MarshalTo(dAtA[i:]) + n144, err := m.SecretRef.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n141 + i += n144 } dAtA[i] = 0x40 i++ @@ -7145,11 +7297,11 @@ func (m *RangeAllocation) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n142, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + n145, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n142 + i += n145 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.Range))) @@ -7181,27 +7333,27 @@ func (m *ReplicationController) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n143, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + n146, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n143 + i += n146 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) - n144, err := m.Spec.MarshalTo(dAtA[i:]) + n147, err := m.Spec.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n144 + i += n147 dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) - n145, err := m.Status.MarshalTo(dAtA[i:]) + n148, err := m.Status.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n145 + i += n148 return i, nil } @@ -7231,11 +7383,11 @@ func (m *ReplicationControllerCondition) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.LastTransitionTime.Size())) - n146, err := m.LastTransitionTime.MarshalTo(dAtA[i:]) + n149, err := m.LastTransitionTime.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n146 + i += n149 dAtA[i] = 0x22 i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.Reason))) @@ -7265,11 +7417,11 @@ func (m *ReplicationControllerList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n147, err := m.ListMeta.MarshalTo(dAtA[i:]) + n150, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n147 + i += n150 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -7306,10 +7458,15 @@ func (m *ReplicationControllerSpec) MarshalTo(dAtA []byte) (int, error) { i = encodeVarintGenerated(dAtA, i, uint64(*m.Replicas)) } if len(m.Selector) > 0 { + keysForSelector := make([]string, 0, len(m.Selector)) for k := range m.Selector { + keysForSelector = append(keysForSelector, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForSelector) + for _, k := range keysForSelector { dAtA[i] = 0x12 i++ - v := m.Selector[k] + v := m.Selector[string(k)] mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v))) i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) dAtA[i] = 0xa @@ -7326,11 +7483,11 @@ func (m *ReplicationControllerSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Template.Size())) - n148, err := m.Template.MarshalTo(dAtA[i:]) + n151, err := m.Template.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n148 + i += n151 } dAtA[i] = 0x20 i++ @@ -7409,11 +7566,11 @@ func (m *ResourceFieldSelector) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Divisor.Size())) - n149, err := m.Divisor.MarshalTo(dAtA[i:]) + n152, err := m.Divisor.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n149 + i += n152 return i, nil } @@ -7435,27 +7592,27 @@ func (m *ResourceQuota) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n150, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + n153, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n150 + i += n153 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) - n151, err := m.Spec.MarshalTo(dAtA[i:]) + n154, err := m.Spec.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n151 + i += n154 dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) - n152, err := m.Status.MarshalTo(dAtA[i:]) + n155, err := m.Status.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n152 + i += n155 return i, nil } @@ -7477,11 +7634,11 @@ func (m *ResourceQuotaList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n153, err := m.ListMeta.MarshalTo(dAtA[i:]) + n156, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n153 + i += n156 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -7513,10 +7670,15 @@ func (m *ResourceQuotaSpec) MarshalTo(dAtA []byte) (int, error) { var l int _ = l if len(m.Hard) > 0 { + keysForHard := make([]string, 0, len(m.Hard)) for k := range m.Hard { + keysForHard = append(keysForHard, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForHard) + for _, k := range keysForHard { dAtA[i] = 0xa i++ - v := m.Hard[k] + v := m.Hard[ResourceName(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -7531,11 +7693,11 @@ func (m *ResourceQuotaSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64((&v).Size())) - n154, err := (&v).MarshalTo(dAtA[i:]) + n157, err := (&v).MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n154 + i += n157 } } if len(m.Scopes) > 0 { @@ -7572,10 +7734,15 @@ func (m *ResourceQuotaStatus) MarshalTo(dAtA []byte) (int, error) { var l int _ = l if len(m.Hard) > 0 { + keysForHard := make([]string, 0, len(m.Hard)) for k := range m.Hard { + keysForHard = append(keysForHard, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForHard) + for _, k := range keysForHard { dAtA[i] = 0xa i++ - v := m.Hard[k] + v := m.Hard[ResourceName(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -7590,18 +7757,23 @@ func (m *ResourceQuotaStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64((&v).Size())) - n155, err := (&v).MarshalTo(dAtA[i:]) + n158, err := (&v).MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n155 + i += n158 } } if len(m.Used) > 0 { + keysForUsed := make([]string, 0, len(m.Used)) for k := range m.Used { + keysForUsed = append(keysForUsed, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForUsed) + for _, k := range keysForUsed { dAtA[i] = 0x12 i++ - v := m.Used[k] + v := m.Used[ResourceName(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -7616,11 +7788,11 @@ func (m *ResourceQuotaStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64((&v).Size())) - n156, err := (&v).MarshalTo(dAtA[i:]) + n159, err := (&v).MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n156 + i += n159 } } return i, nil @@ -7642,10 +7814,15 @@ func (m *ResourceRequirements) MarshalTo(dAtA []byte) (int, error) { var l int _ = l if len(m.Limits) > 0 { + keysForLimits := make([]string, 0, len(m.Limits)) for k := range m.Limits { + keysForLimits = append(keysForLimits, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForLimits) + for _, k := range keysForLimits { dAtA[i] = 0xa i++ - v := m.Limits[k] + v := m.Limits[ResourceName(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -7660,18 +7837,23 @@ func (m *ResourceRequirements) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64((&v).Size())) - n157, err := (&v).MarshalTo(dAtA[i:]) + n160, err := (&v).MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n157 + i += n160 } } if len(m.Requests) > 0 { + keysForRequests := make([]string, 0, len(m.Requests)) for k := range m.Requests { + keysForRequests = append(keysForRequests, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForRequests) + for _, k := range keysForRequests { dAtA[i] = 0x12 i++ - v := m.Requests[k] + v := m.Requests[ResourceName(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -7686,11 +7868,11 @@ func (m *ResourceRequirements) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64((&v).Size())) - n158, err := (&v).MarshalTo(dAtA[i:]) + n161, err := (&v).MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n158 + i += n161 } } return i, nil @@ -7757,11 +7939,11 @@ func (m *ScaleIOVolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.SecretRef.Size())) - n159, err := m.SecretRef.MarshalTo(dAtA[i:]) + n162, err := m.SecretRef.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n159 + i += n162 } dAtA[i] = 0x20 i++ @@ -7820,16 +8002,21 @@ func (m *Secret) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n160, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + n163, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n160 + i += n163 if len(m.Data) > 0 { + keysForData := make([]string, 0, len(m.Data)) for k := range m.Data { + keysForData = append(keysForData, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForData) + for _, k := range keysForData { dAtA[i] = 0x12 i++ - v := m.Data[k] + v := m.Data[string(k)] byteSize := 0 if v != nil { byteSize = 1 + len(v) + sovGenerated(uint64(len(v))) @@ -7853,10 +8040,15 @@ func (m *Secret) MarshalTo(dAtA []byte) (int, error) { i = encodeVarintGenerated(dAtA, i, uint64(len(m.Type))) i += copy(dAtA[i:], m.Type) if len(m.StringData) > 0 { + keysForStringData := make([]string, 0, len(m.StringData)) for k := range m.StringData { + keysForStringData = append(keysForStringData, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForStringData) + for _, k := range keysForStringData { dAtA[i] = 0x22 i++ - v := m.StringData[k] + v := m.StringData[string(k)] mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v))) i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) dAtA[i] = 0xa @@ -7890,11 +8082,11 @@ func (m *SecretEnvSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.LocalObjectReference.Size())) - n161, err := m.LocalObjectReference.MarshalTo(dAtA[i:]) + n164, err := m.LocalObjectReference.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n161 + i += n164 if m.Optional != nil { dAtA[i] = 0x10 i++ @@ -7926,11 +8118,11 @@ func (m *SecretKeySelector) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.LocalObjectReference.Size())) - n162, err := m.LocalObjectReference.MarshalTo(dAtA[i:]) + n165, err := m.LocalObjectReference.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n162 + i += n165 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.Key))) @@ -7966,11 +8158,11 @@ func (m *SecretList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n163, err := m.ListMeta.MarshalTo(dAtA[i:]) + n166, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n163 + i += n166 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -8004,11 +8196,11 @@ func (m *SecretProjection) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.LocalObjectReference.Size())) - n164, err := m.LocalObjectReference.MarshalTo(dAtA[i:]) + n167, err := m.LocalObjectReference.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n164 + i += n167 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -8102,11 +8294,11 @@ func (m *SecurityContext) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Capabilities.Size())) - n165, err := m.Capabilities.MarshalTo(dAtA[i:]) + n168, err := m.Capabilities.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n165 + i += n168 } if m.Privileged != nil { dAtA[i] = 0x10 @@ -8122,11 +8314,11 @@ func (m *SecurityContext) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.SELinuxOptions.Size())) - n166, err := m.SELinuxOptions.MarshalTo(dAtA[i:]) + n169, err := m.SELinuxOptions.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n166 + i += n169 } if m.RunAsUser != nil { dAtA[i] = 0x20 @@ -8174,11 +8366,11 @@ func (m *SerializedReference) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Reference.Size())) - n167, err := m.Reference.MarshalTo(dAtA[i:]) + n170, err := m.Reference.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n167 + i += n170 return i, nil } @@ -8200,27 +8392,27 @@ func (m *Service) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n168, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + n171, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n168 + i += n171 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) - n169, err := m.Spec.MarshalTo(dAtA[i:]) + n172, err := m.Spec.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n169 + i += n172 dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) - n170, err := m.Status.MarshalTo(dAtA[i:]) + n173, err := m.Status.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n170 + i += n173 return i, nil } @@ -8242,11 +8434,11 @@ func (m *ServiceAccount) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n171, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + n174, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n171 + i += n174 if len(m.Secrets) > 0 { for _, msg := range m.Secrets { dAtA[i] = 0x12 @@ -8302,11 +8494,11 @@ func (m *ServiceAccountList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n172, err := m.ListMeta.MarshalTo(dAtA[i:]) + n175, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n172 + i += n175 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -8340,11 +8532,11 @@ func (m *ServiceList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n173, err := m.ListMeta.MarshalTo(dAtA[i:]) + n176, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n173 + i += n176 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -8389,11 +8581,11 @@ func (m *ServicePort) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x22 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.TargetPort.Size())) - n174, err := m.TargetPort.MarshalTo(dAtA[i:]) + n177, err := m.TargetPort.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n174 + i += n177 dAtA[i] = 0x28 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.NodePort)) @@ -8450,10 +8642,15 @@ func (m *ServiceSpec) MarshalTo(dAtA []byte) (int, error) { } } if len(m.Selector) > 0 { + keysForSelector := make([]string, 0, len(m.Selector)) for k := range m.Selector { + keysForSelector = append(keysForSelector, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForSelector) + for _, k := range keysForSelector { dAtA[i] = 0x12 i++ - v := m.Selector[k] + v := m.Selector[string(k)] mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v))) i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) dAtA[i] = 0xa @@ -8544,11 +8741,107 @@ func (m *ServiceStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.LoadBalancer.Size())) - n175, err := m.LoadBalancer.MarshalTo(dAtA[i:]) + n178, err := m.LoadBalancer.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n175 + i += n178 + return i, nil +} + +func (m *StorageOSPersistentVolumeSource) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *StorageOSPersistentVolumeSource) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.VolumeName))) + i += copy(dAtA[i:], m.VolumeName) + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.VolumeNamespace))) + i += copy(dAtA[i:], m.VolumeNamespace) + dAtA[i] = 0x1a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.FSType))) + i += copy(dAtA[i:], m.FSType) + dAtA[i] = 0x20 + i++ + if m.ReadOnly { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i++ + if m.SecretRef != nil { + dAtA[i] = 0x2a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.SecretRef.Size())) + n179, err := m.SecretRef.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n179 + } + return i, nil +} + +func (m *StorageOSVolumeSource) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *StorageOSVolumeSource) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.VolumeName))) + i += copy(dAtA[i:], m.VolumeName) + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.VolumeNamespace))) + i += copy(dAtA[i:], m.VolumeNamespace) + dAtA[i] = 0x1a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.FSType))) + i += copy(dAtA[i:], m.FSType) + dAtA[i] = 0x20 + i++ + if m.ReadOnly { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i++ + if m.SecretRef != nil { + dAtA[i] = 0x2a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.SecretRef.Size())) + n180, err := m.SecretRef.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n180 + } return i, nil } @@ -8596,11 +8889,11 @@ func (m *TCPSocketAction) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Port.Size())) - n176, err := m.Port.MarshalTo(dAtA[i:]) + n181, err := m.Port.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n176 + i += n181 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.Host))) @@ -8638,11 +8931,11 @@ func (m *Taint) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x22 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.TimeAdded.Size())) - n177, err := m.TimeAdded.MarshalTo(dAtA[i:]) + n182, err := m.TimeAdded.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n177 + i += n182 return i, nil } @@ -8707,11 +9000,11 @@ func (m *Volume) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.VolumeSource.Size())) - n178, err := m.VolumeSource.MarshalTo(dAtA[i:]) + n183, err := m.VolumeSource.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n178 + i += n183 return i, nil } @@ -8772,31 +9065,31 @@ func (m *VolumeProjection) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Secret.Size())) - n179, err := m.Secret.MarshalTo(dAtA[i:]) + n184, err := m.Secret.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n179 + i += n184 } if m.DownwardAPI != nil { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.DownwardAPI.Size())) - n180, err := m.DownwardAPI.MarshalTo(dAtA[i:]) + n185, err := m.DownwardAPI.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n180 + i += n185 } if m.ConfigMap != nil { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ConfigMap.Size())) - n181, err := m.ConfigMap.MarshalTo(dAtA[i:]) + n186, err := m.ConfigMap.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n181 + i += n186 } return i, nil } @@ -8820,163 +9113,163 @@ func (m *VolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.HostPath.Size())) - n182, err := m.HostPath.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n182 - } - if m.EmptyDir != nil { - dAtA[i] = 0x12 - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.EmptyDir.Size())) - n183, err := m.EmptyDir.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n183 - } - if m.GCEPersistentDisk != nil { - dAtA[i] = 0x1a - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.GCEPersistentDisk.Size())) - n184, err := m.GCEPersistentDisk.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n184 - } - if m.AWSElasticBlockStore != nil { - dAtA[i] = 0x22 - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.AWSElasticBlockStore.Size())) - n185, err := m.AWSElasticBlockStore.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n185 - } - if m.GitRepo != nil { - dAtA[i] = 0x2a - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.GitRepo.Size())) - n186, err := m.GitRepo.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n186 - } - if m.Secret != nil { - dAtA[i] = 0x32 - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Secret.Size())) - n187, err := m.Secret.MarshalTo(dAtA[i:]) + n187, err := m.HostPath.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n187 } - if m.NFS != nil { - dAtA[i] = 0x3a + if m.EmptyDir != nil { + dAtA[i] = 0x12 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.NFS.Size())) - n188, err := m.NFS.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.EmptyDir.Size())) + n188, err := m.EmptyDir.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n188 } - if m.ISCSI != nil { - dAtA[i] = 0x42 + if m.GCEPersistentDisk != nil { + dAtA[i] = 0x1a i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.ISCSI.Size())) - n189, err := m.ISCSI.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.GCEPersistentDisk.Size())) + n189, err := m.GCEPersistentDisk.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n189 } - if m.Glusterfs != nil { - dAtA[i] = 0x4a + if m.AWSElasticBlockStore != nil { + dAtA[i] = 0x22 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Glusterfs.Size())) - n190, err := m.Glusterfs.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.AWSElasticBlockStore.Size())) + n190, err := m.AWSElasticBlockStore.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n190 } - if m.PersistentVolumeClaim != nil { - dAtA[i] = 0x52 + if m.GitRepo != nil { + dAtA[i] = 0x2a i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.PersistentVolumeClaim.Size())) - n191, err := m.PersistentVolumeClaim.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.GitRepo.Size())) + n191, err := m.GitRepo.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n191 } - if m.RBD != nil { - dAtA[i] = 0x5a + if m.Secret != nil { + dAtA[i] = 0x32 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.RBD.Size())) - n192, err := m.RBD.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.Secret.Size())) + n192, err := m.Secret.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n192 } - if m.FlexVolume != nil { - dAtA[i] = 0x62 + if m.NFS != nil { + dAtA[i] = 0x3a i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.FlexVolume.Size())) - n193, err := m.FlexVolume.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.NFS.Size())) + n193, err := m.NFS.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n193 } - if m.Cinder != nil { - dAtA[i] = 0x6a + if m.ISCSI != nil { + dAtA[i] = 0x42 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Cinder.Size())) - n194, err := m.Cinder.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.ISCSI.Size())) + n194, err := m.ISCSI.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n194 } - if m.CephFS != nil { - dAtA[i] = 0x72 + if m.Glusterfs != nil { + dAtA[i] = 0x4a i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.CephFS.Size())) - n195, err := m.CephFS.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.Glusterfs.Size())) + n195, err := m.Glusterfs.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n195 } - if m.Flocker != nil { - dAtA[i] = 0x7a + if m.PersistentVolumeClaim != nil { + dAtA[i] = 0x52 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Flocker.Size())) - n196, err := m.Flocker.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.PersistentVolumeClaim.Size())) + n196, err := m.PersistentVolumeClaim.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n196 } + if m.RBD != nil { + dAtA[i] = 0x5a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.RBD.Size())) + n197, err := m.RBD.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n197 + } + if m.FlexVolume != nil { + dAtA[i] = 0x62 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.FlexVolume.Size())) + n198, err := m.FlexVolume.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n198 + } + if m.Cinder != nil { + dAtA[i] = 0x6a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Cinder.Size())) + n199, err := m.Cinder.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n199 + } + if m.CephFS != nil { + dAtA[i] = 0x72 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.CephFS.Size())) + n200, err := m.CephFS.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n200 + } + if m.Flocker != nil { + dAtA[i] = 0x7a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Flocker.Size())) + n201, err := m.Flocker.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n201 + } if m.DownwardAPI != nil { dAtA[i] = 0x82 i++ dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.DownwardAPI.Size())) - n197, err := m.DownwardAPI.MarshalTo(dAtA[i:]) + n202, err := m.DownwardAPI.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n197 + i += n202 } if m.FC != nil { dAtA[i] = 0x8a @@ -8984,11 +9277,11 @@ func (m *VolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.FC.Size())) - n198, err := m.FC.MarshalTo(dAtA[i:]) + n203, err := m.FC.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n198 + i += n203 } if m.AzureFile != nil { dAtA[i] = 0x92 @@ -8996,11 +9289,11 @@ func (m *VolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.AzureFile.Size())) - n199, err := m.AzureFile.MarshalTo(dAtA[i:]) + n204, err := m.AzureFile.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n199 + i += n204 } if m.ConfigMap != nil { dAtA[i] = 0x9a @@ -9008,11 +9301,11 @@ func (m *VolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ConfigMap.Size())) - n200, err := m.ConfigMap.MarshalTo(dAtA[i:]) + n205, err := m.ConfigMap.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n200 + i += n205 } if m.VsphereVolume != nil { dAtA[i] = 0xa2 @@ -9020,11 +9313,11 @@ func (m *VolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.VsphereVolume.Size())) - n201, err := m.VsphereVolume.MarshalTo(dAtA[i:]) + n206, err := m.VsphereVolume.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n201 + i += n206 } if m.Quobyte != nil { dAtA[i] = 0xaa @@ -9032,11 +9325,11 @@ func (m *VolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Quobyte.Size())) - n202, err := m.Quobyte.MarshalTo(dAtA[i:]) + n207, err := m.Quobyte.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n202 + i += n207 } if m.AzureDisk != nil { dAtA[i] = 0xb2 @@ -9044,11 +9337,11 @@ func (m *VolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.AzureDisk.Size())) - n203, err := m.AzureDisk.MarshalTo(dAtA[i:]) + n208, err := m.AzureDisk.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n203 + i += n208 } if m.PhotonPersistentDisk != nil { dAtA[i] = 0xba @@ -9056,11 +9349,11 @@ func (m *VolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.PhotonPersistentDisk.Size())) - n204, err := m.PhotonPersistentDisk.MarshalTo(dAtA[i:]) + n209, err := m.PhotonPersistentDisk.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n204 + i += n209 } if m.PortworxVolume != nil { dAtA[i] = 0xc2 @@ -9068,11 +9361,11 @@ func (m *VolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.PortworxVolume.Size())) - n205, err := m.PortworxVolume.MarshalTo(dAtA[i:]) + n210, err := m.PortworxVolume.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n205 + i += n210 } if m.ScaleIO != nil { dAtA[i] = 0xca @@ -9080,11 +9373,11 @@ func (m *VolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ScaleIO.Size())) - n206, err := m.ScaleIO.MarshalTo(dAtA[i:]) + n211, err := m.ScaleIO.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n206 + i += n211 } if m.Projected != nil { dAtA[i] = 0xd2 @@ -9092,11 +9385,23 @@ func (m *VolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Projected.Size())) - n207, err := m.Projected.MarshalTo(dAtA[i:]) + n212, err := m.Projected.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n207 + i += n212 + } + if m.StorageOS != nil { + dAtA[i] = 0xda + i++ + dAtA[i] = 0x1 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.StorageOS.Size())) + n213, err := m.StorageOS.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n213 } return i, nil } @@ -9124,6 +9429,14 @@ func (m *VsphereVirtualDiskVolumeSource) MarshalTo(dAtA []byte) (int, error) { i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.FSType))) i += copy(dAtA[i:], m.FSType) + dAtA[i] = 0x1a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.StoragePolicyName))) + i += copy(dAtA[i:], m.StoragePolicyName) + dAtA[i] = 0x22 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.StoragePolicyID))) + i += copy(dAtA[i:], m.StoragePolicyID) return i, nil } @@ -9148,11 +9461,11 @@ func (m *WeightedPodAffinityTerm) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.PodAffinityTerm.Size())) - n208, err := m.PodAffinityTerm.MarshalTo(dAtA[i:]) + n214, err := m.PodAffinityTerm.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n208 + i += n214 return i, nil } @@ -9720,6 +10033,8 @@ func (m *EmptyDirVolumeSource) Size() (n int) { _ = l l = len(m.Medium) n += 1 + l + sovGenerated(uint64(l)) + l = m.SizeLimit.Size() + n += 1 + l + sovGenerated(uint64(l)) return n } @@ -10276,6 +10591,14 @@ func (m *LocalObjectReference) Size() (n int) { return n } +func (m *LocalVolumeSource) Size() (n int) { + var l int + _ = l + l = len(m.Path) + n += 1 + l + sovGenerated(uint64(l)) + return n +} + func (m *NFSVolumeSource) Size() (n int) { var l int _ = l @@ -10858,6 +11181,14 @@ func (m *PersistentVolumeSource) Size() (n int) { l = m.ScaleIO.Size() n += 2 + l + sovGenerated(uint64(l)) } + if m.Local != nil { + l = m.Local.Size() + n += 2 + l + sovGenerated(uint64(l)) + } + if m.StorageOS != nil { + l = m.StorageOS.Size() + n += 2 + l + sovGenerated(uint64(l)) + } return n } @@ -11922,6 +12253,40 @@ func (m *ServiceStatus) Size() (n int) { return n } +func (m *StorageOSPersistentVolumeSource) Size() (n int) { + var l int + _ = l + l = len(m.VolumeName) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.VolumeNamespace) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.FSType) + n += 1 + l + sovGenerated(uint64(l)) + n += 2 + if m.SecretRef != nil { + l = m.SecretRef.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + return n +} + +func (m *StorageOSVolumeSource) Size() (n int) { + var l int + _ = l + l = len(m.VolumeName) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.VolumeNamespace) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.FSType) + n += 1 + l + sovGenerated(uint64(l)) + n += 2 + if m.SecretRef != nil { + l = m.SecretRef.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + return n +} + func (m *Sysctl) Size() (n int) { var l int _ = l @@ -12121,6 +12486,10 @@ func (m *VolumeSource) Size() (n int) { l = m.Projected.Size() n += 2 + l + sovGenerated(uint64(l)) } + if m.StorageOS != nil { + l = m.StorageOS.Size() + n += 2 + l + sovGenerated(uint64(l)) + } return n } @@ -12131,6 +12500,10 @@ func (m *VsphereVirtualDiskVolumeSource) Size() (n int) { n += 1 + l + sovGenerated(uint64(l)) l = len(m.FSType) n += 1 + l + sovGenerated(uint64(l)) + l = len(m.StoragePolicyName) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.StoragePolicyID) + n += 1 + l + sovGenerated(uint64(l)) return n } @@ -12576,6 +12949,7 @@ func (this *EmptyDirVolumeSource) String() string { } s := strings.Join([]string{`&EmptyDirVolumeSource{`, `Medium:` + fmt.Sprintf("%v", this.Medium) + `,`, + `SizeLimit:` + strings.Replace(strings.Replace(this.SizeLimit.String(), "Quantity", "k8s_io_apimachinery_pkg_api_resource.Quantity", 1), `&`, ``, 1) + `,`, `}`, }, "") return s @@ -13065,6 +13439,16 @@ func (this *LocalObjectReference) String() string { }, "") return s } +func (this *LocalVolumeSource) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&LocalVolumeSource{`, + `Path:` + fmt.Sprintf("%v", this.Path) + `,`, + `}`, + }, "") + return s +} func (this *NFSVolumeSource) String() string { if this == nil { return "nil" @@ -13513,6 +13897,8 @@ func (this *PersistentVolumeSource) String() string { `PhotonPersistentDisk:` + strings.Replace(fmt.Sprintf("%v", this.PhotonPersistentDisk), "PhotonPersistentDiskVolumeSource", "PhotonPersistentDiskVolumeSource", 1) + `,`, `PortworxVolume:` + strings.Replace(fmt.Sprintf("%v", this.PortworxVolume), "PortworxVolumeSource", "PortworxVolumeSource", 1) + `,`, `ScaleIO:` + strings.Replace(fmt.Sprintf("%v", this.ScaleIO), "ScaleIOVolumeSource", "ScaleIOVolumeSource", 1) + `,`, + `Local:` + strings.Replace(fmt.Sprintf("%v", this.Local), "LocalVolumeSource", "LocalVolumeSource", 1) + `,`, + `StorageOS:` + strings.Replace(fmt.Sprintf("%v", this.StorageOS), "StorageOSPersistentVolumeSource", "StorageOSPersistentVolumeSource", 1) + `,`, `}`, }, "") return s @@ -14400,6 +14786,34 @@ func (this *ServiceStatus) String() string { }, "") return s } +func (this *StorageOSPersistentVolumeSource) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&StorageOSPersistentVolumeSource{`, + `VolumeName:` + fmt.Sprintf("%v", this.VolumeName) + `,`, + `VolumeNamespace:` + fmt.Sprintf("%v", this.VolumeNamespace) + `,`, + `FSType:` + fmt.Sprintf("%v", this.FSType) + `,`, + `ReadOnly:` + fmt.Sprintf("%v", this.ReadOnly) + `,`, + `SecretRef:` + strings.Replace(fmt.Sprintf("%v", this.SecretRef), "ObjectReference", "ObjectReference", 1) + `,`, + `}`, + }, "") + return s +} +func (this *StorageOSVolumeSource) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&StorageOSVolumeSource{`, + `VolumeName:` + fmt.Sprintf("%v", this.VolumeName) + `,`, + `VolumeNamespace:` + fmt.Sprintf("%v", this.VolumeNamespace) + `,`, + `FSType:` + fmt.Sprintf("%v", this.FSType) + `,`, + `ReadOnly:` + fmt.Sprintf("%v", this.ReadOnly) + `,`, + `SecretRef:` + strings.Replace(fmt.Sprintf("%v", this.SecretRef), "LocalObjectReference", "LocalObjectReference", 1) + `,`, + `}`, + }, "") + return s +} func (this *Sysctl) String() string { if this == nil { return "nil" @@ -14516,6 +14930,7 @@ func (this *VolumeSource) String() string { `PortworxVolume:` + strings.Replace(fmt.Sprintf("%v", this.PortworxVolume), "PortworxVolumeSource", "PortworxVolumeSource", 1) + `,`, `ScaleIO:` + strings.Replace(fmt.Sprintf("%v", this.ScaleIO), "ScaleIOVolumeSource", "ScaleIOVolumeSource", 1) + `,`, `Projected:` + strings.Replace(fmt.Sprintf("%v", this.Projected), "ProjectedVolumeSource", "ProjectedVolumeSource", 1) + `,`, + `StorageOS:` + strings.Replace(fmt.Sprintf("%v", this.StorageOS), "StorageOSVolumeSource", "StorageOSVolumeSource", 1) + `,`, `}`, }, "") return s @@ -14527,6 +14942,8 @@ func (this *VsphereVirtualDiskVolumeSource) String() string { s := strings.Join([]string{`&VsphereVirtualDiskVolumeSource{`, `VolumePath:` + fmt.Sprintf("%v", this.VolumePath) + `,`, `FSType:` + fmt.Sprintf("%v", this.FSType) + `,`, + `StoragePolicyName:` + fmt.Sprintf("%v", this.StoragePolicyName) + `,`, + `StoragePolicyID:` + fmt.Sprintf("%v", this.StoragePolicyID) + `,`, `}`, }, "") return s @@ -19523,6 +19940,36 @@ func (m *EmptyDirVolumeSource) Unmarshal(dAtA []byte) error { } m.Medium = StorageMedium(dAtA[iNdEx:postIndex]) iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SizeLimit", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.SizeLimit.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipGenerated(dAtA[iNdEx:]) @@ -24979,6 +25426,85 @@ func (m *LocalObjectReference) Unmarshal(dAtA []byte) error { } return nil } +func (m *LocalVolumeSource) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: LocalVolumeSource: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: LocalVolumeSource: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Path", 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.Path = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func (m *NFSVolumeSource) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 @@ -30634,6 +31160,72 @@ func (m *PersistentVolumeSource) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 20: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Local", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Local == nil { + m.Local = &LocalVolumeSource{} + } + if err := m.Local.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 21: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field StorageOS", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.StorageOS == nil { + m.StorageOS = &StorageOSPersistentVolumeSource{} + } + if err := m.StorageOS.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipGenerated(dAtA[iNdEx:]) @@ -41118,6 +41710,386 @@ func (m *ServiceStatus) Unmarshal(dAtA []byte) error { } return nil } +func (m *StorageOSPersistentVolumeSource) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: StorageOSPersistentVolumeSource: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: StorageOSPersistentVolumeSource: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field VolumeName", 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.VolumeName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field VolumeNamespace", 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.VolumeNamespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field FSType", 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.FSType = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field ReadOnly", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + m.ReadOnly = bool(v != 0) + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SecretRef", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SecretRef == nil { + m.SecretRef = &ObjectReference{} + } + if err := m.SecretRef.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *StorageOSVolumeSource) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: StorageOSVolumeSource: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: StorageOSVolumeSource: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field VolumeName", 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.VolumeName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field VolumeNamespace", 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.VolumeNamespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field FSType", 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.FSType = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field ReadOnly", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + m.ReadOnly = bool(v != 0) + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SecretRef", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SecretRef == nil { + m.SecretRef = &LocalObjectReference{} + } + if err := m.SecretRef.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func (m *Sysctl) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 @@ -42990,6 +43962,39 @@ func (m *VolumeSource) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 27: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field StorageOS", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.StorageOS == nil { + m.StorageOS = &StorageOSVolumeSource{} + } + if err := m.StorageOS.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipGenerated(dAtA[iNdEx:]) @@ -43098,6 +44103,64 @@ func (m *VsphereVirtualDiskVolumeSource) Unmarshal(dAtA []byte) error { } m.FSType = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field StoragePolicyName", 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.StoragePolicyName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field StoragePolicyID", 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.StoragePolicyID = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipGenerated(dAtA[iNdEx:]) @@ -43328,711 +44391,722 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 11285 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0xbd, 0x7d, 0x8c, 0x24, 0xc7, - 0x75, 0x18, 0xae, 0x9e, 0xd9, 0xaf, 0x79, 0xfb, 0x5d, 0xb7, 0x77, 0x5c, 0xae, 0xc8, 0xdb, 0x63, - 0x53, 0xa4, 0x8f, 0xe4, 0x71, 0x4f, 0x77, 0x24, 0xc5, 0x93, 0xa8, 0x1f, 0xad, 0xdd, 0x9d, 0xdd, - 0xbb, 0xd5, 0x7d, 0x0d, 0x6b, 0xf6, 0xee, 0x28, 0x8a, 0x3f, 0x91, 0x7d, 0xd3, 0xb5, 0xb3, 0xcd, - 0x9b, 0xed, 0x1e, 0x76, 0xf7, 0xec, 0xdd, 0x4a, 0x11, 0x60, 0x2b, 0x82, 0xe4, 0x00, 0x4a, 0xa2, - 0xc0, 0x11, 0x10, 0x38, 0x01, 0x14, 0x18, 0x88, 0xa3, 0x7c, 0x3a, 0x8a, 0xa0, 0x0f, 0xc3, 0x72, - 0x82, 0x38, 0x96, 0x23, 0x03, 0x89, 0x63, 0xc0, 0x88, 0xed, 0xc0, 0xf0, 0xda, 0x5a, 0x21, 0xfe, - 0x23, 0x40, 0x82, 0x20, 0xf9, 0x6f, 0xf3, 0x81, 0xa0, 0x3e, 0xbb, 0xaa, 0xa7, 0x67, 0xbb, 0x67, - 0x79, 0xbb, 0xa6, 0x84, 0xfc, 0x37, 0x53, 0xef, 0xd5, 0xab, 0x8f, 0xae, 0x7a, 0xf5, 0xde, 0xab, - 0xf7, 0x5e, 0xc1, 0xb9, 0x7b, 0x97, 0xa2, 0x05, 0x2f, 0x38, 0x7f, 0xaf, 0x73, 0x97, 0x84, 0x3e, - 0x89, 0x49, 0x74, 0xbe, 0x7d, 0xaf, 0x79, 0xde, 0x69, 0x7b, 0xe7, 0xb7, 0x2f, 0x9c, 0x6f, 0x12, - 0x9f, 0x84, 0x4e, 0x4c, 0xdc, 0x85, 0x76, 0x18, 0xc4, 0x01, 0x7a, 0x8c, 0x63, 0x2f, 0x24, 0xd8, - 0x0b, 0xed, 0x7b, 0xcd, 0x05, 0xa7, 0xed, 0x2d, 0x6c, 0x5f, 0x98, 0x7b, 0xbe, 0xe9, 0xc5, 0x9b, - 0x9d, 0xbb, 0x0b, 0x8d, 0x60, 0xeb, 0x7c, 0x33, 0x68, 0x06, 0xe7, 0x59, 0xa5, 0xbb, 0x9d, 0x0d, - 0xf6, 0x8f, 0xfd, 0x61, 0xbf, 0x38, 0xb1, 0xb9, 0x17, 0x45, 0xd3, 0x4e, 0xdb, 0xdb, 0x72, 0x1a, - 0x9b, 0x9e, 0x4f, 0xc2, 0x1d, 0xd5, 0x78, 0x48, 0xa2, 0xa0, 0x13, 0x36, 0x48, 0xba, 0x0b, 0x07, - 0xd6, 0x8a, 0xce, 0x6f, 0x91, 0xd8, 0xc9, 0xe8, 0xf8, 0xdc, 0xf9, 0x5e, 0xb5, 0xc2, 0x8e, 0x1f, - 0x7b, 0x5b, 0xdd, 0xcd, 0x7c, 0x24, 0xaf, 0x42, 0xd4, 0xd8, 0x24, 0x5b, 0x4e, 0x57, 0xbd, 0x17, - 0x7a, 0xd5, 0xeb, 0xc4, 0x5e, 0xeb, 0xbc, 0xe7, 0xc7, 0x51, 0x1c, 0x1e, 0x34, 0xa6, 0x88, 0x84, - 0xdb, 0x24, 0x4c, 0x06, 0x44, 0x1e, 0x38, 0x5b, 0xed, 0x16, 0xc9, 0x18, 0x93, 0xfd, 0x87, 0x16, - 0x9c, 0x59, 0xbc, 0x53, 0x5f, 0x69, 0x39, 0x51, 0xec, 0x35, 0x96, 0x5a, 0x41, 0xe3, 0x5e, 0x3d, - 0x0e, 0x42, 0x72, 0x3b, 0x68, 0x75, 0xb6, 0x48, 0x9d, 0x4d, 0x1f, 0x3a, 0x07, 0x23, 0xdb, 0xec, - 0xff, 0x5a, 0x75, 0xd6, 0x3a, 0x63, 0x9d, 0xad, 0x2c, 0x4d, 0xfd, 0x70, 0x77, 0xfe, 0x03, 0x7b, - 0xbb, 0xf3, 0x23, 0xb7, 0x45, 0x39, 0x56, 0x18, 0xe8, 0x69, 0x18, 0xda, 0x88, 0xd6, 0x77, 0xda, - 0x64, 0xb6, 0xc4, 0x70, 0x27, 0x04, 0xee, 0xd0, 0x6a, 0x9d, 0x96, 0x62, 0x01, 0x45, 0xe7, 0xa1, - 0xd2, 0x76, 0xc2, 0xd8, 0x8b, 0xbd, 0xc0, 0x9f, 0x2d, 0x9f, 0xb1, 0xce, 0x0e, 0x2e, 0x4d, 0x0b, - 0xd4, 0x4a, 0x4d, 0x02, 0x70, 0x82, 0x43, 0xbb, 0x11, 0x12, 0xc7, 0xbd, 0xe9, 0xb7, 0x76, 0x66, - 0x07, 0xce, 0x58, 0x67, 0x47, 0x92, 0x6e, 0x60, 0x51, 0x8e, 0x15, 0x86, 0xfd, 0xbd, 0x12, 0x8c, - 0x2c, 0x6e, 0x6c, 0x78, 0xbe, 0x17, 0xef, 0xa0, 0xb7, 0x61, 0xcc, 0x0f, 0x5c, 0x22, 0xff, 0xb3, - 0x51, 0x8c, 0x5e, 0x7c, 0x76, 0xe1, 0xa0, 0xa5, 0xb8, 0x70, 0x43, 0xab, 0xb1, 0x34, 0xb5, 0xb7, - 0x3b, 0x3f, 0xa6, 0x97, 0x60, 0x83, 0x22, 0x7a, 0x13, 0x46, 0xdb, 0x81, 0xab, 0x1a, 0x28, 0xb1, - 0x06, 0x9e, 0x39, 0xb8, 0x81, 0x5a, 0x52, 0x61, 0x69, 0x72, 0x6f, 0x77, 0x7e, 0x54, 0x2b, 0xc0, - 0x3a, 0x39, 0xd4, 0x82, 0x49, 0xfa, 0xd7, 0x8f, 0x3d, 0xd5, 0x42, 0x99, 0xb5, 0xf0, 0x7c, 0x7e, - 0x0b, 0x5a, 0xa5, 0xa5, 0x13, 0x7b, 0xbb, 0xf3, 0x93, 0xa9, 0x42, 0x9c, 0x26, 0x6d, 0x7f, 0x16, - 0x26, 0x16, 0xe3, 0xd8, 0x69, 0x6c, 0x12, 0x97, 0x7f, 0x5f, 0xf4, 0x22, 0x0c, 0xf8, 0xce, 0x16, - 0x11, 0x5f, 0xff, 0x8c, 0x98, 0xf6, 0x81, 0x1b, 0xce, 0x16, 0xd9, 0xdf, 0x9d, 0x9f, 0xba, 0xe5, - 0x7b, 0xef, 0x76, 0xc4, 0x9a, 0xa1, 0x65, 0x98, 0x61, 0xa3, 0x8b, 0x00, 0x2e, 0xd9, 0xf6, 0x1a, - 0xa4, 0xe6, 0xc4, 0x9b, 0x62, 0x35, 0x20, 0x51, 0x17, 0xaa, 0x0a, 0x82, 0x35, 0x2c, 0xfb, 0x0b, - 0x16, 0x54, 0x16, 0xb7, 0x03, 0xcf, 0xad, 0x05, 0x6e, 0x84, 0x3a, 0x30, 0xd9, 0x0e, 0xc9, 0x06, - 0x09, 0x55, 0xd1, 0xac, 0x75, 0xa6, 0x7c, 0x76, 0xf4, 0xe2, 0xc5, 0x9c, 0x71, 0x9b, 0x95, 0x56, - 0xfc, 0x38, 0xdc, 0x59, 0x7a, 0x44, 0x34, 0x3d, 0x99, 0x82, 0xe2, 0x74, 0x1b, 0xf6, 0x6f, 0x95, - 0xe0, 0xe4, 0xe2, 0x67, 0x3b, 0x21, 0xa9, 0x7a, 0xd1, 0xbd, 0xf4, 0x56, 0x70, 0xbd, 0xe8, 0xde, - 0x8d, 0x64, 0x32, 0xd4, 0x1a, 0xac, 0x8a, 0x72, 0xac, 0x30, 0xd0, 0xf3, 0x30, 0x4c, 0x7f, 0xdf, - 0xc2, 0x6b, 0x62, 0xf4, 0x27, 0x04, 0xf2, 0x68, 0xd5, 0x89, 0x9d, 0x2a, 0x07, 0x61, 0x89, 0x83, - 0xae, 0xc3, 0x68, 0x83, 0xed, 0xf7, 0xe6, 0xf5, 0xc0, 0x25, 0xec, 0x0b, 0x57, 0x96, 0x9e, 0xa3, - 0xe8, 0xcb, 0x49, 0xf1, 0xfe, 0xee, 0xfc, 0x2c, 0xef, 0x9b, 0x20, 0xa1, 0xc1, 0xb0, 0x5e, 0x1f, - 0xd9, 0x6a, 0x23, 0x0e, 0x30, 0x4a, 0x90, 0xb1, 0x09, 0xcf, 0x6a, 0x7b, 0x6a, 0x90, 0xed, 0xa9, - 0xb1, 0xec, 0xfd, 0x84, 0x2e, 0xc0, 0xc0, 0x3d, 0xcf, 0x77, 0x67, 0x87, 0x18, 0xad, 0xc7, 0xe9, - 0xe7, 0xbf, 0xea, 0xf9, 0xee, 0xfe, 0xee, 0xfc, 0xb4, 0xd1, 0x1d, 0x5a, 0x88, 0x19, 0xaa, 0xfd, - 0x0f, 0x2d, 0x31, 0x8d, 0xab, 0x5e, 0xcb, 0xe4, 0x28, 0x17, 0x01, 0x22, 0xd2, 0x08, 0x49, 0xac, - 0x4d, 0xa4, 0x5a, 0x19, 0x75, 0x05, 0xc1, 0x1a, 0x16, 0xe5, 0x17, 0xd1, 0xa6, 0x13, 0xb2, 0x05, - 0x26, 0xa6, 0x53, 0xf1, 0x8b, 0xba, 0x04, 0xe0, 0x04, 0xc7, 0xe0, 0x17, 0xe5, 0x5c, 0x7e, 0xf1, - 0x9b, 0x16, 0x0c, 0x2f, 0x79, 0xbe, 0xeb, 0xf9, 0x4d, 0xf4, 0x36, 0x8c, 0xd0, 0x43, 0xc0, 0x75, - 0x62, 0x47, 0xb0, 0x8a, 0x0f, 0xcb, 0xf5, 0xa6, 0xf3, 0x64, 0xb9, 0xe2, 0xa2, 0x05, 0x8a, 0x4d, - 0xd7, 0xdd, 0xcd, 0xbb, 0xef, 0x90, 0x46, 0x7c, 0x9d, 0xc4, 0x4e, 0x32, 0x9c, 0xa4, 0x0c, 0x2b, - 0xaa, 0xe8, 0x16, 0x0c, 0xc5, 0x4e, 0xd8, 0x24, 0xb1, 0xe0, 0x14, 0x39, 0xfb, 0x98, 0xd3, 0xc0, - 0x74, 0x95, 0x12, 0xbf, 0x41, 0x12, 0x9e, 0xba, 0xce, 0x88, 0x60, 0x41, 0xcc, 0x6e, 0xc0, 0xd8, - 0xb2, 0xd3, 0x76, 0xee, 0x7a, 0x2d, 0x2f, 0xf6, 0x48, 0x84, 0x7e, 0x06, 0xca, 0x8e, 0xeb, 0xb2, - 0x3d, 0x53, 0x59, 0x3a, 0xb9, 0xb7, 0x3b, 0x5f, 0x5e, 0x74, 0xe9, 0x27, 0x03, 0x85, 0xb5, 0x83, - 0x29, 0x06, 0x7a, 0x16, 0x06, 0xdc, 0x30, 0x68, 0xcf, 0x96, 0x18, 0xe6, 0x29, 0xfa, 0x75, 0xab, - 0x61, 0xd0, 0x4e, 0xa1, 0x32, 0x1c, 0xfb, 0x07, 0x25, 0x40, 0xcb, 0xa4, 0xbd, 0xb9, 0x5a, 0x37, - 0xbe, 0xe9, 0x59, 0x18, 0xd9, 0x0a, 0x7c, 0x2f, 0x0e, 0xc2, 0x48, 0x34, 0xc8, 0x96, 0xd2, 0x75, - 0x51, 0x86, 0x15, 0x14, 0x9d, 0x81, 0x81, 0x76, 0xc2, 0x11, 0xc6, 0x24, 0x37, 0x61, 0xbc, 0x80, - 0x41, 0x28, 0x46, 0x27, 0x22, 0xa1, 0xd8, 0x02, 0x0a, 0xe3, 0x56, 0x44, 0x42, 0xcc, 0x20, 0xc9, - 0x0a, 0xa2, 0x6b, 0x4b, 0x2c, 0xf0, 0xd4, 0x0a, 0xa2, 0x10, 0xac, 0x61, 0xa1, 0xb7, 0xa0, 0xc2, - 0xff, 0x61, 0xb2, 0xc1, 0x56, 0x7b, 0x2e, 0x1f, 0xb9, 0x16, 0x34, 0x9c, 0x56, 0x7a, 0xf2, 0xc7, - 0xd9, 0x8a, 0x93, 0x84, 0x70, 0x42, 0xd3, 0x58, 0x71, 0x43, 0xb9, 0x2b, 0xee, 0x6f, 0x59, 0x80, - 0x96, 0x3d, 0xdf, 0x25, 0xe1, 0x31, 0x9c, 0xb6, 0xfd, 0x6d, 0x86, 0x3f, 0xa6, 0x5d, 0x0b, 0xb6, - 0xda, 0x81, 0x4f, 0xfc, 0x78, 0x39, 0xf0, 0x5d, 0x7e, 0x02, 0x7f, 0x0c, 0x06, 0x62, 0xda, 0x14, - 0xef, 0xd6, 0xd3, 0xf2, 0xb3, 0xd0, 0x06, 0xf6, 0x77, 0xe7, 0x4f, 0x75, 0xd7, 0x60, 0x5d, 0x60, - 0x75, 0xd0, 0x47, 0x61, 0x28, 0x8a, 0x9d, 0xb8, 0x13, 0x89, 0x8e, 0x3e, 0x21, 0x3b, 0x5a, 0x67, - 0xa5, 0xfb, 0xbb, 0xf3, 0x93, 0xaa, 0x1a, 0x2f, 0xc2, 0xa2, 0x02, 0x7a, 0x06, 0x86, 0xb7, 0x48, - 0x14, 0x39, 0x4d, 0xc9, 0x13, 0x27, 0x45, 0xdd, 0xe1, 0xeb, 0xbc, 0x18, 0x4b, 0x38, 0x7a, 0x12, - 0x06, 0x49, 0x18, 0x06, 0xa1, 0x58, 0x11, 0xe3, 0x02, 0x71, 0x70, 0x85, 0x16, 0x62, 0x0e, 0xb3, - 0xff, 0xa3, 0x05, 0x93, 0xaa, 0xaf, 0xbc, 0xad, 0x63, 0xd8, 0xf2, 0x2e, 0x40, 0x43, 0x0e, 0x30, - 0x62, 0x1b, 0x4d, 0x6b, 0x23, 0x7b, 0xf9, 0x75, 0x4f, 0x68, 0xd2, 0x86, 0x2a, 0x8a, 0xb0, 0x46, - 0xd7, 0xfe, 0x37, 0x16, 0x9c, 0x48, 0x8d, 0xed, 0x9a, 0x17, 0xc5, 0xe8, 0xcd, 0xae, 0xf1, 0x2d, - 0x14, 0x1b, 0x1f, 0xad, 0xcd, 0x46, 0xa7, 0xd6, 0x8b, 0x2c, 0xd1, 0xc6, 0x86, 0x61, 0xd0, 0x8b, - 0xc9, 0x96, 0x1c, 0xd6, 0xf3, 0x05, 0x87, 0xc5, 0xfb, 0x97, 0x7c, 0xa5, 0x35, 0x4a, 0x03, 0x73, - 0x52, 0xf6, 0xff, 0xb4, 0xa0, 0xb2, 0x1c, 0xf8, 0x1b, 0x5e, 0xf3, 0xba, 0xd3, 0x3e, 0x86, 0xef, - 0x53, 0x87, 0x01, 0x46, 0x9d, 0x0f, 0xe1, 0x42, 0xde, 0x10, 0x44, 0xc7, 0x16, 0xe8, 0xb9, 0xc7, - 0xe5, 0x0b, 0xc5, 0xa6, 0x68, 0x11, 0x66, 0xc4, 0xe6, 0x5e, 0x86, 0x8a, 0x42, 0x40, 0x53, 0x50, - 0xbe, 0x47, 0xb8, 0xf0, 0x59, 0xc1, 0xf4, 0x27, 0x9a, 0x81, 0xc1, 0x6d, 0xa7, 0xd5, 0x11, 0x9b, - 0x17, 0xf3, 0x3f, 0x1f, 0x2b, 0x5d, 0xb2, 0xec, 0x1f, 0xb0, 0x1d, 0x28, 0x1a, 0x59, 0xf1, 0xb7, - 0x05, 0x73, 0xf8, 0xa2, 0x05, 0x33, 0xad, 0x0c, 0xa6, 0x24, 0xe6, 0xe4, 0x30, 0xec, 0xec, 0x31, - 0xd1, 0xed, 0x99, 0x2c, 0x28, 0xce, 0x6c, 0x8d, 0xf2, 0xfa, 0xa0, 0x4d, 0x17, 0x9c, 0xd3, 0x62, - 0x5d, 0x17, 0x62, 0xc3, 0x4d, 0x51, 0x86, 0x15, 0xd4, 0xfe, 0x73, 0x0b, 0x66, 0xd4, 0x38, 0xae, - 0x92, 0x9d, 0x3a, 0x69, 0x91, 0x46, 0x1c, 0x84, 0xef, 0x97, 0x91, 0x3c, 0xce, 0xbf, 0x09, 0xe7, - 0x49, 0xa3, 0x82, 0x40, 0xf9, 0x2a, 0xd9, 0xe1, 0x1f, 0x48, 0x1f, 0x68, 0xf9, 0xc0, 0x81, 0xfe, - 0xba, 0x05, 0xe3, 0x6a, 0xa0, 0xc7, 0xb0, 0xe5, 0xae, 0x99, 0x5b, 0xee, 0x67, 0x0a, 0xae, 0xd7, - 0x1e, 0x9b, 0xed, 0x6f, 0x96, 0x28, 0xdb, 0x10, 0x38, 0xb5, 0x30, 0xa0, 0x93, 0x44, 0x39, 0xfe, - 0xfb, 0xe4, 0x2b, 0xf5, 0x37, 0xd8, 0xab, 0x64, 0x67, 0x3d, 0xa0, 0xd2, 0x44, 0xf6, 0x60, 0x8d, - 0x8f, 0x3a, 0x70, 0xe0, 0x47, 0xfd, 0x9d, 0x12, 0x9c, 0x54, 0xd3, 0x62, 0x9c, 0xd2, 0x3f, 0x95, - 0x13, 0x73, 0x01, 0x46, 0x5d, 0xb2, 0xe1, 0x74, 0x5a, 0xb1, 0x52, 0x40, 0x06, 0xb9, 0x66, 0x5a, - 0x4d, 0x8a, 0xb1, 0x8e, 0xd3, 0xc7, 0x5c, 0x7e, 0x7d, 0x94, 0xf1, 0xf3, 0xd8, 0xa1, 0xab, 0x9e, - 0x4a, 0x78, 0x9a, 0x46, 0x39, 0xa6, 0x6b, 0x94, 0x42, 0x7b, 0x7c, 0x12, 0x06, 0xbd, 0x2d, 0x7a, - 0xe6, 0x97, 0xcc, 0xa3, 0x7c, 0x8d, 0x16, 0x62, 0x0e, 0x43, 0x4f, 0xc1, 0x70, 0x23, 0xd8, 0xda, - 0x72, 0x7c, 0x77, 0xb6, 0xcc, 0x64, 0xce, 0x51, 0x2a, 0x16, 0x2c, 0xf3, 0x22, 0x2c, 0x61, 0xe8, - 0x31, 0x18, 0x70, 0xc2, 0x66, 0x34, 0x3b, 0xc0, 0x70, 0x46, 0x68, 0x4b, 0x8b, 0x61, 0x33, 0xc2, - 0xac, 0x94, 0xca, 0x92, 0xf7, 0x83, 0xf0, 0x9e, 0xe7, 0x37, 0xab, 0x5e, 0xc8, 0x04, 0x43, 0x4d, - 0x96, 0xbc, 0xa3, 0x20, 0x58, 0xc3, 0x42, 0x35, 0x18, 0x6c, 0x07, 0x61, 0x1c, 0xcd, 0x0e, 0xb1, - 0x89, 0x7f, 0x2e, 0x77, 0xfb, 0xf1, 0x71, 0xd7, 0x82, 0x30, 0x4e, 0x86, 0x42, 0xff, 0x45, 0x98, - 0x13, 0x42, 0xcb, 0x50, 0x26, 0xfe, 0xf6, 0xec, 0x30, 0xa3, 0xf7, 0xa1, 0x83, 0xe9, 0xad, 0xf8, - 0xdb, 0xb7, 0x9d, 0x30, 0xe1, 0x57, 0x2b, 0xfe, 0x36, 0xa6, 0xb5, 0x51, 0x03, 0x2a, 0xd2, 0xea, - 0x15, 0xcd, 0x8e, 0x14, 0x59, 0x8a, 0x58, 0xa0, 0x63, 0xf2, 0x6e, 0xc7, 0x0b, 0xc9, 0x16, 0xf1, - 0xe3, 0x28, 0x51, 0xac, 0x24, 0x34, 0xc2, 0x09, 0x5d, 0xd4, 0x80, 0x31, 0x2e, 0x7f, 0x5e, 0x0f, - 0x3a, 0x7e, 0x1c, 0xcd, 0x56, 0x58, 0x97, 0x73, 0x8c, 0x1d, 0xb7, 0x93, 0x1a, 0x4b, 0x33, 0x82, - 0xfc, 0x98, 0x56, 0x18, 0x61, 0x83, 0x28, 0x7a, 0x13, 0xc6, 0x5b, 0xde, 0x36, 0xf1, 0x49, 0x14, - 0xd5, 0xc2, 0xe0, 0x2e, 0x99, 0x05, 0x36, 0x9a, 0x27, 0xf3, 0x14, 0xff, 0xe0, 0x2e, 0x59, 0x9a, - 0xde, 0xdb, 0x9d, 0x1f, 0xbf, 0xa6, 0xd7, 0xc6, 0x26, 0x31, 0xf4, 0x16, 0x4c, 0x50, 0x61, 0xd7, - 0x4b, 0xc8, 0x8f, 0x16, 0x27, 0x8f, 0xf6, 0x76, 0xe7, 0x27, 0xb0, 0x51, 0x1d, 0xa7, 0xc8, 0xa1, - 0x75, 0xa8, 0xb4, 0xbc, 0x0d, 0xd2, 0xd8, 0x69, 0xb4, 0xc8, 0xec, 0x18, 0xa3, 0x9d, 0xb3, 0x39, - 0xaf, 0x49, 0x74, 0xae, 0x60, 0xa8, 0xbf, 0x38, 0x21, 0x84, 0x6e, 0xc3, 0xa9, 0x98, 0x84, 0x5b, - 0x9e, 0xef, 0xd0, 0x4d, 0x25, 0xa4, 0x5f, 0x66, 0x5d, 0x19, 0x67, 0xab, 0xf6, 0xb4, 0x98, 0xd8, - 0x53, 0xeb, 0x99, 0x58, 0xb8, 0x47, 0x6d, 0x74, 0x13, 0x26, 0xd9, 0x7e, 0xaa, 0x75, 0x5a, 0xad, - 0x5a, 0xd0, 0xf2, 0x1a, 0x3b, 0xb3, 0x13, 0x8c, 0xe0, 0x53, 0xd2, 0x66, 0xb2, 0x66, 0x82, 0xa9, - 0x62, 0x98, 0xfc, 0xc3, 0xe9, 0xda, 0xa8, 0x05, 0x93, 0x11, 0x69, 0x74, 0x42, 0x2f, 0xde, 0xa1, - 0x6b, 0x9f, 0x3c, 0x88, 0x67, 0x27, 0x8b, 0x28, 0xba, 0x75, 0xb3, 0x12, 0x37, 0x58, 0xa5, 0x0a, - 0x71, 0x9a, 0x34, 0x65, 0x15, 0x51, 0xec, 0x7a, 0xfe, 0xec, 0x14, 0xe3, 0x40, 0x6a, 0x7f, 0xd5, - 0x69, 0x21, 0xe6, 0x30, 0x66, 0x3f, 0xa0, 0x3f, 0x6e, 0x52, 0x2e, 0x3d, 0xcd, 0x10, 0x13, 0xfb, - 0x81, 0x04, 0xe0, 0x04, 0x87, 0x8a, 0x06, 0x71, 0xbc, 0x33, 0x8b, 0x18, 0xaa, 0xda, 0x6a, 0xeb, - 0xeb, 0x9f, 0xc2, 0xb4, 0x1c, 0xdd, 0x86, 0x61, 0xe2, 0x6f, 0xaf, 0x86, 0xc1, 0xd6, 0xec, 0x89, - 0x22, 0x3c, 0x60, 0x85, 0x23, 0xf3, 0xf3, 0x23, 0x51, 0x61, 0x44, 0x31, 0x96, 0xc4, 0xd0, 0x03, - 0x98, 0xcd, 0xf8, 0x4a, 0xfc, 0xa3, 0xcc, 0xb0, 0x8f, 0xf2, 0x71, 0x51, 0x77, 0x76, 0xbd, 0x07, - 0xde, 0xfe, 0x01, 0x30, 0xdc, 0x93, 0xba, 0x7d, 0x17, 0x26, 0x14, 0xa3, 0x62, 0xdf, 0x1b, 0xcd, - 0xc3, 0x20, 0xe5, 0xc5, 0x52, 0xa1, 0xaf, 0xd0, 0x49, 0xa5, 0x2c, 0x3a, 0xc2, 0xbc, 0x9c, 0x4d, - 0xaa, 0xf7, 0x59, 0xb2, 0xb4, 0x13, 0x13, 0xae, 0xd8, 0x95, 0xb5, 0x49, 0x95, 0x00, 0x9c, 0xe0, - 0xd8, 0xff, 0x87, 0x8b, 0x49, 0x09, 0x37, 0x2c, 0x70, 0x12, 0x9c, 0x83, 0x91, 0xcd, 0x20, 0x8a, - 0x29, 0x36, 0x6b, 0x63, 0x30, 0x11, 0x8c, 0xae, 0x88, 0x72, 0xac, 0x30, 0xd0, 0x2b, 0x30, 0xde, - 0xd0, 0x1b, 0x10, 0xc7, 0xd8, 0x49, 0x51, 0xc5, 0x6c, 0x1d, 0x9b, 0xb8, 0xe8, 0x12, 0x8c, 0x30, - 0xc3, 0x78, 0x23, 0x68, 0x09, 0x15, 0x52, 0x9e, 0xca, 0x23, 0x35, 0x51, 0xbe, 0xaf, 0xfd, 0xc6, - 0x0a, 0x9b, 0x2a, 0xe2, 0xb4, 0x0b, 0x6b, 0x35, 0x71, 0x80, 0x28, 0x45, 0xfc, 0x0a, 0x2b, 0xc5, - 0x02, 0x6a, 0xff, 0xb3, 0x92, 0x36, 0xcb, 0x54, 0x01, 0x22, 0xe8, 0x0d, 0x18, 0xbe, 0xef, 0x78, - 0xb1, 0xe7, 0x37, 0x85, 0xf4, 0xf0, 0x42, 0xc1, 0xd3, 0x84, 0x55, 0xbf, 0xc3, 0xab, 0xf2, 0x93, - 0x4f, 0xfc, 0xc1, 0x92, 0x20, 0xa5, 0x1d, 0x76, 0x7c, 0x9f, 0xd2, 0x2e, 0xf5, 0x4f, 0x1b, 0xf3, - 0xaa, 0x9c, 0xb6, 0xf8, 0x83, 0x25, 0x41, 0xb4, 0x01, 0x20, 0xd7, 0x12, 0x71, 0x85, 0x41, 0xfa, - 0x23, 0xfd, 0x90, 0x5f, 0x57, 0xb5, 0x97, 0x26, 0xe8, 0x59, 0x9b, 0xfc, 0xc7, 0x1a, 0x65, 0x3b, - 0x66, 0x42, 0x58, 0x77, 0xb7, 0xd0, 0xa7, 0xe9, 0x96, 0x76, 0xc2, 0x98, 0xb8, 0x8b, 0x71, 0xda, - 0xa6, 0x7f, 0xb0, 0x88, 0xbd, 0xee, 0x6d, 0x11, 0x7d, 0xfb, 0x0b, 0x22, 0x38, 0xa1, 0x67, 0x7f, - 0xb7, 0x0c, 0xb3, 0xbd, 0xba, 0x4b, 0x97, 0x24, 0x79, 0xe0, 0xc5, 0xcb, 0x54, 0x4c, 0xb2, 0xcc, - 0x25, 0xb9, 0x22, 0xca, 0xb1, 0xc2, 0xa0, 0x6b, 0x23, 0xf2, 0x9a, 0x52, 0x59, 0x1a, 0x4c, 0xd6, - 0x46, 0x9d, 0x95, 0x62, 0x01, 0xa5, 0x78, 0x21, 0x71, 0x22, 0x71, 0x1f, 0xa2, 0xad, 0x21, 0xcc, - 0x4a, 0xb1, 0x80, 0xea, 0x06, 0x91, 0x81, 0x1c, 0x83, 0x88, 0x31, 0x45, 0x83, 0x0f, 0x77, 0x8a, - 0xd0, 0x67, 0x00, 0x36, 0x3c, 0xdf, 0x8b, 0x36, 0x19, 0xf5, 0xa1, 0xbe, 0xa9, 0x2b, 0x21, 0x6b, - 0x55, 0x51, 0xc1, 0x1a, 0x45, 0xf4, 0x12, 0x8c, 0xaa, 0xed, 0xb9, 0x56, 0x9d, 0x1d, 0x36, 0x6d, - 0xe8, 0x09, 0xaf, 0xaa, 0x62, 0x1d, 0xcf, 0x7e, 0x27, 0xbd, 0x5e, 0xc4, 0xae, 0xd0, 0xe6, 0xd7, - 0x2a, 0x3a, 0xbf, 0xa5, 0x83, 0xe7, 0xd7, 0xfe, 0x83, 0x32, 0x4c, 0x1a, 0x8d, 0x75, 0xa2, 0x02, - 0x1c, 0xed, 0x35, 0x7a, 0x60, 0x39, 0x31, 0x11, 0x7b, 0xf2, 0x5c, 0x3f, 0x9b, 0x46, 0x3f, 0xde, - 0xe8, 0x5e, 0xe0, 0x94, 0xd0, 0x26, 0x54, 0x5a, 0x4e, 0xc4, 0x4c, 0x2a, 0x44, 0xec, 0xc5, 0xfe, - 0xc8, 0x26, 0xea, 0x87, 0x13, 0xc5, 0xda, 0xe9, 0xc1, 0x5b, 0x49, 0x88, 0xd3, 0xd3, 0x96, 0x0a, - 0x3b, 0xf2, 0x12, 0x4e, 0x75, 0x87, 0x4a, 0x44, 0x3b, 0x98, 0xc3, 0xd0, 0x25, 0x18, 0x0b, 0x09, - 0x5b, 0x29, 0xcb, 0x54, 0x9e, 0x63, 0x4b, 0x6f, 0x30, 0x11, 0xfc, 0xb0, 0x06, 0xc3, 0x06, 0x66, - 0x22, 0xf7, 0x0f, 0x1d, 0x20, 0xf7, 0x3f, 0x03, 0xc3, 0xec, 0x87, 0x5a, 0x15, 0xea, 0x0b, 0xad, - 0xf1, 0x62, 0x2c, 0xe1, 0xe9, 0x45, 0x34, 0x52, 0x70, 0x11, 0x3d, 0x0b, 0x13, 0x55, 0x87, 0x6c, - 0x05, 0xfe, 0x8a, 0xef, 0xb6, 0x03, 0xcf, 0x8f, 0xd1, 0x2c, 0x0c, 0xb0, 0xf3, 0x84, 0xef, 0xf7, - 0x01, 0x4a, 0x01, 0x0f, 0x50, 0xd9, 0xdd, 0xfe, 0xe3, 0x12, 0x8c, 0x57, 0x49, 0x8b, 0xc4, 0x84, - 0xeb, 0x3d, 0x11, 0x5a, 0x05, 0xd4, 0x0c, 0x9d, 0x06, 0xa9, 0x91, 0xd0, 0x0b, 0xdc, 0x3a, 0x69, - 0x04, 0x3e, 0xbb, 0xbb, 0xa2, 0x07, 0xe4, 0xa9, 0xbd, 0xdd, 0x79, 0x74, 0xb9, 0x0b, 0x8a, 0x33, - 0x6a, 0x20, 0x17, 0xc6, 0xdb, 0x21, 0x31, 0xec, 0x86, 0x56, 0xbe, 0xa8, 0x51, 0xd3, 0xab, 0x70, - 0x69, 0xd8, 0x28, 0xc2, 0x26, 0x51, 0xf4, 0x09, 0x98, 0x0a, 0xc2, 0xf6, 0xa6, 0xe3, 0x57, 0x49, - 0x9b, 0xf8, 0x2e, 0x55, 0x01, 0x84, 0xb5, 0x63, 0x66, 0x6f, 0x77, 0x7e, 0xea, 0x66, 0x0a, 0x86, - 0xbb, 0xb0, 0xd1, 0x1b, 0x30, 0xdd, 0x0e, 0x83, 0xb6, 0xd3, 0x64, 0x4b, 0x46, 0x48, 0x2b, 0x9c, - 0x37, 0x9d, 0xdb, 0xdb, 0x9d, 0x9f, 0xae, 0xa5, 0x81, 0xfb, 0xbb, 0xf3, 0x27, 0xd8, 0x94, 0xd1, - 0x92, 0x04, 0x88, 0xbb, 0xc9, 0xd8, 0xef, 0xc2, 0xc9, 0x6a, 0x70, 0xdf, 0xbf, 0xef, 0x84, 0xee, - 0x62, 0x6d, 0x4d, 0x33, 0x4e, 0xbc, 0x2e, 0x95, 0x5f, 0x7e, 0x27, 0x98, 0x73, 0xb2, 0x69, 0x34, - 0xb8, 0xda, 0xb1, 0xea, 0xb5, 0x48, 0x0f, 0x73, 0xc8, 0x3f, 0x2a, 0x19, 0x6d, 0x26, 0xf8, 0xea, - 0xee, 0xc2, 0xea, 0x79, 0x77, 0xf1, 0x69, 0x18, 0xd9, 0xf0, 0x48, 0xcb, 0xc5, 0x64, 0x43, 0x7c, - 0xad, 0x0b, 0x45, 0x2e, 0x77, 0x56, 0x69, 0x1d, 0x69, 0x1d, 0xe3, 0x4a, 0xf4, 0xaa, 0x20, 0x83, - 0x15, 0x41, 0xd4, 0x81, 0x29, 0xa9, 0x87, 0x49, 0xa8, 0xd8, 0xec, 0x2f, 0x14, 0x53, 0xf3, 0xcc, - 0x66, 0xd8, 0xe7, 0xc5, 0x29, 0x82, 0xb8, 0xab, 0x09, 0xaa, 0x3f, 0x6f, 0xd1, 0xa3, 0x6e, 0x80, - 0x2d, 0x7d, 0xa6, 0x3f, 0x33, 0x53, 0x00, 0x2b, 0xb5, 0x7f, 0xc5, 0x82, 0x47, 0xba, 0x66, 0x4b, - 0xd8, 0x49, 0x8e, 0xec, 0x1b, 0xa5, 0x8d, 0x15, 0xa5, 0x7c, 0x63, 0x85, 0x7d, 0x13, 0x66, 0x56, - 0xb6, 0xda, 0xf1, 0x4e, 0xd5, 0x33, 0xaf, 0x5c, 0x5e, 0x86, 0xa1, 0x2d, 0xe2, 0x7a, 0x9d, 0x2d, - 0xf1, 0x59, 0xe7, 0xe5, 0xb9, 0x70, 0x9d, 0x95, 0xee, 0xef, 0xce, 0x8f, 0xd7, 0xe3, 0x20, 0x74, - 0x9a, 0x84, 0x17, 0x60, 0x81, 0x6e, 0xff, 0xc8, 0x82, 0x49, 0xc9, 0x1f, 0x16, 0x5d, 0x37, 0x24, - 0x51, 0x84, 0xe6, 0xa0, 0xe4, 0xb5, 0x05, 0x21, 0x10, 0x84, 0x4a, 0x6b, 0x35, 0x5c, 0xf2, 0xda, - 0xe8, 0x0d, 0xa8, 0xf0, 0x9b, 0xba, 0x64, 0x71, 0xf4, 0x79, 0xf3, 0xc7, 0x74, 0xc3, 0x75, 0x49, - 0x03, 0x27, 0xe4, 0xa4, 0x94, 0xcc, 0x4e, 0x9e, 0xb2, 0x79, 0x6f, 0x74, 0x45, 0x94, 0x63, 0x85, - 0x81, 0xce, 0xc2, 0x88, 0x1f, 0xb8, 0xfc, 0x32, 0x95, 0xef, 0x53, 0xb6, 0xe4, 0x6e, 0x88, 0x32, - 0xac, 0xa0, 0xf6, 0x57, 0x2c, 0x18, 0x93, 0x63, 0x2c, 0x28, 0xb0, 0xd3, 0x4d, 0x92, 0x08, 0xeb, - 0xc9, 0x26, 0xa1, 0x02, 0x37, 0x83, 0x18, 0x72, 0x76, 0xb9, 0x1f, 0x39, 0xdb, 0xfe, 0xb5, 0x12, - 0x4c, 0xc8, 0xee, 0xd4, 0x3b, 0x77, 0x23, 0x42, 0xc5, 0x90, 0x8a, 0xc3, 0x27, 0x9f, 0xc8, 0x75, - 0xf6, 0x7c, 0x9e, 0x2e, 0x66, 0x7c, 0xb3, 0x44, 0xcc, 0x59, 0x94, 0x74, 0x70, 0x42, 0x12, 0x6d, - 0xc3, 0xb4, 0x1f, 0xc4, 0xec, 0x78, 0x53, 0xf0, 0x62, 0x37, 0x1d, 0xe9, 0x76, 0x1e, 0x15, 0xed, - 0x4c, 0xdf, 0x48, 0xd3, 0xc3, 0xdd, 0x4d, 0xa0, 0x9b, 0xd2, 0xc6, 0x54, 0x66, 0x6d, 0x3d, 0x5b, - 0xac, 0xad, 0xde, 0x26, 0x26, 0xfb, 0xb7, 0x2d, 0xa8, 0x48, 0xb4, 0xe3, 0xb8, 0xf2, 0xba, 0x03, - 0xc3, 0x11, 0xfb, 0x44, 0x72, 0xba, 0xce, 0x15, 0x1b, 0x02, 0xff, 0xae, 0xc9, 0x99, 0xce, 0xff, - 0x47, 0x58, 0x52, 0x63, 0xc6, 0x76, 0x35, 0x90, 0xf7, 0x9d, 0xb1, 0x5d, 0xf5, 0xac, 0xf7, 0xcd, - 0xd6, 0xb8, 0x61, 0x0d, 0xa0, 0x82, 0x69, 0x3b, 0x24, 0x1b, 0xde, 0x83, 0xb4, 0x60, 0x5a, 0x63, - 0xa5, 0x58, 0x40, 0xd1, 0x06, 0x8c, 0x35, 0xa4, 0x39, 0x3a, 0x61, 0x21, 0x1f, 0x2e, 0x68, 0xfb, - 0x57, 0xd7, 0x48, 0xdc, 0x9b, 0x69, 0x59, 0xa3, 0x84, 0x0d, 0xba, 0x94, 0x4f, 0x25, 0x37, 0xe5, - 0xe5, 0x82, 0x86, 0x9b, 0x90, 0xc4, 0x49, 0x0b, 0x3d, 0x2f, 0xc9, 0xed, 0x6f, 0x58, 0x30, 0xc4, - 0xed, 0x97, 0xc5, 0x8c, 0xc0, 0xda, 0x05, 0x59, 0x32, 0x9f, 0xb7, 0x69, 0xa1, 0xb8, 0x2f, 0x43, - 0x77, 0xa0, 0xc2, 0x7e, 0x30, 0x5b, 0x4c, 0xb9, 0x88, 0x6b, 0x17, 0x6f, 0x5f, 0xef, 0xea, 0x6d, - 0x49, 0x00, 0x27, 0xb4, 0xec, 0xef, 0x97, 0x29, 0xeb, 0x4b, 0x50, 0x8d, 0xb3, 0xdd, 0x3a, 0x8e, - 0xb3, 0xbd, 0x74, 0xf4, 0x67, 0xfb, 0xbb, 0x30, 0xd9, 0xd0, 0x2e, 0xe8, 0x92, 0x2f, 0x7e, 0xb1, - 0xe0, 0xb2, 0xd2, 0x6e, 0xf5, 0xb8, 0xbd, 0x6e, 0xd9, 0x24, 0x87, 0xd3, 0xf4, 0x11, 0x81, 0x31, - 0xbe, 0x1e, 0x44, 0x7b, 0x03, 0xac, 0xbd, 0xf3, 0x45, 0x56, 0x98, 0xde, 0x18, 0x5b, 0xc5, 0x75, - 0x8d, 0x10, 0x36, 0xc8, 0xda, 0xbf, 0x34, 0x08, 0x83, 0x2b, 0xdb, 0xc4, 0x8f, 0x8f, 0x81, 0xd5, - 0x6d, 0xc1, 0x84, 0xe7, 0x6f, 0x07, 0xad, 0x6d, 0xe2, 0x72, 0xf8, 0xe1, 0x8e, 0xf7, 0x53, 0xa2, - 0x91, 0x89, 0x35, 0x83, 0x18, 0x4e, 0x11, 0x3f, 0x0a, 0x4b, 0xc1, 0x6b, 0x30, 0xc4, 0x57, 0x86, - 0x30, 0x13, 0xe4, 0xd8, 0xf3, 0xd9, 0xc4, 0x8a, 0x1d, 0x94, 0xd8, 0x33, 0xf8, 0x55, 0x82, 0x20, - 0x84, 0xde, 0x81, 0x89, 0x0d, 0x2f, 0x8c, 0x62, 0xaa, 0xec, 0x47, 0xb1, 0xb3, 0xd5, 0x3e, 0x84, - 0x8d, 0x40, 0xcd, 0xc8, 0xaa, 0x41, 0x09, 0xa7, 0x28, 0xa3, 0x26, 0x8c, 0x53, 0x15, 0x35, 0x69, - 0x6a, 0xb8, 0xef, 0xa6, 0x94, 0x89, 0xf0, 0x9a, 0x4e, 0x08, 0x9b, 0x74, 0x29, 0x4b, 0x6a, 0x30, - 0x95, 0x76, 0x84, 0x49, 0x37, 0x8a, 0x25, 0x71, 0x5d, 0x96, 0xc3, 0x28, 0x67, 0x63, 0x9e, 0x32, - 0x15, 0x93, 0xb3, 0x25, 0xfe, 0x30, 0xf6, 0xb7, 0xe8, 0x59, 0x4c, 0xe7, 0xf0, 0x18, 0x8e, 0xaf, - 0x2b, 0xe6, 0xf1, 0xf5, 0x64, 0x81, 0x2f, 0xdb, 0xe3, 0xe8, 0x7a, 0x1b, 0x46, 0xb5, 0x0f, 0x8f, - 0xce, 0x43, 0xa5, 0x21, 0x9d, 0x39, 0x04, 0x17, 0x57, 0xa2, 0x94, 0xf2, 0xf2, 0xc0, 0x09, 0x0e, - 0x9d, 0x17, 0x2a, 0x82, 0xa6, 0x5d, 0xbf, 0xa8, 0x80, 0x8a, 0x19, 0xc4, 0x7e, 0x01, 0x60, 0xe5, - 0x01, 0x69, 0x2c, 0x72, 0x15, 0x4f, 0xbb, 0xdf, 0xb3, 0x7a, 0xdf, 0xef, 0xd9, 0xdf, 0xb4, 0x60, - 0x62, 0x75, 0xd9, 0x90, 0xe9, 0x17, 0x00, 0xb8, 0x6c, 0x7c, 0xe7, 0xce, 0x0d, 0x69, 0xbf, 0xe6, - 0x46, 0x46, 0x55, 0x8a, 0x35, 0x0c, 0xf4, 0x28, 0x94, 0x5b, 0x1d, 0x5f, 0x88, 0xac, 0xc3, 0x7b, - 0xbb, 0xf3, 0xe5, 0x6b, 0x1d, 0x1f, 0xd3, 0x32, 0xcd, 0xc7, 0xaa, 0x5c, 0xd8, 0xc7, 0x2a, 0xdf, - 0x41, 0xf9, 0x6b, 0x65, 0x98, 0x5a, 0x6d, 0x91, 0x07, 0x46, 0xaf, 0x9f, 0x86, 0x21, 0x37, 0xf4, - 0xb6, 0x49, 0x98, 0x16, 0x04, 0xaa, 0xac, 0x14, 0x0b, 0x68, 0x61, 0xb7, 0xaf, 0xb7, 0xba, 0x0f, - 0xf2, 0xa3, 0x73, 0x79, 0xcb, 0x1d, 0x33, 0xda, 0x80, 0x61, 0x7e, 0x1f, 0x1c, 0xcd, 0x0e, 0xb2, - 0xa5, 0xf8, 0xca, 0xc1, 0x9d, 0x49, 0xcf, 0xcf, 0x82, 0xb0, 0xaf, 0x70, 0x87, 0x1b, 0xc5, 0xcb, - 0x44, 0x29, 0x96, 0xc4, 0xe7, 0x3e, 0x06, 0x63, 0x3a, 0x66, 0x5f, 0x9e, 0x37, 0x7f, 0xd9, 0x82, - 0x13, 0xab, 0xad, 0xa0, 0x71, 0x2f, 0xe5, 0x97, 0xf7, 0x12, 0x8c, 0xd2, 0xcd, 0x14, 0x19, 0x4e, - 0xab, 0x86, 0x43, 0xaf, 0x00, 0x61, 0x1d, 0x4f, 0xab, 0x76, 0xeb, 0xd6, 0x5a, 0x35, 0xcb, 0x0f, - 0x58, 0x80, 0xb0, 0x8e, 0x67, 0xff, 0xae, 0x05, 0x8f, 0x5f, 0x5e, 0x5e, 0xa9, 0x91, 0x30, 0xf2, - 0xa2, 0x98, 0xf8, 0x71, 0x97, 0x2b, 0x32, 0x95, 0x19, 0x5d, 0xad, 0x2b, 0x89, 0xcc, 0x58, 0x65, - 0xbd, 0x10, 0xd0, 0xf7, 0x8b, 0x3f, 0xfe, 0x37, 0x2c, 0x38, 0x71, 0xd9, 0x8b, 0x31, 0x69, 0x07, - 0x69, 0x57, 0xe0, 0x90, 0xb4, 0x83, 0xc8, 0x8b, 0x83, 0x70, 0x27, 0xed, 0x0a, 0x8c, 0x15, 0x04, - 0x6b, 0x58, 0xbc, 0xe5, 0x6d, 0x2f, 0xa2, 0x3d, 0x2d, 0x99, 0xaa, 0x2e, 0x16, 0xe5, 0x58, 0x61, - 0xd0, 0x81, 0xb9, 0x5e, 0xc8, 0x44, 0x86, 0x1d, 0xb1, 0x83, 0xd5, 0xc0, 0xaa, 0x12, 0x80, 0x13, - 0x1c, 0xfb, 0xef, 0x58, 0x70, 0xf2, 0x72, 0xab, 0x13, 0xc5, 0x24, 0xdc, 0x88, 0x8c, 0xce, 0xbe, - 0x00, 0x15, 0x22, 0x85, 0x7b, 0xd1, 0x57, 0x75, 0x68, 0x28, 0xa9, 0x9f, 0xfb, 0x21, 0x2b, 0xbc, - 0x02, 0xee, 0xae, 0xfd, 0x39, 0x67, 0xfe, 0x46, 0x09, 0xc6, 0xaf, 0xac, 0xaf, 0xd7, 0x2e, 0x93, - 0x58, 0x70, 0xc9, 0x7c, 0xa3, 0x14, 0xd6, 0x34, 0xf2, 0x83, 0x84, 0x9f, 0x4e, 0xec, 0xb5, 0x16, - 0x78, 0x84, 0xc9, 0xc2, 0x9a, 0x1f, 0xdf, 0x0c, 0xeb, 0x71, 0xe8, 0xf9, 0xcd, 0x4c, 0x1d, 0x5e, - 0xf2, 0xf2, 0x72, 0x2f, 0x5e, 0x8e, 0x5e, 0x80, 0x21, 0x16, 0xe2, 0x22, 0x85, 0x8f, 0x0f, 0x2a, - 0x39, 0x81, 0x95, 0xee, 0xef, 0xce, 0x57, 0x6e, 0xe1, 0x35, 0xfe, 0x07, 0x0b, 0x54, 0xf4, 0x16, - 0x8c, 0x6e, 0xc6, 0x71, 0xfb, 0x0a, 0x71, 0x5c, 0x12, 0x4a, 0x3e, 0x71, 0xf6, 0x60, 0x3e, 0x41, - 0xa7, 0x83, 0x57, 0x48, 0xb6, 0x56, 0x52, 0x16, 0x61, 0x9d, 0xa2, 0x5d, 0x07, 0x48, 0x60, 0x0f, - 0x49, 0x07, 0xb1, 0x7f, 0xbe, 0x04, 0xc3, 0x57, 0x1c, 0xdf, 0x6d, 0x91, 0x10, 0xad, 0xc2, 0x00, - 0x79, 0x40, 0x1a, 0xe2, 0x20, 0xcf, 0xe9, 0x7a, 0x72, 0xd8, 0x71, 0xbb, 0x1a, 0xfd, 0x8f, 0x59, - 0x7d, 0x84, 0x61, 0x98, 0xf6, 0xfb, 0xb2, 0xf2, 0x12, 0x7f, 0x2e, 0x7f, 0x16, 0xd4, 0xa2, 0xe0, - 0x27, 0xa5, 0x28, 0xc2, 0x92, 0x10, 0xb3, 0x40, 0x35, 0xda, 0x75, 0xca, 0xde, 0xe2, 0x62, 0x9a, - 0xdd, 0xfa, 0x72, 0x8d, 0xa3, 0x0b, 0xba, 0xdc, 0x02, 0x25, 0x0b, 0x71, 0x42, 0xce, 0x5e, 0x87, - 0x0a, 0xfd, 0xf8, 0x8b, 0x2d, 0xcf, 0x39, 0xd8, 0x0c, 0xf6, 0x1c, 0x54, 0xa4, 0x21, 0x2a, 0x12, - 0x2e, 0xe7, 0x8c, 0xaa, 0xb4, 0x53, 0x45, 0x38, 0x81, 0xdb, 0x97, 0x60, 0x86, 0xdd, 0xf2, 0x3a, - 0xf1, 0xa6, 0xb1, 0x17, 0x73, 0x17, 0xbd, 0xfd, 0xed, 0x01, 0x98, 0x5e, 0xab, 0x2f, 0xd7, 0x4d, - 0x8b, 0xe4, 0x25, 0x18, 0xe3, 0xc7, 0x3e, 0x5d, 0xca, 0x4e, 0x4b, 0xd4, 0x57, 0x37, 0x13, 0xeb, - 0x1a, 0x0c, 0x1b, 0x98, 0xe8, 0x71, 0x28, 0x7b, 0xef, 0xfa, 0x69, 0x5f, 0xc1, 0xb5, 0xd7, 0x6e, - 0x60, 0x5a, 0x4e, 0xc1, 0x54, 0x82, 0xe0, 0xac, 0x53, 0x81, 0x95, 0x14, 0xf1, 0x2a, 0x4c, 0x78, - 0x51, 0x23, 0xf2, 0xd6, 0x7c, 0xca, 0x57, 0x9c, 0x86, 0xdc, 0x14, 0x89, 0xc8, 0x4f, 0xbb, 0xaa, - 0xa0, 0x38, 0x85, 0xad, 0xf1, 0xf1, 0xc1, 0xc2, 0x52, 0x48, 0xae, 0x13, 0x3a, 0x15, 0xb0, 0xda, - 0x6c, 0x74, 0x11, 0xf3, 0x3c, 0x12, 0x02, 0x16, 0x1f, 0x70, 0x84, 0x25, 0x0c, 0x5d, 0x86, 0xe9, - 0xc6, 0xa6, 0xd3, 0x5e, 0xec, 0xc4, 0x9b, 0x55, 0x2f, 0x6a, 0x04, 0xdb, 0x24, 0xdc, 0x61, 0x02, - 0xf0, 0x48, 0x62, 0xd3, 0x52, 0x80, 0xe5, 0x2b, 0x8b, 0x35, 0x8a, 0x89, 0xbb, 0xeb, 0x98, 0x02, - 0x09, 0x1c, 0x81, 0x40, 0xb2, 0x08, 0x93, 0xb2, 0xd5, 0x3a, 0x89, 0xd8, 0x11, 0x31, 0xca, 0xfa, - 0xa9, 0xc2, 0x7f, 0x44, 0xb1, 0xea, 0x65, 0x1a, 0xdf, 0x7e, 0x07, 0x2a, 0xca, 0x53, 0x4e, 0x3a, - 0x88, 0x5a, 0x3d, 0x1c, 0x44, 0xf3, 0x99, 0xbb, 0xb4, 0x9d, 0x97, 0x33, 0x6d, 0xe7, 0xff, 0xc4, - 0x82, 0xc4, 0xd5, 0x07, 0x61, 0xa8, 0xb4, 0x03, 0x76, 0xcf, 0x16, 0xca, 0x0b, 0xed, 0xa7, 0x72, - 0xf6, 0x3c, 0xe7, 0x39, 0x7c, 0x42, 0x6a, 0xb2, 0x2e, 0x4e, 0xc8, 0xa0, 0x6b, 0x30, 0xdc, 0x0e, - 0x49, 0x3d, 0x66, 0xd1, 0x1d, 0x7d, 0x50, 0xe4, 0x0b, 0x81, 0xd7, 0xc4, 0x92, 0x84, 0xfd, 0x2f, - 0x2c, 0x80, 0x6b, 0xde, 0x96, 0x17, 0x63, 0xc7, 0x6f, 0x92, 0x63, 0x50, 0xac, 0x6f, 0xc0, 0x40, - 0xd4, 0x26, 0x8d, 0x62, 0x37, 0xa5, 0x49, 0xcf, 0xea, 0x6d, 0xd2, 0x48, 0x3e, 0x07, 0xfd, 0x87, - 0x19, 0x1d, 0xfb, 0x7b, 0x00, 0x13, 0x09, 0x1a, 0x55, 0x6e, 0xd0, 0xf3, 0x46, 0x58, 0xc3, 0xa3, - 0xa9, 0xb0, 0x86, 0x0a, 0xc3, 0xd6, 0x22, 0x19, 0x62, 0x28, 0x6f, 0x39, 0x0f, 0x84, 0x2e, 0xf5, - 0x52, 0xd1, 0x0e, 0xd1, 0x96, 0x16, 0xae, 0x3b, 0x0f, 0xb8, 0xe8, 0xfa, 0x9c, 0x5c, 0x48, 0xd7, - 0x9d, 0x07, 0xfb, 0xfc, 0x3e, 0x94, 0x71, 0x27, 0xaa, 0xbc, 0x7d, 0xe1, 0x4f, 0x93, 0xff, 0xec, - 0x18, 0xa2, 0xcd, 0xb1, 0x56, 0x3d, 0x5f, 0x98, 0x82, 0xfb, 0x6c, 0xd5, 0xf3, 0xd3, 0xad, 0x7a, - 0x7e, 0x81, 0x56, 0x3d, 0xe6, 0xff, 0x3b, 0x2c, 0x6e, 0x50, 0x98, 0xf3, 0xe4, 0xe8, 0xc5, 0x8f, - 0xf6, 0xd5, 0xb4, 0xb8, 0x8a, 0xe1, 0xcd, 0x9f, 0x97, 0xf2, 0xba, 0x28, 0xcd, 0xed, 0x82, 0x6c, - 0x1a, 0xfd, 0x5d, 0x0b, 0x26, 0xc4, 0x6f, 0x4c, 0xde, 0xed, 0x90, 0x28, 0x16, 0x72, 0xc1, 0x27, - 0x0e, 0xd3, 0x1b, 0x41, 0x82, 0x77, 0xea, 0x23, 0x92, 0xfd, 0x9a, 0xc0, 0xdc, 0xbe, 0xa5, 0xfa, - 0x83, 0xbe, 0x67, 0xc1, 0xcc, 0x96, 0xf3, 0x80, 0xb7, 0xc8, 0xcb, 0xb0, 0x13, 0x7b, 0x81, 0x70, - 0x10, 0x5d, 0xed, 0x77, 0x9d, 0x74, 0x11, 0xe2, 0xdd, 0x95, 0xbe, 0x5f, 0x33, 0x59, 0x28, 0xb9, - 0x9d, 0xce, 0xec, 0xe1, 0xdc, 0x06, 0x8c, 0xc8, 0x85, 0x99, 0xa1, 0x29, 0x55, 0x75, 0xf1, 0x27, - 0xc7, 0x2e, 0xb1, 0x20, 0xad, 0x8b, 0x0b, 0xaf, 0x75, 0x1c, 0x3f, 0xf6, 0xe2, 0x1d, 0x4d, 0xb3, - 0x62, 0xed, 0x88, 0xa5, 0x78, 0xa4, 0xed, 0xbc, 0x03, 0x63, 0xfa, 0xba, 0x3b, 0xd2, 0xb6, 0xde, - 0x85, 0x13, 0x19, 0xab, 0xea, 0x48, 0x9b, 0xbc, 0x0f, 0x8f, 0xf6, 0x5c, 0x1f, 0x47, 0xd9, 0xb0, - 0xfd, 0x1b, 0x96, 0xce, 0x3a, 0x8f, 0xc1, 0x6e, 0x75, 0xdd, 0xb4, 0x5b, 0x9d, 0x2d, 0xba, 0x87, - 0x7a, 0x18, 0xaf, 0x36, 0xf4, 0xee, 0xd3, 0x23, 0x01, 0xad, 0xc3, 0x50, 0x8b, 0x96, 0xc8, 0x6b, - 0xc3, 0x73, 0xfd, 0xec, 0xd2, 0x44, 0x02, 0x63, 0xe5, 0x11, 0x16, 0xb4, 0xec, 0xef, 0x59, 0x30, - 0xf0, 0x17, 0x18, 0x74, 0xd5, 0x45, 0x5a, 0xa4, 0x1b, 0x58, 0xc0, 0xce, 0xfd, 0x95, 0x07, 0x31, - 0xf1, 0x23, 0x26, 0xc6, 0x67, 0x4e, 0xd1, 0xff, 0x2e, 0xc1, 0x28, 0x6d, 0x4a, 0xfa, 0xb1, 0xbc, - 0x02, 0xe3, 0x2d, 0xe7, 0x2e, 0x69, 0x49, 0x9b, 0x7b, 0x5a, 0xe9, 0xbd, 0xa6, 0x03, 0xb1, 0x89, - 0x4b, 0x2b, 0x6f, 0xe8, 0x57, 0x12, 0x42, 0x48, 0x52, 0x95, 0x8d, 0xfb, 0x0a, 0x6c, 0xe2, 0x52, - 0xad, 0xeb, 0xbe, 0x13, 0x37, 0x36, 0x85, 0x42, 0xac, 0xba, 0x7b, 0x87, 0x16, 0x62, 0x0e, 0xa3, - 0xc2, 0x9e, 0x5c, 0xb1, 0xb7, 0x49, 0xc8, 0x84, 0x3d, 0x2e, 0x54, 0x2b, 0x61, 0x0f, 0x9b, 0x60, - 0x9c, 0xc6, 0x47, 0x1f, 0x83, 0x09, 0x3a, 0x39, 0x41, 0x27, 0x96, 0x5e, 0x3a, 0x83, 0xcc, 0x4b, - 0x87, 0x39, 0x79, 0xaf, 0x1b, 0x10, 0x9c, 0xc2, 0x44, 0x35, 0x98, 0xf1, 0xfc, 0x46, 0xab, 0xe3, - 0x92, 0x5b, 0xbe, 0xe7, 0x7b, 0xb1, 0xe7, 0xb4, 0xbc, 0xcf, 0x12, 0x57, 0x88, 0xdd, 0xca, 0xa1, - 0x6a, 0x2d, 0x03, 0x07, 0x67, 0xd6, 0xb4, 0xdf, 0x82, 0x13, 0xd7, 0x02, 0xc7, 0x5d, 0x72, 0x5a, - 0x8e, 0xdf, 0x20, 0xe1, 0x9a, 0xdf, 0xcc, 0xf5, 0x29, 0xd0, 0xef, 0xfd, 0x4b, 0x79, 0xf7, 0xfe, - 0x76, 0x08, 0x48, 0x6f, 0x40, 0x78, 0xac, 0xbd, 0x09, 0xc3, 0x1e, 0x6f, 0x4a, 0x6c, 0x84, 0x0b, - 0x79, 0x32, 0x79, 0x57, 0x1f, 0x35, 0x0f, 0x2c, 0x5e, 0x80, 0x25, 0x49, 0xaa, 0xc1, 0x65, 0x09, - 0xf1, 0xf9, 0xaa, 0xb7, 0xfd, 0x57, 0x2c, 0x98, 0xbc, 0x91, 0x8a, 0x33, 0x7e, 0x1a, 0x86, 0x78, - 0x82, 0x8b, 0xb4, 0xdd, 0xab, 0xce, 0x4a, 0xb1, 0x80, 0x3e, 0x74, 0xb3, 0xcb, 0x2f, 0x96, 0xa0, - 0xc2, 0x7c, 0x9f, 0xdb, 0x54, 0x1b, 0x3b, 0x7a, 0xc1, 0xf7, 0xba, 0x21, 0xf8, 0xe6, 0xa8, 0xfe, - 0xaa, 0x63, 0xbd, 0xe4, 0x5e, 0x74, 0x4b, 0xc5, 0xdf, 0x16, 0xd2, 0xfa, 0x13, 0x82, 0x3c, 0x46, - 0x73, 0xc2, 0x0c, 0xd7, 0x95, 0xb1, 0xb9, 0xec, 0x26, 0x5e, 0xe1, 0xbe, 0xef, 0x6e, 0xe2, 0x55, - 0xcf, 0x7a, 0xb0, 0xbb, 0x9a, 0xd6, 0x79, 0x76, 0x20, 0xfc, 0x2c, 0xf3, 0x68, 0x65, 0x9b, 0x51, - 0x85, 0xb1, 0xcf, 0x0b, 0x0f, 0x55, 0x51, 0xba, 0xcf, 0x38, 0x97, 0xf8, 0xc7, 0xb3, 0x14, 0x24, - 0x55, 0xec, 0x2b, 0x30, 0x99, 0x9a, 0x3a, 0xf4, 0x12, 0x0c, 0xb6, 0x37, 0x9d, 0x88, 0xa4, 0x9c, - 0x8b, 0x06, 0x6b, 0xb4, 0x70, 0x7f, 0x77, 0x7e, 0x42, 0x55, 0x60, 0x25, 0x98, 0x63, 0xdb, 0x5f, - 0x2c, 0xc1, 0xc0, 0x8d, 0xc0, 0x3d, 0x8e, 0xa5, 0x76, 0xc5, 0x58, 0x6a, 0x4f, 0xe7, 0xa7, 0x45, - 0xe9, 0xb9, 0xca, 0x6a, 0xa9, 0x55, 0x76, 0xb6, 0x00, 0xad, 0x83, 0x17, 0xd8, 0x16, 0x8c, 0xb2, - 0xb4, 0x2b, 0xc2, 0xbb, 0xea, 0x05, 0x43, 0x57, 0x9b, 0x4f, 0xe9, 0x6a, 0x93, 0x1a, 0xaa, 0xa6, - 0xb1, 0x3d, 0x03, 0xc3, 0xc2, 0x9b, 0x27, 0xed, 0xcf, 0x2b, 0x70, 0xb1, 0x84, 0xdb, 0xff, 0xbc, - 0x0c, 0x46, 0x9a, 0x17, 0xf4, 0xdb, 0x16, 0x2c, 0x84, 0x3c, 0x36, 0xca, 0xad, 0x76, 0x42, 0xcf, - 0x6f, 0xd6, 0x1b, 0x9b, 0xc4, 0xed, 0xb4, 0x3c, 0xbf, 0xb9, 0xd6, 0xf4, 0x03, 0x55, 0xbc, 0xf2, - 0x80, 0x34, 0x3a, 0xcc, 0x78, 0x5e, 0x38, 0xbb, 0x8c, 0xba, 0xc9, 0xbe, 0xb8, 0xb7, 0x3b, 0xbf, - 0x80, 0xfb, 0x6a, 0x05, 0xf7, 0xd9, 0x2b, 0xf4, 0x47, 0x16, 0x9c, 0xe7, 0x89, 0x4e, 0x8a, 0x8f, - 0xa4, 0x90, 0x8e, 0x5b, 0x93, 0x44, 0x13, 0x72, 0xeb, 0x24, 0xdc, 0x5a, 0x7a, 0x59, 0x4c, 0xf2, - 0xf9, 0x5a, 0x7f, 0xad, 0xe2, 0x7e, 0xbb, 0x69, 0xff, 0xab, 0x32, 0x8c, 0xd3, 0xf9, 0x4c, 0x32, - 0x15, 0xbc, 0x64, 0x2c, 0x93, 0x27, 0x52, 0xcb, 0x64, 0xda, 0x40, 0x7e, 0x38, 0x49, 0x0a, 0x22, - 0x98, 0x6e, 0x39, 0x51, 0x7c, 0x85, 0x38, 0x61, 0x7c, 0x97, 0x38, 0xec, 0xc2, 0x38, 0xed, 0x8c, - 0x52, 0xe0, 0x0e, 0x5a, 0x59, 0xd3, 0xae, 0xa5, 0x89, 0xe1, 0x6e, 0xfa, 0x68, 0x1b, 0x10, 0xbb, - 0x9c, 0x0e, 0x1d, 0x3f, 0xe2, 0x63, 0xf1, 0x84, 0xb1, 0xbd, 0xbf, 0x56, 0xe7, 0x44, 0xab, 0xe8, - 0x5a, 0x17, 0x35, 0x9c, 0xd1, 0x82, 0xe6, 0x7e, 0x30, 0x58, 0xd4, 0xfd, 0x60, 0x28, 0xc7, 0x91, - 0xfe, 0x4b, 0x16, 0x9c, 0xa0, 0x9f, 0xc5, 0x74, 0xba, 0x8e, 0x50, 0x00, 0x93, 0x74, 0xd9, 0xb5, - 0x48, 0x2c, 0xcb, 0xc4, 0xfe, 0xca, 0x91, 0xd5, 0x4d, 0x3a, 0x89, 0x40, 0x78, 0xd5, 0x24, 0x86, - 0xd3, 0xd4, 0xed, 0x6f, 0x5a, 0xc0, 0xdc, 0x20, 0x8f, 0xe1, 0x30, 0xbb, 0x6c, 0x1e, 0x66, 0x76, - 0x3e, 0xc7, 0xe8, 0x71, 0x8e, 0xbd, 0x08, 0x53, 0x14, 0x5a, 0x0b, 0x83, 0x07, 0x3b, 0x52, 0x74, - 0xcf, 0xb7, 0x8f, 0x7f, 0xa9, 0xc4, 0xb7, 0x8d, 0x0a, 0xf2, 0x44, 0x5f, 0xb6, 0x60, 0xa4, 0xe1, - 0xb4, 0x9d, 0x06, 0x4f, 0x92, 0x55, 0xc0, 0xde, 0x63, 0xd4, 0x5f, 0x58, 0x16, 0x75, 0xb9, 0xad, - 0xe2, 0xc3, 0x72, 0xe8, 0xb2, 0x38, 0xd7, 0x3e, 0xa1, 0x1a, 0x9f, 0xbb, 0x07, 0xe3, 0x06, 0xb1, - 0x23, 0x55, 0x6c, 0xbf, 0x6c, 0x71, 0xa6, 0xaf, 0x94, 0x8f, 0xfb, 0x30, 0xed, 0x6b, 0xff, 0x29, - 0x3b, 0x93, 0x92, 0xf1, 0x42, 0x71, 0xb6, 0xce, 0xb8, 0xa0, 0xe6, 0xf2, 0x99, 0x22, 0x88, 0xbb, - 0xdb, 0xb0, 0x7f, 0xd9, 0x82, 0x47, 0x74, 0x44, 0x2d, 0x2a, 0x37, 0xcf, 0x12, 0x5d, 0x85, 0x91, - 0xa0, 0x4d, 0x42, 0x27, 0x51, 0xb4, 0xce, 0xca, 0xf9, 0xbf, 0x29, 0xca, 0xf7, 0x77, 0xe7, 0x67, - 0x74, 0xea, 0xb2, 0x1c, 0xab, 0x9a, 0xc8, 0x86, 0x21, 0x36, 0x2f, 0x91, 0x88, 0xa7, 0x66, 0x49, - 0xa3, 0xd8, 0x4d, 0x57, 0x84, 0x05, 0xc4, 0xfe, 0xeb, 0x16, 0x5f, 0x6e, 0x7a, 0xd7, 0xd1, 0xe7, - 0x60, 0x6a, 0x8b, 0xea, 0x64, 0x2b, 0x0f, 0xda, 0x21, 0xb7, 0xa3, 0xcb, 0x19, 0x7b, 0xa9, 0xf8, - 0x8c, 0x69, 0xc3, 0x5d, 0x9a, 0x15, 0xbd, 0x9f, 0xba, 0x9e, 0x22, 0x8b, 0xbb, 0x1a, 0xb2, 0xff, - 0x7e, 0x89, 0xef, 0x59, 0x26, 0xc3, 0x3d, 0x03, 0xc3, 0xed, 0xc0, 0x5d, 0x5e, 0xab, 0x62, 0x31, - 0x57, 0x8a, 0xe9, 0xd4, 0x78, 0x31, 0x96, 0x70, 0x74, 0x11, 0x80, 0x3c, 0x88, 0x49, 0xe8, 0x3b, - 0x2d, 0x75, 0x37, 0xaf, 0x44, 0xa5, 0x15, 0x05, 0xc1, 0x1a, 0x16, 0xad, 0xd3, 0x0e, 0x83, 0x6d, - 0xcf, 0x65, 0xe1, 0x24, 0x65, 0xb3, 0x4e, 0x4d, 0x41, 0xb0, 0x86, 0x45, 0x35, 0xe1, 0x8e, 0x1f, - 0xf1, 0x63, 0xcc, 0xb9, 0x2b, 0x12, 0x16, 0x8d, 0x24, 0x9a, 0xf0, 0x2d, 0x1d, 0x88, 0x4d, 0x5c, - 0x74, 0x15, 0x86, 0x62, 0x87, 0xdd, 0x38, 0x0f, 0x16, 0x71, 0xdf, 0x59, 0xa7, 0xb8, 0x7a, 0x86, - 0x28, 0x5a, 0x15, 0x0b, 0x12, 0xf6, 0x7f, 0xa8, 0x00, 0x24, 0x52, 0x17, 0xfa, 0x62, 0xf7, 0x86, - 0xff, 0x48, 0x51, 0x91, 0xed, 0xe1, 0xed, 0x76, 0xf4, 0x55, 0x0b, 0x46, 0x9d, 0x56, 0x2b, 0x68, - 0x38, 0x31, 0x9b, 0x9e, 0x52, 0x51, 0xd6, 0x23, 0x7a, 0xb2, 0x98, 0xd4, 0xe5, 0x9d, 0x79, 0x41, - 0xde, 0x02, 0x6b, 0x90, 0xdc, 0xfe, 0xe8, 0x5d, 0x40, 0x1f, 0x96, 0x52, 0x3b, 0xff, 0xc2, 0x73, - 0x69, 0xa9, 0xbd, 0xc2, 0x18, 0xae, 0x26, 0xb0, 0xa3, 0xb7, 0x8c, 0x04, 0x3f, 0x03, 0x45, 0x62, - 0x82, 0x0d, 0x39, 0x24, 0x2f, 0xb7, 0x0f, 0x7a, 0x43, 0xf7, 0x73, 0x1f, 0x2c, 0x12, 0x74, 0xaf, - 0x89, 0xc3, 0x39, 0x3e, 0xee, 0x31, 0x4c, 0xba, 0xe6, 0xc9, 0x2b, 0x7c, 0xf5, 0x2e, 0xe4, 0xb7, - 0x90, 0x3a, 0xb2, 0x93, 0xb3, 0x36, 0x05, 0xc0, 0xe9, 0x26, 0xd0, 0x1b, 0x3c, 0x0a, 0x61, 0xcd, - 0xdf, 0x08, 0x84, 0xbf, 0xde, 0xb9, 0x02, 0xdf, 0x7c, 0x27, 0x8a, 0xc9, 0x16, 0xad, 0x93, 0x1c, - 0xae, 0x37, 0x04, 0x15, 0xac, 0xe8, 0xa1, 0x75, 0x18, 0x62, 0x21, 0x60, 0xd1, 0xec, 0x48, 0x11, - 0xdb, 0x9e, 0x19, 0xf9, 0x9c, 0xec, 0x1f, 0xf6, 0x37, 0xc2, 0x82, 0x16, 0xba, 0x22, 0x73, 0x1f, - 0x44, 0x6b, 0xfe, 0xad, 0x88, 0xb0, 0xdc, 0x07, 0x95, 0xa5, 0x0f, 0x25, 0xc9, 0x0c, 0x78, 0x79, - 0x66, 0x56, 0x44, 0xa3, 0x26, 0x15, 0x6c, 0xc4, 0x7f, 0x99, 0x6c, 0x71, 0x16, 0x8a, 0x74, 0xd4, - 0x4c, 0xcd, 0x98, 0x4c, 0xf6, 0x6d, 0x93, 0x18, 0x4e, 0x53, 0x3f, 0xd6, 0x23, 0x75, 0xce, 0x87, - 0xa9, 0xf4, 0xa6, 0x3c, 0xd2, 0x23, 0xfc, 0xc7, 0x03, 0x30, 0x61, 0x2e, 0x0e, 0x74, 0x1e, 0x2a, - 0x82, 0x88, 0xca, 0xa4, 0xa6, 0xf6, 0xc0, 0x75, 0x09, 0xc0, 0x09, 0x0e, 0xcb, 0x29, 0xc7, 0xaa, - 0x6b, 0x9e, 0x5a, 0x49, 0x4e, 0x39, 0x05, 0xc1, 0x1a, 0x16, 0x95, 0x84, 0xef, 0x06, 0x41, 0xac, - 0x4e, 0x02, 0xb5, 0x6e, 0x96, 0x58, 0x29, 0x16, 0x50, 0x7a, 0x02, 0xdc, 0xa3, 0x1f, 0xb3, 0x65, - 0xda, 0x29, 0xd5, 0x09, 0x70, 0x55, 0x07, 0x62, 0x13, 0x97, 0x9e, 0x68, 0x41, 0xc4, 0x16, 0xa2, - 0x90, 0xb7, 0x13, 0xcf, 0xb7, 0x3a, 0x0f, 0x8b, 0x94, 0x70, 0xf4, 0x29, 0x78, 0x44, 0x45, 0x31, - 0x62, 0x6e, 0xf7, 0x95, 0x2d, 0x0e, 0x19, 0x2a, 0xf3, 0x23, 0xcb, 0xd9, 0x68, 0xb8, 0x57, 0x7d, - 0xf4, 0x2a, 0x4c, 0x08, 0x59, 0x59, 0x52, 0x1c, 0x36, 0x1d, 0x18, 0xae, 0x1a, 0x50, 0x9c, 0xc2, - 0x46, 0x55, 0x98, 0xa2, 0x25, 0x4c, 0x48, 0x95, 0x14, 0x78, 0x34, 0xa6, 0x3a, 0xea, 0xaf, 0xa6, - 0xe0, 0xb8, 0xab, 0x06, 0x5a, 0x84, 0x49, 0x2e, 0xac, 0x50, 0xc5, 0x90, 0x7d, 0x07, 0xe1, 0x64, - 0xab, 0x36, 0xc2, 0x4d, 0x13, 0x8c, 0xd3, 0xf8, 0xe8, 0x12, 0x8c, 0x39, 0x61, 0x63, 0xd3, 0x8b, - 0x49, 0x23, 0xee, 0x84, 0x3c, 0xb3, 0x88, 0xe6, 0x01, 0xb2, 0xa8, 0xc1, 0xb0, 0x81, 0x69, 0x7f, - 0x16, 0x4e, 0x64, 0x78, 0xf4, 0xd3, 0x85, 0xe3, 0xb4, 0x3d, 0x39, 0xa6, 0x94, 0x0f, 0xdb, 0x62, - 0x6d, 0x4d, 0x8e, 0x46, 0xc3, 0xa2, 0xab, 0x93, 0x19, 0xbc, 0xb5, 0xdc, 0xa8, 0x6a, 0x75, 0xae, - 0x4a, 0x00, 0x4e, 0x70, 0xec, 0x3f, 0x01, 0xd0, 0xac, 0x37, 0x05, 0xfc, 0x96, 0x2e, 0xc1, 0x98, - 0x4c, 0xf7, 0xab, 0xe5, 0xcc, 0x54, 0xc3, 0xbc, 0xac, 0xc1, 0xb0, 0x81, 0x49, 0xfb, 0xe6, 0x4b, - 0x9b, 0x54, 0xda, 0x63, 0x4e, 0x19, 0xab, 0x70, 0x82, 0x83, 0xce, 0xc1, 0x48, 0x44, 0x5a, 0x1b, - 0xd7, 0x3c, 0xff, 0x9e, 0x58, 0xd8, 0x8a, 0x33, 0xd7, 0x45, 0x39, 0x56, 0x18, 0x68, 0x09, 0xca, - 0x1d, 0xcf, 0x15, 0x4b, 0x59, 0x8a, 0x0d, 0xe5, 0x5b, 0x6b, 0xd5, 0xfd, 0xdd, 0xf9, 0x27, 0x7a, - 0xe5, 0x3e, 0xa6, 0xfa, 0x79, 0xb4, 0x40, 0xb7, 0x1f, 0xad, 0x9c, 0x65, 0xf9, 0x1f, 0xea, 0xd3, - 0xf2, 0x7f, 0x11, 0x40, 0x8c, 0x5a, 0xae, 0xe5, 0x72, 0xf2, 0xd5, 0x2e, 0x2b, 0x08, 0xd6, 0xb0, - 0xa8, 0x96, 0xdf, 0x08, 0x89, 0x23, 0x15, 0x61, 0xee, 0x69, 0x3e, 0x72, 0x78, 0x2d, 0x7f, 0x39, - 0x4d, 0x0c, 0x77, 0xd3, 0x47, 0x01, 0x4c, 0xbb, 0x22, 0x54, 0x36, 0x69, 0xb4, 0xd2, 0xbf, 0x7b, - 0x3b, 0x73, 0xd2, 0x49, 0x13, 0xc2, 0xdd, 0xb4, 0xd1, 0x67, 0x60, 0x4e, 0x16, 0x76, 0xc7, 0x29, - 0xb3, 0xed, 0x52, 0x5e, 0x3a, 0xbd, 0xb7, 0x3b, 0x3f, 0x57, 0xed, 0x89, 0x85, 0x0f, 0xa0, 0x80, - 0xde, 0x84, 0x21, 0x76, 0x53, 0x14, 0xcd, 0x8e, 0xb2, 0x13, 0xef, 0xc5, 0x22, 0x41, 0x12, 0x74, - 0xd5, 0x2f, 0xb0, 0xfb, 0x26, 0xe1, 0xfe, 0x9b, 0x5c, 0xbf, 0xb1, 0x42, 0x2c, 0x68, 0xa2, 0x36, - 0x8c, 0x3a, 0xbe, 0x1f, 0xc4, 0x0e, 0x17, 0xc4, 0xc6, 0x8a, 0xc8, 0x92, 0x5a, 0x13, 0x8b, 0x49, - 0x5d, 0xde, 0x8e, 0xf2, 0x28, 0xd4, 0x20, 0x58, 0x6f, 0x02, 0xdd, 0x87, 0xc9, 0xe0, 0x3e, 0x65, - 0x98, 0xf2, 0x6a, 0x23, 0x9a, 0x1d, 0x37, 0x07, 0x96, 0x63, 0xa8, 0x35, 0x2a, 0x6b, 0x9c, 0xcc, - 0x24, 0x8a, 0xd3, 0xad, 0xa0, 0x05, 0xc3, 0x5c, 0x3d, 0x91, 0x38, 0xb9, 0x27, 0xe6, 0x6a, 0xdd, - 0x3a, 0xcd, 0x62, 0xe1, 0xb9, 0x63, 0x2b, 0xe3, 0x08, 0x93, 0xa9, 0x58, 0xf8, 0x04, 0x84, 0x75, - 0x3c, 0xb4, 0x09, 0x63, 0xc9, 0x25, 0x55, 0x18, 0xb1, 0x34, 0x3b, 0x9a, 0xdf, 0xd6, 0xc1, 0x83, - 0x5b, 0xd3, 0x6a, 0xf2, 0x90, 0x1d, 0xbd, 0x04, 0x1b, 0x94, 0xe7, 0x3e, 0x0a, 0xa3, 0xda, 0x27, - 0xee, 0xc7, 0x6f, 0x7b, 0xee, 0x55, 0x98, 0x4a, 0x7f, 0xba, 0xbe, 0xfc, 0xbe, 0xff, 0x7b, 0x09, - 0x26, 0x33, 0x6e, 0xa8, 0x58, 0xd2, 0xe3, 0x14, 0x93, 0x4d, 0x72, 0x1c, 0x9b, 0xac, 0xb2, 0x54, - 0x80, 0x55, 0x4a, 0xbe, 0x5d, 0xee, 0xc9, 0xb7, 0x05, 0x7b, 0x1c, 0x78, 0x2f, 0xec, 0xd1, 0x3c, - 0x91, 0x06, 0x0b, 0x9d, 0x48, 0x0f, 0x81, 0xa5, 0x1a, 0x87, 0xda, 0x70, 0x81, 0x43, 0xed, 0x1b, - 0x25, 0x98, 0x4a, 0x7c, 0xdc, 0x45, 0xb6, 0xf1, 0xa3, 0xbf, 0xf0, 0x58, 0x37, 0x2e, 0x3c, 0xf2, - 0x92, 0x89, 0xa7, 0xfa, 0xd7, 0xf3, 0xf2, 0xe3, 0xcd, 0xd4, 0xe5, 0xc7, 0x8b, 0x7d, 0xd2, 0x3d, - 0xf8, 0x22, 0xe4, 0xbb, 0x25, 0x38, 0x99, 0xae, 0xb2, 0xdc, 0x72, 0xbc, 0xad, 0x63, 0x98, 0xaf, - 0x4f, 0x19, 0xf3, 0xf5, 0x72, 0x7f, 0xe3, 0x62, 0x9d, 0xec, 0x39, 0x69, 0x4e, 0x6a, 0xd2, 0x3e, - 0x7a, 0x18, 0xe2, 0x07, 0xcf, 0xdc, 0xef, 0x5b, 0xf0, 0x68, 0x66, 0xbd, 0x63, 0x30, 0xf1, 0xbe, - 0x6e, 0x9a, 0x78, 0x5f, 0x38, 0xc4, 0xe8, 0x7a, 0xd8, 0x7c, 0x7f, 0xa5, 0xdc, 0x63, 0x54, 0xcc, - 0x08, 0x76, 0x13, 0x46, 0x9d, 0x46, 0x83, 0x44, 0xd1, 0xf5, 0xc0, 0x55, 0xf9, 0xbb, 0x9e, 0x67, - 0xa7, 0x58, 0x52, 0xbc, 0xbf, 0x3b, 0x3f, 0x97, 0x26, 0x91, 0x80, 0xb1, 0x4e, 0xc1, 0xcc, 0x2c, - 0x58, 0x3a, 0xa2, 0xcc, 0x82, 0x17, 0x01, 0xb6, 0x95, 0xbe, 0x9c, 0xb6, 0xad, 0x69, 0x9a, 0xb4, - 0x86, 0x85, 0xfe, 0x7f, 0x26, 0x7b, 0x72, 0x07, 0x93, 0x01, 0x33, 0x5c, 0x36, 0xe7, 0xfb, 0xe9, - 0xce, 0x2a, 0x3c, 0x2a, 0x57, 0xd9, 0x21, 0x15, 0x49, 0xf4, 0x09, 0x98, 0x8a, 0x78, 0xee, 0x87, - 0xe5, 0x96, 0x13, 0xb1, 0xe0, 0x0e, 0xc1, 0x4f, 0x59, 0x80, 0x6d, 0x3d, 0x05, 0xc3, 0x5d, 0xd8, - 0xf6, 0x77, 0xca, 0xf0, 0xc1, 0x03, 0x96, 0x2d, 0x5a, 0x34, 0xef, 0x87, 0x9f, 0x4b, 0x5b, 0x9a, - 0xe6, 0x32, 0x2b, 0x1b, 0xa6, 0xa7, 0xd4, 0xd7, 0x2e, 0xbd, 0xe7, 0xaf, 0xfd, 0x35, 0xdd, 0x2e, - 0xc8, 0x7d, 0x4e, 0x2f, 0x1f, 0x7a, 0x63, 0xfe, 0xa4, 0x5e, 0x0b, 0x7c, 0xc1, 0x82, 0x27, 0x32, - 0x87, 0x65, 0xf8, 0xa3, 0x9c, 0x87, 0x4a, 0x83, 0x16, 0x6a, 0xa1, 0x58, 0x49, 0x0c, 0xa4, 0x04, - 0xe0, 0x04, 0xc7, 0x70, 0x3b, 0x29, 0xe5, 0xba, 0x9d, 0xfc, 0x8e, 0x05, 0x33, 0xe9, 0x4e, 0x1c, - 0x03, 0xdf, 0xaa, 0x9b, 0x7c, 0x6b, 0xa1, 0xbf, 0x8f, 0xdf, 0x83, 0x65, 0xfd, 0xe7, 0x09, 0x38, - 0xd5, 0x75, 0xea, 0xf1, 0x59, 0xfc, 0x39, 0x0b, 0xa6, 0x9b, 0x4c, 0x4f, 0xd0, 0xe2, 0xdd, 0xc4, - 0xb8, 0x72, 0x82, 0x04, 0x0f, 0x0c, 0x93, 0xe3, 0x5a, 0x4f, 0x17, 0x0a, 0xee, 0x6e, 0x0c, 0x7d, - 0xc5, 0x82, 0x19, 0xe7, 0x7e, 0xd4, 0xf5, 0x16, 0x8e, 0x58, 0x48, 0xaf, 0xe6, 0x98, 0xe5, 0x72, - 0x5e, 0xd1, 0x59, 0x9a, 0xdd, 0xdb, 0x9d, 0x9f, 0xc9, 0xc2, 0xc2, 0x99, 0xad, 0xd2, 0xef, 0xbb, - 0x29, 0xe2, 0x5e, 0x8a, 0x45, 0x6e, 0x66, 0x45, 0xc9, 0x70, 0xb6, 0x26, 0x21, 0x58, 0x51, 0x44, - 0x6f, 0x43, 0xa5, 0x29, 0x43, 0xdc, 0xd2, 0x6c, 0xb3, 0xc7, 0x34, 0x67, 0x45, 0xc4, 0xf1, 0xb8, - 0x03, 0x05, 0xc2, 0x09, 0x51, 0x74, 0x05, 0xca, 0xfe, 0x46, 0x24, 0x82, 0xc9, 0xf3, 0xbc, 0x8d, - 0x4c, 0x1f, 0x2f, 0x1e, 0x7f, 0x7b, 0x63, 0xb5, 0x8e, 0x29, 0x09, 0x4a, 0x29, 0xbc, 0xeb, 0x0a, - 0x7b, 0x74, 0x0e, 0x25, 0xbc, 0x54, 0xed, 0xa6, 0x84, 0x97, 0xaa, 0x98, 0x92, 0x40, 0x35, 0x18, - 0x64, 0x51, 0x35, 0xc2, 0xd8, 0x9c, 0x93, 0x71, 0xa0, 0x2b, 0x76, 0x88, 0x27, 0xc0, 0x64, 0xc5, - 0x98, 0x13, 0x42, 0xeb, 0x30, 0xd4, 0x60, 0x6f, 0x38, 0x08, 0x2b, 0x40, 0x5e, 0x2e, 0x8e, 0xae, - 0xf7, 0x1e, 0xf8, 0x0d, 0x1b, 0x2f, 0xc7, 0x82, 0x16, 0xa3, 0x4a, 0xda, 0x9b, 0x1b, 0x91, 0x50, - 0xf3, 0xf3, 0xa8, 0x76, 0xbd, 0xc6, 0x21, 0xa8, 0xb2, 0x72, 0x2c, 0x68, 0xa1, 0x2a, 0x94, 0x36, - 0x1a, 0x22, 0xe8, 0x26, 0xc7, 0xc8, 0x6c, 0x06, 0x53, 0x2f, 0x0d, 0xed, 0xed, 0xce, 0x97, 0x56, - 0x97, 0x71, 0x69, 0xa3, 0x81, 0x5e, 0x87, 0xe1, 0x0d, 0x1e, 0x1e, 0x2b, 0x72, 0xe6, 0x5e, 0xc8, - 0x8b, 0xe1, 0xed, 0x8a, 0xa5, 0xe5, 0xb1, 0x25, 0x02, 0x80, 0x25, 0x39, 0x96, 0x4e, 0x50, 0x05, - 0xfc, 0x8a, 0xa4, 0xb9, 0x0b, 0xfd, 0x05, 0x08, 0x0b, 0xed, 0x57, 0x95, 0x62, 0x8d, 0x22, 0x5d, - 0xf3, 0x8e, 0x7c, 0x8e, 0x86, 0x25, 0xcc, 0xcd, 0x5d, 0xf3, 0x99, 0xaf, 0xd7, 0xf0, 0x35, 0xaf, - 0x40, 0x38, 0x21, 0x8a, 0x3a, 0x30, 0xbe, 0x1d, 0xb5, 0x37, 0x89, 0xdc, 0xfa, 0x2c, 0x8b, 0xee, - 0xe8, 0xc5, 0x8f, 0xe7, 0xa4, 0x46, 0x16, 0x55, 0xbc, 0x30, 0xee, 0x38, 0xad, 0x2e, 0x0e, 0xc6, - 0xf2, 0xb7, 0xdd, 0xd6, 0xc9, 0x62, 0xb3, 0x15, 0xfa, 0x49, 0xde, 0xed, 0x04, 0x77, 0x77, 0x62, - 0x22, 0xb2, 0xec, 0xe6, 0x7c, 0x92, 0xd7, 0x38, 0x72, 0xf7, 0x27, 0x11, 0x00, 0x2c, 0xc9, 0xa9, - 0x29, 0x63, 0xdc, 0x78, 0xaa, 0xf0, 0x94, 0x75, 0x8d, 0x21, 0x99, 0x32, 0xc6, 0x7d, 0x13, 0xa2, - 0x8c, 0xeb, 0xb6, 0x37, 0x83, 0x38, 0xf0, 0x53, 0xbc, 0x7f, 0xba, 0x08, 0xd7, 0xad, 0x65, 0xd4, - 0xec, 0xe6, 0xba, 0x59, 0x58, 0x38, 0xb3, 0x55, 0xe4, 0xc3, 0x44, 0x3b, 0x08, 0xe3, 0xfb, 0x41, - 0x28, 0xd7, 0x21, 0x2a, 0xa4, 0x23, 0x1a, 0x75, 0x44, 0xdb, 0xcc, 0x85, 0xd8, 0x84, 0xe0, 0x14, - 0x75, 0xfa, 0xe9, 0xa2, 0x86, 0xd3, 0x22, 0x6b, 0x37, 0x67, 0x4f, 0x14, 0xf9, 0x74, 0x75, 0x8e, - 0xdc, 0xfd, 0xe9, 0x04, 0x00, 0x4b, 0x72, 0xf6, 0x2f, 0x0f, 0x75, 0x0b, 0x0e, 0x4c, 0x35, 0xf8, - 0x6b, 0xdd, 0x77, 0xbe, 0x9f, 0xe8, 0x5f, 0x03, 0x7e, 0x88, 0xb7, 0xbf, 0x5f, 0xb1, 0xe0, 0x54, - 0x3b, 0x53, 0x2c, 0x10, 0x47, 0x6f, 0xbf, 0x8a, 0x34, 0x9f, 0x16, 0x95, 0x0c, 0x3b, 0x1b, 0x8e, - 0x7b, 0xb4, 0x99, 0x16, 0xa6, 0xcb, 0xef, 0x59, 0x98, 0xbe, 0x03, 0x23, 0x4c, 0xfa, 0x4b, 0x52, - 0xdd, 0xf4, 0x99, 0x15, 0x86, 0x1d, 0xe2, 0xcb, 0x82, 0x04, 0x56, 0xc4, 0xe8, 0xc4, 0x3d, 0x9e, - 0x1e, 0x04, 0x26, 0x0c, 0x2c, 0x52, 0x30, 0x72, 0x4d, 0x65, 0x55, 0xcc, 0xc4, 0xe3, 0xb5, 0x83, - 0x90, 0xf7, 0xf3, 0x10, 0xf0, 0xc1, 0x8d, 0xa1, 0x6a, 0x86, 0xaa, 0x34, 0x64, 0x5e, 0xf0, 0xe4, - 0xab, 0x4b, 0xc7, 0x2b, 0xe2, 0xff, 0x03, 0x2b, 0x43, 0x22, 0xe5, 0x6a, 0xd9, 0xc7, 0x4d, 0xb5, - 0xec, 0xe9, 0xb4, 0x5a, 0xd6, 0x65, 0x8c, 0x31, 0x34, 0xb2, 0xe2, 0x29, 0x64, 0x8b, 0xe6, 0xf2, - 0xb1, 0x5b, 0x70, 0x26, 0x8f, 0xdd, 0x31, 0xa7, 0x2f, 0x57, 0x5d, 0x77, 0x26, 0x4e, 0x5f, 0xee, - 0x5a, 0x15, 0x33, 0x48, 0xd1, 0x74, 0x10, 0xf6, 0xcf, 0x97, 0xa0, 0x5c, 0x0b, 0xdc, 0x63, 0x30, - 0x2e, 0x5d, 0x36, 0x8c, 0x4b, 0x4f, 0xe5, 0xbe, 0x68, 0xd8, 0xd3, 0x94, 0x74, 0x33, 0x65, 0x4a, - 0xfa, 0x99, 0x7c, 0x52, 0x07, 0x1b, 0x8e, 0xbe, 0x57, 0x06, 0xfd, 0x4d, 0x46, 0xf4, 0xef, 0x0e, - 0xe3, 0x0b, 0x5c, 0x2e, 0xf6, 0x4c, 0xa3, 0x68, 0x83, 0xf9, 0x8c, 0xc9, 0x98, 0xc4, 0x9f, 0x58, - 0x97, 0xe0, 0x3b, 0xc4, 0x6b, 0x6e, 0xc6, 0xc4, 0x4d, 0x0f, 0xec, 0xf8, 0x5c, 0x82, 0xff, 0xdc, - 0x82, 0xc9, 0x54, 0xeb, 0xa8, 0x95, 0x15, 0xcc, 0x74, 0x48, 0x73, 0xd1, 0x74, 0x6e, 0xf4, 0xd3, - 0x02, 0x80, 0xb2, 0xfa, 0x4b, 0x93, 0x0c, 0x93, 0x4e, 0xd5, 0xb5, 0x40, 0x84, 0x35, 0x0c, 0xf4, - 0x12, 0x8c, 0xc6, 0x41, 0x3b, 0x68, 0x05, 0xcd, 0x9d, 0xab, 0x44, 0x26, 0x2a, 0x51, 0x77, 0x33, - 0xeb, 0x09, 0x08, 0xeb, 0x78, 0xf6, 0xf7, 0xcb, 0x90, 0x7e, 0xd1, 0xf3, 0xff, 0xad, 0xd3, 0x9f, - 0x9c, 0x75, 0xfa, 0x87, 0x16, 0x4c, 0xd1, 0xd6, 0x99, 0x93, 0x8e, 0x74, 0xdd, 0x55, 0xef, 0x59, - 0x58, 0x07, 0xbc, 0x67, 0xf1, 0x34, 0xe5, 0x76, 0x6e, 0xd0, 0x89, 0x85, 0x11, 0x49, 0x63, 0x62, - 0xb4, 0x14, 0x0b, 0xa8, 0xc0, 0x23, 0x61, 0x28, 0x62, 0x9c, 0x74, 0x3c, 0x12, 0x86, 0x58, 0x40, - 0xe5, 0x73, 0x17, 0x03, 0x3d, 0x9e, 0xbb, 0x60, 0xa9, 0xbe, 0x84, 0x63, 0x88, 0x10, 0x2b, 0xb4, - 0x54, 0x5f, 0xd2, 0x63, 0x24, 0xc1, 0xb1, 0xbf, 0x55, 0x86, 0xb1, 0x5a, 0xe0, 0x26, 0x3e, 0xf9, - 0x2f, 0x1a, 0x3e, 0xf9, 0x67, 0x52, 0x3e, 0xf9, 0x53, 0x3a, 0xee, 0xc3, 0x71, 0xc9, 0x17, 0x29, - 0xe1, 0xd8, 0x83, 0x2c, 0x87, 0x74, 0xc7, 0x37, 0x52, 0xc2, 0x29, 0x42, 0xd8, 0xa4, 0xfb, 0xd3, - 0xe4, 0x86, 0xff, 0xbf, 0x2c, 0x98, 0xa8, 0x05, 0x2e, 0x5d, 0xa0, 0x3f, 0x4d, 0xab, 0x51, 0x4f, - 0x24, 0x37, 0x74, 0x40, 0x22, 0xb9, 0x5f, 0xb5, 0x60, 0xb8, 0x16, 0xb8, 0xc7, 0x60, 0x60, 0x5d, - 0x35, 0x0d, 0xac, 0x4f, 0xe4, 0x72, 0xde, 0x1e, 0x36, 0xd5, 0xef, 0x94, 0x61, 0x9c, 0xf6, 0x38, - 0x68, 0xca, 0xef, 0x65, 0xcc, 0x8d, 0x55, 0x60, 0x6e, 0xa8, 0x48, 0x18, 0xb4, 0x5a, 0xc1, 0xfd, - 0xf4, 0xb7, 0x5b, 0x65, 0xa5, 0x58, 0x40, 0xd1, 0x39, 0x18, 0x69, 0x87, 0x64, 0xdb, 0x0b, 0x3a, - 0x51, 0x3a, 0x5e, 0xb2, 0x26, 0xca, 0xb1, 0xc2, 0x40, 0x2f, 0xc2, 0x58, 0xe4, 0xf9, 0x0d, 0x22, - 0xdd, 0x46, 0x06, 0x98, 0xdb, 0x08, 0xcf, 0xd9, 0xa9, 0x95, 0x63, 0x03, 0x0b, 0xdd, 0x81, 0x0a, - 0xfb, 0xcf, 0x76, 0x50, 0xff, 0xef, 0x55, 0xf0, 0xbc, 0x30, 0x92, 0x00, 0x4e, 0x68, 0xa1, 0x8b, - 0x00, 0xb1, 0x74, 0x70, 0x89, 0x44, 0x84, 0xae, 0x92, 0x4b, 0x95, 0xeb, 0x4b, 0x84, 0x35, 0x2c, - 0xf4, 0x1c, 0x54, 0x62, 0xc7, 0x6b, 0x5d, 0xf3, 0x7c, 0x12, 0x09, 0x07, 0x21, 0x91, 0x7f, 0x5b, - 0x14, 0xe2, 0x04, 0x4e, 0xcf, 0x7b, 0x16, 0xff, 0xcd, 0xdf, 0xc2, 0x19, 0x61, 0xd8, 0xec, 0xbc, - 0xbf, 0xa6, 0x4a, 0xb1, 0x86, 0x61, 0x5f, 0x82, 0x93, 0xb5, 0xc0, 0xad, 0x05, 0x61, 0xbc, 0x1a, - 0x84, 0xf7, 0x9d, 0xd0, 0x95, 0xdf, 0x6f, 0x5e, 0xa6, 0x7d, 0xa6, 0x67, 0xf2, 0x20, 0xb7, 0x39, - 0x1a, 0x69, 0x9c, 0x5f, 0x60, 0x27, 0x7e, 0x9f, 0xc1, 0x1e, 0x7f, 0x50, 0x06, 0x54, 0x63, 0x2e, - 0x38, 0xc6, 0xd3, 0x49, 0x9b, 0x30, 0x11, 0x91, 0x6b, 0x9e, 0xdf, 0x79, 0x20, 0x48, 0x15, 0x8b, - 0xae, 0xa9, 0xaf, 0xe8, 0x75, 0xb8, 0xa5, 0xc3, 0x2c, 0xc3, 0x29, 0xba, 0xf4, 0xcb, 0x86, 0x1d, - 0x7f, 0x31, 0xba, 0x15, 0x91, 0x50, 0x3c, 0x15, 0xf4, 0x51, 0x76, 0x11, 0x28, 0x0b, 0xf7, 0x77, - 0xe7, 0xcf, 0xe6, 0xb8, 0x37, 0xf8, 0xde, 0x03, 0x8a, 0xb9, 0x56, 0xc5, 0x09, 0x2d, 0xba, 0xd0, - 0xd8, 0x9f, 0x1b, 0x81, 0x8f, 0x83, 0x20, 0x96, 0x4b, 0x93, 0x3d, 0x33, 0xa1, 0x95, 0x63, 0x03, - 0x0b, 0x45, 0x80, 0xa2, 0x4e, 0xbb, 0xdd, 0x62, 0xf7, 0x92, 0x4e, 0xeb, 0x72, 0x18, 0x74, 0xda, - 0xdc, 0x6b, 0xbb, 0xbc, 0xb4, 0x4c, 0x79, 0x70, 0xbd, 0x0b, 0xba, 0xbf, 0x3b, 0xff, 0x4c, 0x7e, - 0x07, 0x19, 0xee, 0x5a, 0x15, 0x67, 0x90, 0x47, 0x18, 0x86, 0x37, 0x22, 0xf6, 0x5b, 0x44, 0x99, - 0x5f, 0x62, 0x86, 0xd0, 0x3a, 0x2b, 0xea, 0x8f, 0xbc, 0x24, 0x64, 0x7f, 0x9e, 0x1d, 0xb3, 0xec, - 0x25, 0x99, 0xb8, 0x13, 0x12, 0xb4, 0x05, 0xe3, 0x6d, 0x76, 0x94, 0xc6, 0x61, 0xd0, 0x6a, 0x11, - 0x29, 0xe5, 0x1e, 0xce, 0x15, 0x89, 0xbf, 0x1d, 0xa1, 0x93, 0xc3, 0x26, 0x75, 0xfb, 0xbf, 0x4c, - 0x30, 0x8e, 0x29, 0x2e, 0x9d, 0x87, 0x85, 0xd3, 0xb1, 0x90, 0x27, 0x3f, 0x54, 0xe4, 0x4d, 0xb8, - 0xe4, 0x34, 0x12, 0x2e, 0xcc, 0x58, 0x52, 0x41, 0x9f, 0x66, 0x2e, 0xf5, 0x9c, 0x4d, 0x15, 0x7f, - 0xe9, 0x92, 0xe3, 0x1b, 0xee, 0xf4, 0x82, 0x04, 0xd6, 0xc8, 0xa1, 0x6b, 0x30, 0x2e, 0x1e, 0x1e, - 0x11, 0xc6, 0x92, 0xb2, 0xa1, 0xe8, 0x8f, 0x63, 0x1d, 0xb8, 0x9f, 0x2e, 0xc0, 0x66, 0x65, 0xd4, - 0x84, 0xc7, 0xb5, 0x87, 0xb5, 0x32, 0xdc, 0xe6, 0x38, 0xff, 0x7b, 0x62, 0x6f, 0x77, 0xfe, 0xf1, - 0xf5, 0x83, 0x10, 0xf1, 0xc1, 0x74, 0xd0, 0x4d, 0x38, 0xe9, 0x34, 0x62, 0x6f, 0x9b, 0x54, 0x89, - 0xe3, 0xb6, 0x3c, 0x9f, 0x98, 0x79, 0x0b, 0x1e, 0xdd, 0xdb, 0x9d, 0x3f, 0xb9, 0x98, 0x85, 0x80, - 0xb3, 0xeb, 0xa1, 0x8f, 0x43, 0xc5, 0xf5, 0x23, 0x31, 0x07, 0x43, 0xc6, 0x3b, 0x72, 0x95, 0xea, - 0x8d, 0xba, 0x1a, 0x7f, 0xf2, 0x07, 0x27, 0x15, 0xd0, 0xbb, 0x30, 0xa6, 0x87, 0x31, 0x89, 0xf7, - 0x0b, 0x5f, 0x2e, 0xa4, 0xc5, 0x1b, 0xb1, 0x3f, 0xdc, 0x8e, 0xa8, 0xdc, 0x53, 0x8d, 0xb0, 0x20, - 0xa3, 0x09, 0xf4, 0x49, 0x40, 0x11, 0x09, 0xb7, 0xbd, 0x06, 0x59, 0x6c, 0xb0, 0x74, 0xbb, 0xcc, - 0xd2, 0x34, 0x62, 0xc4, 0x69, 0xa0, 0x7a, 0x17, 0x06, 0xce, 0xa8, 0x85, 0xae, 0x50, 0xfe, 0xa7, - 0x97, 0x0a, 0x6f, 0x62, 0x29, 0x9e, 0xce, 0x56, 0x49, 0x3b, 0x24, 0x0d, 0x27, 0x26, 0xae, 0x49, - 0x11, 0xa7, 0xea, 0xd1, 0xd3, 0x51, 0xbd, 0xa8, 0x00, 0xa6, 0x0f, 0x6c, 0xf7, 0xab, 0x0a, 0x54, - 0xdb, 0xdb, 0x0c, 0xa2, 0xf8, 0x06, 0x89, 0xef, 0x07, 0xe1, 0x3d, 0x91, 0xa2, 0x2c, 0xc9, 0x5d, - 0x98, 0x80, 0xb0, 0x8e, 0x47, 0x25, 0x39, 0x76, 0x85, 0xb7, 0x56, 0x65, 0xf7, 0x23, 0x23, 0xc9, - 0xde, 0xb9, 0xc2, 0x8b, 0xb1, 0x84, 0x4b, 0xd4, 0xb5, 0xda, 0x32, 0xbb, 0xeb, 0x48, 0xa1, 0xae, - 0xd5, 0x96, 0xb1, 0x84, 0xa3, 0xa0, 0xfb, 0xb5, 0xbe, 0x89, 0x22, 0xf7, 0x4e, 0xdd, 0xe7, 0x49, - 0xc1, 0x07, 0xfb, 0x1e, 0xc0, 0x94, 0x7a, 0x31, 0x90, 0x67, 0x71, 0x8b, 0x66, 0x27, 0xd9, 0xc2, - 0x39, 0x4c, 0x32, 0x38, 0x65, 0x5d, 0x5c, 0x4b, 0xd1, 0xc4, 0x5d, 0xad, 0x18, 0xd9, 0x32, 0xa6, - 0x72, 0x5f, 0xc9, 0x38, 0x0f, 0x95, 0xa8, 0x73, 0xd7, 0x0d, 0xb6, 0x1c, 0xcf, 0x67, 0x17, 0x12, - 0x9a, 0x28, 0x55, 0x97, 0x00, 0x9c, 0xe0, 0xa0, 0x1a, 0x8c, 0x38, 0x42, 0x91, 0x14, 0x17, 0x07, - 0x39, 0xd1, 0xf4, 0x52, 0xed, 0xe4, 0x36, 0x5e, 0xf9, 0x0f, 0x2b, 0x2a, 0xe8, 0x15, 0x18, 0x17, - 0xc1, 0x60, 0xc2, 0x69, 0xf3, 0x84, 0x19, 0x38, 0x50, 0xd7, 0x81, 0xd8, 0xc4, 0x45, 0x4d, 0x98, - 0xa0, 0x54, 0x12, 0x06, 0x38, 0x3b, 0xd3, 0x1f, 0x0f, 0xd5, 0xf2, 0x91, 0xeb, 0x64, 0x70, 0x8a, - 0x2c, 0x72, 0xe1, 0x31, 0xa7, 0x13, 0x07, 0x5b, 0x74, 0x27, 0x98, 0xfb, 0x64, 0x3d, 0xb8, 0x47, - 0xfc, 0xd9, 0x93, 0x6c, 0x05, 0x9e, 0xd9, 0xdb, 0x9d, 0x7f, 0x6c, 0xf1, 0x00, 0x3c, 0x7c, 0x20, - 0x15, 0xf4, 0x16, 0x8c, 0xc6, 0x41, 0x4b, 0xf8, 0x62, 0x47, 0xb3, 0xa7, 0x8a, 0x64, 0x05, 0x5a, - 0x57, 0x15, 0x74, 0x63, 0x8a, 0x22, 0x82, 0x75, 0x8a, 0xe8, 0x6d, 0x18, 0xa3, 0xdf, 0xfe, 0xba, - 0xd3, 0x6e, 0x7b, 0x7e, 0x33, 0x9a, 0x7d, 0xa4, 0xc8, 0x6c, 0xa9, 0x9c, 0x97, 0xe6, 0xfe, 0x65, - 0x45, 0x24, 0xc2, 0x06, 0xc5, 0xb9, 0x9f, 0x85, 0xe9, 0x2e, 0xa6, 0xd7, 0x97, 0x9b, 0xea, 0xbf, - 0x1f, 0x84, 0x8a, 0xb2, 0x5c, 0xa2, 0xf3, 0xa6, 0x91, 0xfa, 0xd1, 0xb4, 0x91, 0x7a, 0x84, 0x0a, - 0x8a, 0xba, 0x5d, 0xfa, 0x33, 0x19, 0xaf, 0xd0, 0x3f, 0x9b, 0xbb, 0xcb, 0x8b, 0xc7, 0xa8, 0xf5, - 0xf1, 0x56, 0x7f, 0xa2, 0xbd, 0x0e, 0x1c, 0xa8, 0xbd, 0x16, 0x7c, 0x59, 0x91, 0xea, 0xa9, 0xed, - 0xc0, 0x5d, 0xab, 0xa5, 0x1f, 0x0e, 0xab, 0xd1, 0x42, 0xcc, 0x61, 0x4c, 0xbf, 0xa0, 0xa7, 0x36, - 0xd3, 0x2f, 0x86, 0x0f, 0xa9, 0x5f, 0x48, 0x02, 0x38, 0xa1, 0x85, 0xb6, 0x61, 0xba, 0x61, 0xbe, - 0x03, 0xa7, 0x22, 0xcf, 0x9e, 0xef, 0xe3, 0x1d, 0xb6, 0x8e, 0xf6, 0x48, 0xcc, 0x72, 0x9a, 0x1e, - 0xee, 0x6e, 0x02, 0xbd, 0x02, 0x23, 0xef, 0x06, 0x11, 0xbb, 0x3e, 0x11, 0x47, 0x97, 0x8c, 0xf0, - 0x19, 0x79, 0xed, 0x66, 0x9d, 0x95, 0xef, 0xef, 0xce, 0x8f, 0xd6, 0x02, 0x57, 0xfe, 0xc5, 0xaa, - 0x02, 0xfa, 0x82, 0x05, 0x27, 0x8d, 0x9d, 0xac, 0x7a, 0x0e, 0x87, 0xe9, 0xf9, 0xe3, 0xa2, 0xe5, - 0x93, 0x6b, 0x59, 0x34, 0x71, 0x76, 0x53, 0xf6, 0x6f, 0x71, 0x53, 0xad, 0x30, 0xde, 0x90, 0xa8, - 0xd3, 0x3a, 0x8e, 0x07, 0x1b, 0x6e, 0x1a, 0x76, 0xa5, 0x87, 0x70, 0x59, 0xf0, 0x6f, 0x2d, 0x76, - 0x59, 0xb0, 0x4e, 0xb6, 0xda, 0x2d, 0x27, 0x3e, 0x0e, 0x2f, 0xe6, 0x4f, 0xc3, 0x48, 0x2c, 0x5a, - 0x2b, 0xf6, 0xda, 0x84, 0xd6, 0x3d, 0x76, 0x89, 0xa2, 0x8e, 0x3e, 0x59, 0x8a, 0x15, 0x41, 0xfb, - 0x5f, 0xf2, 0xaf, 0x22, 0x21, 0xc7, 0x60, 0x11, 0xb9, 0x61, 0x5a, 0x44, 0x9e, 0x29, 0x3c, 0x96, - 0x1e, 0x96, 0x91, 0xef, 0x9b, 0x23, 0x60, 0x1a, 0xca, 0x4f, 0xce, 0x6d, 0x96, 0xfd, 0x4b, 0x16, - 0xcc, 0x64, 0xb9, 0x15, 0x50, 0x11, 0x86, 0xeb, 0x47, 0xea, 0x9e, 0x4f, 0xcd, 0xea, 0x6d, 0x51, - 0x8e, 0x15, 0x46, 0xe1, 0xf4, 0xef, 0xfd, 0x25, 0xc3, 0xba, 0x09, 0xe6, 0x8b, 0x82, 0xe8, 0x55, - 0x1e, 0xb4, 0x60, 0xa9, 0x27, 0xff, 0xfa, 0x0b, 0x58, 0xb0, 0xbf, 0x5d, 0x82, 0x19, 0x6e, 0x6c, - 0x5f, 0xdc, 0x0e, 0x3c, 0xb7, 0x16, 0xb8, 0x22, 0x84, 0xc3, 0x85, 0xb1, 0xb6, 0xa6, 0xde, 0x16, - 0x4b, 0xae, 0xa3, 0x2b, 0xc4, 0x89, 0x4a, 0xa1, 0x97, 0x62, 0x83, 0x2a, 0x6d, 0x85, 0x6c, 0x7b, - 0x0d, 0x65, 0xbb, 0x2d, 0xf5, 0x7d, 0x32, 0xa8, 0x56, 0x56, 0x34, 0x3a, 0xd8, 0xa0, 0x7a, 0x04, - 0xaf, 0xb6, 0xd8, 0x7f, 0xcf, 0x82, 0x47, 0x7a, 0x24, 0xe0, 0xa1, 0xcd, 0xdd, 0x67, 0x17, 0x1c, - 0xe2, 0xc9, 0x4a, 0xd5, 0x1c, 0xbf, 0xf6, 0xc0, 0x02, 0x8a, 0xee, 0x02, 0xf0, 0x6b, 0x0b, 0x2a, - 0x4d, 0xa7, 0xef, 0xd4, 0x0b, 0xa6, 0xb9, 0xd0, 0x32, 0x20, 0x48, 0x4a, 0x58, 0xa3, 0x6a, 0x7f, - 0xb3, 0x0c, 0x83, 0xfc, 0x65, 0xf4, 0x1a, 0x0c, 0x6f, 0xf2, 0x14, 0xc3, 0xfd, 0x65, 0x38, 0x4e, - 0xd4, 0x17, 0x5e, 0x80, 0x25, 0x19, 0x74, 0x1d, 0x4e, 0x88, 0x20, 0xa2, 0x2a, 0x69, 0x39, 0x3b, - 0x52, 0x1f, 0xe6, 0x4f, 0x79, 0xc8, 0x9c, 0xf3, 0x27, 0xd6, 0xba, 0x51, 0x70, 0x56, 0x3d, 0xf4, - 0x6a, 0x57, 0x46, 0x40, 0x9e, 0xba, 0x59, 0xc9, 0xc2, 0x39, 0x59, 0x01, 0x5f, 0x81, 0xf1, 0x76, - 0x97, 0xe6, 0xaf, 0x3d, 0x40, 0x6d, 0x6a, 0xfb, 0x26, 0x2e, 0xf3, 0xa1, 0xe8, 0x30, 0xdf, 0x91, - 0xf5, 0xcd, 0x90, 0x44, 0x9b, 0x41, 0xcb, 0x15, 0x6f, 0xa7, 0x26, 0x3e, 0x14, 0x29, 0x38, 0xee, - 0xaa, 0x41, 0xa9, 0x6c, 0x38, 0x5e, 0xab, 0x13, 0x92, 0x84, 0xca, 0x90, 0x49, 0x65, 0x35, 0x05, - 0xc7, 0x5d, 0x35, 0xe8, 0xda, 0x3a, 0x29, 0x9e, 0xdb, 0x94, 0xe1, 0xe6, 0x82, 0x05, 0x7d, 0x0a, - 0x86, 0x65, 0x28, 0x40, 0xa1, 0xac, 0x28, 0xc2, 0x41, 0x42, 0x3d, 0xdd, 0xa9, 0x3d, 0xed, 0x26, - 0x82, 0x00, 0x24, 0xbd, 0xc3, 0x3c, 0xeb, 0xf8, 0x67, 0x16, 0x9c, 0xc8, 0x70, 0x69, 0xe3, 0x2c, - 0xad, 0xe9, 0x45, 0xb1, 0x7a, 0x58, 0x42, 0x63, 0x69, 0xbc, 0x1c, 0x2b, 0x0c, 0xba, 0x5b, 0x38, - 0xd3, 0x4c, 0x33, 0x4a, 0xe1, 0xea, 0x22, 0xa0, 0xfd, 0x31, 0x4a, 0x74, 0x06, 0x06, 0x3a, 0x11, - 0x09, 0xe5, 0x1b, 0x8b, 0x92, 0xcf, 0xdf, 0x8a, 0x48, 0x88, 0x19, 0x84, 0x8a, 0xad, 0x4d, 0x65, - 0x11, 0xd4, 0xc4, 0x56, 0x66, 0xdd, 0xc3, 0x1c, 0x66, 0x7f, 0xad, 0x0c, 0x93, 0x29, 0xd7, 0x56, - 0xda, 0x91, 0xad, 0xc0, 0xf7, 0xe2, 0x40, 0x65, 0xaa, 0xe3, 0xcf, 0xba, 0x91, 0xf6, 0xe6, 0x75, - 0x51, 0x8e, 0x15, 0x06, 0x7a, 0x5a, 0x3e, 0xab, 0x9b, 0x7e, 0x30, 0x63, 0xa9, 0x6a, 0xbc, 0xac, - 0x5b, 0xf4, 0xb1, 0x9b, 0x27, 0x61, 0xa0, 0x1d, 0xa8, 0x57, 0xd2, 0xd5, 0xf7, 0xc4, 0x4b, 0xd5, - 0x5a, 0x10, 0xb4, 0x30, 0x03, 0xa2, 0xa7, 0xc4, 0xe8, 0x53, 0x37, 0x34, 0xd8, 0x71, 0x83, 0x48, - 0x9b, 0x82, 0x67, 0x60, 0xf8, 0x1e, 0xd9, 0x09, 0x3d, 0xbf, 0x99, 0xbe, 0x9f, 0xba, 0xca, 0x8b, - 0xb1, 0x84, 0x9b, 0xf9, 0xe3, 0x87, 0x8f, 0xf8, 0x41, 0x9b, 0x91, 0xdc, 0x73, 0xf0, 0x3b, 0x16, - 0x4c, 0xb2, 0x84, 0xb0, 0x22, 0xd9, 0x81, 0x17, 0xf8, 0xc7, 0x20, 0x63, 0x3c, 0x09, 0x83, 0x21, - 0x6d, 0x34, 0xfd, 0x22, 0x05, 0xeb, 0x09, 0xe6, 0x30, 0xf4, 0x18, 0x0c, 0xb0, 0x2e, 0xd0, 0xcf, - 0x38, 0xc6, 0xf3, 0xce, 0x57, 0x9d, 0xd8, 0xc1, 0xac, 0x94, 0x45, 0x93, 0x61, 0xd2, 0x6e, 0x79, - 0xbc, 0xd3, 0x89, 0x41, 0xf7, 0xfd, 0x16, 0x4d, 0x96, 0xd9, 0xc9, 0x87, 0x15, 0x4d, 0x96, 0x4d, - 0xfc, 0x60, 0x39, 0xff, 0xbf, 0x96, 0xe0, 0x74, 0x66, 0xbd, 0xe4, 0xa6, 0x7b, 0xd5, 0xb8, 0xe9, - 0xbe, 0x98, 0xba, 0xe9, 0xb6, 0x0f, 0xae, 0xfd, 0x70, 0xee, 0xbe, 0xb3, 0xaf, 0xa4, 0xcb, 0xc7, - 0x78, 0x25, 0x3d, 0x50, 0x54, 0xc4, 0x19, 0xcc, 0x11, 0x71, 0x7e, 0xdf, 0x82, 0x47, 0x33, 0xa7, - 0xec, 0x7d, 0x17, 0xbe, 0x97, 0xd9, 0xcb, 0x1e, 0xda, 0xc9, 0x2f, 0x96, 0x7b, 0x8c, 0x8a, 0xe9, - 0x29, 0x67, 0x29, 0x17, 0x62, 0xc0, 0x48, 0x08, 0x6f, 0x63, 0x9c, 0x03, 0xf1, 0x32, 0xac, 0xa0, - 0x28, 0xd2, 0xc2, 0xdf, 0x78, 0x27, 0x57, 0x0e, 0xb9, 0xa1, 0x16, 0x4c, 0x4b, 0xbc, 0x9e, 0xc1, - 0x21, 0x1d, 0x14, 0x77, 0x47, 0xd3, 0x3c, 0xcb, 0x87, 0xd1, 0x3c, 0xc7, 0xb2, 0xb5, 0x4e, 0xb4, - 0x08, 0x93, 0x5b, 0x9e, 0xcf, 0xde, 0xc1, 0x35, 0xa5, 0x27, 0x15, 0x83, 0x7c, 0xdd, 0x04, 0xe3, - 0x34, 0xfe, 0xdc, 0x2b, 0x30, 0x7e, 0x78, 0xeb, 0xda, 0x8f, 0xca, 0xf0, 0xc1, 0x03, 0x98, 0x02, - 0x3f, 0x1d, 0x8c, 0xef, 0xa2, 0x9d, 0x0e, 0x5d, 0xdf, 0xa6, 0x06, 0x33, 0x1b, 0x9d, 0x56, 0x6b, - 0x87, 0xf9, 0x89, 0x11, 0x57, 0x62, 0x08, 0xa1, 0x46, 0xe5, 0x87, 0x5e, 0xcd, 0xc0, 0xc1, 0x99, - 0x35, 0xd1, 0x27, 0x01, 0x05, 0x77, 0x59, 0x82, 0x63, 0x37, 0xc9, 0x50, 0xc1, 0x3e, 0x41, 0x39, - 0xd9, 0xaa, 0x37, 0xbb, 0x30, 0x70, 0x46, 0x2d, 0x2a, 0xa7, 0xb2, 0xb7, 0xfa, 0x55, 0xb7, 0x52, - 0x72, 0x2a, 0xd6, 0x81, 0xd8, 0xc4, 0x45, 0x97, 0x61, 0xda, 0xd9, 0x76, 0x3c, 0x9e, 0xb0, 0x4c, - 0x12, 0xe0, 0x82, 0xaa, 0xb2, 0x5f, 0x2d, 0xa6, 0x11, 0x70, 0x77, 0x1d, 0xd4, 0x36, 0x0c, 0x92, - 0xfc, 0xb1, 0x84, 0x8f, 0x1f, 0x62, 0x05, 0x17, 0x36, 0x51, 0xda, 0x7f, 0x62, 0xd1, 0xa3, 0x2f, - 0xe3, 0xc9, 0x54, 0x3a, 0x23, 0xca, 0xc0, 0xa6, 0x85, 0xf3, 0xa9, 0x19, 0x59, 0xd6, 0x81, 0xd8, - 0xc4, 0xe5, 0x4b, 0x23, 0x4a, 0xdc, 0xd6, 0x0d, 0x69, 0x53, 0x44, 0xc2, 0x2a, 0x0c, 0x2a, 0x41, - 0xbb, 0xde, 0xb6, 0x17, 0x05, 0xa1, 0xd8, 0x40, 0x7d, 0x3a, 0x31, 0x27, 0xfc, 0xb2, 0xca, 0xc9, - 0x60, 0x49, 0xcf, 0xfe, 0x7a, 0x09, 0xc6, 0x65, 0x8b, 0xaf, 0x75, 0x82, 0xd8, 0x39, 0x86, 0x23, - 0xfd, 0x35, 0xe3, 0x48, 0x3f, 0x5f, 0x2c, 0x30, 0x98, 0x75, 0xae, 0xe7, 0x51, 0xfe, 0xa9, 0xd4, - 0x51, 0x7e, 0xa1, 0x1f, 0xa2, 0x07, 0x1f, 0xe1, 0xff, 0xda, 0x82, 0x69, 0x03, 0xff, 0x18, 0x4e, - 0x92, 0x9a, 0x79, 0x92, 0x3c, 0xd7, 0xc7, 0x68, 0x7a, 0x9c, 0x20, 0xdf, 0x2a, 0xa5, 0x46, 0xc1, - 0x4e, 0x8e, 0xcf, 0xc1, 0xc0, 0xa6, 0x13, 0xba, 0xc5, 0xb2, 0x77, 0x76, 0x55, 0x5f, 0xb8, 0xe2, - 0x84, 0x2e, 0xe7, 0xff, 0xe7, 0xd4, 0x83, 0x6e, 0x4e, 0xe8, 0xe6, 0x46, 0x73, 0xb0, 0x46, 0xd1, - 0x25, 0x18, 0x8a, 0x1a, 0x41, 0x5b, 0xf9, 0xbb, 0x9e, 0xe1, 0x8f, 0xbd, 0xd1, 0x92, 0xfd, 0xdd, - 0x79, 0x64, 0x36, 0x47, 0x8b, 0xb1, 0xc0, 0x9f, 0x6b, 0x42, 0x45, 0x35, 0x7d, 0xa4, 0x1e, 0xff, - 0xff, 0xa9, 0x0c, 0x27, 0x32, 0xd6, 0x0a, 0xfa, 0xbc, 0x31, 0x6f, 0xaf, 0xf4, 0xbd, 0xd8, 0xde, - 0xe3, 0xcc, 0x7d, 0x9e, 0x69, 0x4a, 0xae, 0x58, 0x1d, 0x87, 0x68, 0xfe, 0x56, 0x44, 0xd2, 0xcd, - 0xd3, 0xa2, 0xfc, 0xe6, 0x69, 0xb3, 0xc7, 0x36, 0xfd, 0xb4, 0x21, 0xd5, 0xd3, 0x23, 0xfd, 0xce, - 0xbf, 0x30, 0x00, 0x33, 0x59, 0x19, 0x08, 0xd0, 0x97, 0xac, 0xd4, 0xa3, 0x1f, 0xaf, 0xf6, 0x9f, - 0xc6, 0x80, 0xbf, 0x04, 0x22, 0xf2, 0x03, 0x2d, 0x98, 0xcf, 0x80, 0xe4, 0xce, 0xb8, 0x68, 0x9d, - 0xc5, 0x61, 0x85, 0xfc, 0x01, 0x17, 0xc9, 0x15, 0x3e, 0x71, 0x88, 0xae, 0x88, 0x37, 0x60, 0xa2, - 0x54, 0x1c, 0x96, 0x2c, 0xce, 0x8f, 0xc3, 0x92, 0x7d, 0x98, 0xf3, 0x60, 0x54, 0x1b, 0xd7, 0x91, - 0x2e, 0x83, 0x7b, 0xf4, 0x88, 0xd2, 0xfa, 0x7d, 0xa4, 0x4b, 0xe1, 0x6f, 0x5b, 0x90, 0x72, 0x4e, - 0x53, 0x66, 0x19, 0xab, 0xa7, 0x59, 0xe6, 0x0c, 0x0c, 0x84, 0x41, 0x8b, 0xa4, 0x9f, 0x8f, 0xc0, - 0x41, 0x8b, 0x60, 0x06, 0x51, 0x6f, 0x3c, 0x97, 0x7b, 0xbd, 0xf1, 0x4c, 0xf5, 0xf4, 0x16, 0xd9, - 0x26, 0xd2, 0x48, 0xa2, 0xd8, 0xf8, 0x35, 0x5a, 0x88, 0x39, 0xcc, 0xfe, 0xf5, 0x01, 0x38, 0x91, - 0x11, 0xd5, 0x47, 0x35, 0xa4, 0xa6, 0x13, 0x93, 0xfb, 0xce, 0x4e, 0x3a, 0x8d, 0xed, 0x65, 0x5e, - 0x8c, 0x25, 0x9c, 0x39, 0xd5, 0xf2, 0x54, 0x78, 0x29, 0xd3, 0x95, 0xc8, 0x80, 0x27, 0xa0, 0x47, - 0xff, 0x1a, 0xf0, 0x45, 0x80, 0x28, 0x6a, 0xad, 0xf8, 0x54, 0xc2, 0x73, 0x85, 0xf3, 0x6e, 0x92, - 0x41, 0xb1, 0x7e, 0x4d, 0x40, 0xb0, 0x86, 0x85, 0xaa, 0x30, 0xd5, 0x0e, 0x83, 0x98, 0x1b, 0x06, - 0xab, 0xdc, 0xd5, 0x62, 0xd0, 0x8c, 0x1a, 0xab, 0xa5, 0xe0, 0xb8, 0xab, 0x06, 0x7a, 0x09, 0x46, - 0x45, 0x24, 0x59, 0x2d, 0x08, 0x5a, 0xc2, 0x8c, 0xa4, 0xee, 0xe3, 0xeb, 0x09, 0x08, 0xeb, 0x78, - 0x5a, 0x35, 0x66, 0x6d, 0x1c, 0xce, 0xac, 0xc6, 0x2d, 0x8e, 0x1a, 0x5e, 0x2a, 0x4f, 0xc9, 0x48, - 0xa1, 0x3c, 0x25, 0x89, 0x61, 0xad, 0x52, 0xf8, 0x22, 0x06, 0x72, 0x0d, 0x50, 0xbf, 0x5b, 0x86, - 0x21, 0xfe, 0x29, 0x8e, 0x41, 0xca, 0xab, 0x09, 0x93, 0x52, 0xa1, 0x9c, 0x10, 0xbc, 0x57, 0x0b, - 0x55, 0x27, 0x76, 0x38, 0x6b, 0x52, 0x3b, 0x24, 0x31, 0x43, 0xa1, 0x05, 0x63, 0x0f, 0xcd, 0xa5, - 0x2c, 0x25, 0xc0, 0x69, 0x68, 0x3b, 0x6a, 0x13, 0x20, 0x62, 0x2f, 0xd2, 0x52, 0x1a, 0x22, 0xc7, - 0xee, 0x8b, 0x85, 0xfa, 0x51, 0x57, 0xd5, 0x78, 0x6f, 0x92, 0x65, 0xa9, 0x00, 0x58, 0xa3, 0x3d, - 0xf7, 0x32, 0x54, 0x14, 0x72, 0x9e, 0x0a, 0x39, 0xa6, 0xb3, 0xb6, 0xff, 0x0f, 0x26, 0x53, 0x6d, - 0xf5, 0xa5, 0x81, 0xfe, 0xa6, 0x05, 0x93, 0xbc, 0xcb, 0x2b, 0xfe, 0xb6, 0x60, 0x05, 0x5f, 0xb4, - 0x60, 0xa6, 0x95, 0xb1, 0x13, 0xc5, 0x67, 0x3e, 0xcc, 0x1e, 0x56, 0xca, 0x67, 0x16, 0x14, 0x67, - 0xb6, 0x86, 0xce, 0xc2, 0x08, 0x7f, 0x60, 0xdb, 0x69, 0x09, 0x4f, 0xf1, 0x31, 0x9e, 0x5d, 0x9c, - 0x97, 0x61, 0x05, 0xb5, 0x7f, 0x6c, 0xc1, 0x34, 0x1f, 0xc4, 0x55, 0xb2, 0xa3, 0xd4, 0xab, 0xf7, - 0xc9, 0x30, 0x44, 0x1e, 0xf5, 0x52, 0x8f, 0x3c, 0xea, 0xfa, 0x28, 0xcb, 0x07, 0x8e, 0xf2, 0xdb, - 0x16, 0x88, 0x15, 0x7a, 0x0c, 0xfa, 0xc3, 0x9a, 0xa9, 0x3f, 0x7c, 0xa8, 0xc8, 0xa2, 0xef, 0xa1, - 0x38, 0xfc, 0x8d, 0x12, 0x4c, 0x71, 0x84, 0xe4, 0x46, 0xe6, 0xfd, 0xf2, 0x71, 0xfa, 0x7b, 0xdf, - 0x47, 0x3d, 0xd3, 0x9a, 0x3d, 0x52, 0xe3, 0x5b, 0x0e, 0x1c, 0xf8, 0x2d, 0xff, 0x87, 0x05, 0x88, - 0xcf, 0x49, 0xfa, 0x75, 0x72, 0x7e, 0xba, 0x69, 0xe6, 0x80, 0x84, 0x73, 0x28, 0x08, 0xd6, 0xb0, - 0x1e, 0xf2, 0x10, 0x52, 0xf7, 0x61, 0xe5, 0xfc, 0xfb, 0xb0, 0x3e, 0x46, 0xfd, 0xdf, 0xca, 0x90, - 0x76, 0xd6, 0x44, 0x6f, 0xc3, 0x58, 0xc3, 0x69, 0x3b, 0x77, 0xbd, 0x96, 0x17, 0x7b, 0x24, 0x2a, - 0x76, 0xe1, 0xbe, 0xac, 0xd5, 0x10, 0xd7, 0x50, 0x5a, 0x09, 0x36, 0x28, 0xa2, 0x05, 0x80, 0x76, - 0xe8, 0x6d, 0x7b, 0x2d, 0xd2, 0x64, 0x1a, 0x0f, 0x8b, 0x39, 0xe1, 0x77, 0xc7, 0xb2, 0x14, 0x6b, - 0x18, 0x19, 0x31, 0x0a, 0xe5, 0xe3, 0x88, 0x51, 0x18, 0x38, 0xc2, 0x18, 0x85, 0xc1, 0x42, 0x31, - 0x0a, 0x18, 0x4e, 0xc9, 0x83, 0x9e, 0xfe, 0x5f, 0xf5, 0x5a, 0x44, 0xc8, 0x79, 0x3c, 0x7e, 0x65, - 0x6e, 0x6f, 0x77, 0xfe, 0x14, 0xce, 0xc4, 0xc0, 0x3d, 0x6a, 0xda, 0x1d, 0x38, 0x51, 0x27, 0xa1, - 0x7c, 0x85, 0x4e, 0xed, 0xbb, 0xcf, 0x40, 0x25, 0x4c, 0x6d, 0xf9, 0x3e, 0x93, 0x14, 0x68, 0x99, - 0xdd, 0xe4, 0x16, 0x4f, 0x48, 0xda, 0x7f, 0xb5, 0x04, 0xc3, 0xc2, 0xa5, 0xf3, 0x18, 0x04, 0x95, - 0xab, 0x86, 0x39, 0xea, 0x99, 0x3c, 0x5e, 0xc9, 0xba, 0xd5, 0xd3, 0x10, 0x55, 0x4f, 0x19, 0xa2, - 0x9e, 0x2b, 0x46, 0xee, 0x60, 0x13, 0xd4, 0x3f, 0x2e, 0xc3, 0x84, 0xe9, 0xe2, 0x7a, 0x0c, 0xd3, - 0xf2, 0x3a, 0x0c, 0x47, 0xc2, 0xdb, 0xba, 0x54, 0xc4, 0xbf, 0x2f, 0xfd, 0x89, 0x93, 0x5b, 0x7b, - 0xe1, 0x5f, 0x2d, 0xc9, 0x65, 0x3a, 0x74, 0x97, 0x8f, 0xc5, 0xa1, 0x3b, 0xcf, 0xf3, 0x78, 0xe0, - 0x61, 0x78, 0x1e, 0xdb, 0x3f, 0x60, 0xc7, 0x83, 0x5e, 0x7e, 0x0c, 0x47, 0xfe, 0x6b, 0xe6, 0x41, - 0x72, 0xae, 0xd0, 0xba, 0x13, 0xdd, 0xeb, 0x71, 0xf4, 0x7f, 0xd7, 0x82, 0x51, 0x81, 0x78, 0x0c, - 0x03, 0xf8, 0xa4, 0x39, 0x80, 0xa7, 0x0a, 0x0d, 0xa0, 0x47, 0xcf, 0xbf, 0x5e, 0x52, 0x3d, 0xaf, - 0x05, 0x61, 0x5c, 0x28, 0xff, 0xf9, 0x08, 0x55, 0x13, 0x83, 0x46, 0xd0, 0x12, 0xc2, 0xde, 0x63, - 0x49, 0xb8, 0x22, 0x2f, 0xdf, 0xd7, 0x7e, 0x63, 0x85, 0xcd, 0xa2, 0xe9, 0x82, 0x30, 0x16, 0x87, - 0x6d, 0x12, 0x4d, 0x17, 0x84, 0x31, 0x66, 0x10, 0xe4, 0x02, 0xc4, 0x4e, 0xd8, 0x24, 0x31, 0x2d, - 0x13, 0x91, 0xbe, 0xbd, 0x77, 0x6b, 0x27, 0xf6, 0x5a, 0x0b, 0x9e, 0x1f, 0x47, 0x71, 0xb8, 0xb0, - 0xe6, 0xc7, 0x37, 0x43, 0xae, 0x20, 0x68, 0xf1, 0x87, 0x8a, 0x16, 0xd6, 0xe8, 0xca, 0x90, 0x12, - 0xd6, 0xc6, 0xa0, 0x79, 0xdb, 0x74, 0x43, 0x94, 0x63, 0x85, 0x61, 0xbf, 0xcc, 0x38, 0x3b, 0x9b, - 0xa0, 0xfe, 0x42, 0x03, 0x7f, 0x61, 0x58, 0x4d, 0x2d, 0x33, 0x21, 0xdf, 0xd0, 0x03, 0x10, 0x8b, - 0xb2, 0x4f, 0xda, 0x05, 0xdd, 0xe7, 0x3a, 0x89, 0x57, 0x44, 0xa4, 0xeb, 0x8a, 0xf2, 0xe5, 0xc2, - 0x1c, 0xb9, 0x8f, 0x4b, 0x49, 0x96, 0x88, 0x91, 0x65, 0x9f, 0x5b, 0xab, 0xa5, 0xb3, 0xd6, 0x2f, - 0x4b, 0x00, 0x4e, 0x70, 0xd0, 0x79, 0xa1, 0x7c, 0x72, 0xeb, 0xcc, 0x07, 0x53, 0xca, 0xa7, 0x9c, - 0x12, 0x4d, 0xfb, 0xbc, 0x00, 0xa3, 0xea, 0x21, 0xa0, 0x1a, 0x7f, 0x82, 0xa5, 0xc2, 0x65, 0xb1, - 0x95, 0xa4, 0x18, 0xeb, 0x38, 0x68, 0x1d, 0x26, 0x23, 0xfe, 0x4a, 0x91, 0x8c, 0xed, 0x10, 0x46, - 0x86, 0x67, 0xe5, 0x85, 0x66, 0xdd, 0x04, 0xef, 0xb3, 0x22, 0xbe, 0x95, 0x65, 0x34, 0x48, 0x9a, - 0x04, 0x7a, 0x15, 0x26, 0x5a, 0xfa, 0x13, 0xac, 0x35, 0x61, 0x83, 0x50, 0x2e, 0x6a, 0xc6, 0x03, - 0xad, 0x35, 0x9c, 0xc2, 0x46, 0xaf, 0xc3, 0xac, 0x5e, 0x22, 0x12, 0x22, 0x39, 0x7e, 0x93, 0x44, - 0xe2, 0x45, 0x93, 0xc7, 0xf6, 0x76, 0xe7, 0x67, 0xaf, 0xf5, 0xc0, 0xc1, 0x3d, 0x6b, 0xa3, 0x4b, - 0x30, 0x26, 0x87, 0xaf, 0x45, 0x42, 0x25, 0xce, 0x91, 0x1a, 0x0c, 0x1b, 0x98, 0xe8, 0x3e, 0x9c, - 0x94, 0xff, 0xd7, 0x43, 0x67, 0x63, 0xc3, 0x6b, 0x88, 0x90, 0xb4, 0x51, 0x46, 0x62, 0x51, 0xfa, - 0x96, 0xaf, 0x64, 0x21, 0xed, 0xef, 0xce, 0x9f, 0x11, 0xb3, 0x96, 0x09, 0x67, 0x1f, 0x31, 0x9b, - 0x3e, 0xba, 0x0e, 0x27, 0x36, 0x89, 0xd3, 0x8a, 0x37, 0x97, 0x37, 0x49, 0xe3, 0x9e, 0xdc, 0x58, - 0x2c, 0xbe, 0x4a, 0x73, 0x1f, 0xbc, 0xd2, 0x8d, 0x82, 0xb3, 0xea, 0xbd, 0xb7, 0xfb, 0xe7, 0xcf, - 0xd1, 0xca, 0x9a, 0xfc, 0x80, 0xde, 0x81, 0x31, 0x7d, 0xae, 0xd3, 0x82, 0x41, 0xfe, 0xf3, 0xbc, - 0x42, 0x0e, 0x51, 0x5f, 0x40, 0x87, 0x61, 0x83, 0xb6, 0x7d, 0x13, 0x86, 0xea, 0x3b, 0x51, 0x23, - 0x6e, 0x15, 0x60, 0xae, 0x4f, 0x1a, 0x43, 0x48, 0x36, 0x3e, 0x7b, 0x2a, 0x4c, 0x8c, 0xc8, 0xfe, - 0xb2, 0x05, 0x93, 0xeb, 0xcb, 0xb5, 0x7a, 0xd0, 0xb8, 0x47, 0xe2, 0x45, 0xae, 0x67, 0x62, 0xc1, - 0x5b, 0xad, 0x43, 0xf2, 0xcc, 0x2c, 0x6e, 0x7c, 0x06, 0x06, 0x36, 0x83, 0x28, 0x4e, 0xdb, 0x6a, - 0xaf, 0x04, 0x51, 0x8c, 0x19, 0xc4, 0xfe, 0x53, 0x0b, 0x06, 0xd9, 0x4b, 0x58, 0x79, 0xaf, 0xa8, - 0x15, 0x19, 0x17, 0x7a, 0x09, 0x86, 0xc8, 0xc6, 0x06, 0x69, 0xc4, 0x82, 0xcd, 0xc8, 0xb8, 0x87, - 0xa1, 0x15, 0x56, 0x4a, 0x99, 0x07, 0x6b, 0x8c, 0xff, 0xc5, 0x02, 0x19, 0x7d, 0x1a, 0x2a, 0xb1, - 0xb7, 0x45, 0x16, 0x5d, 0x57, 0x18, 0x47, 0xfb, 0x73, 0xc5, 0x51, 0xcc, 0x6c, 0x5d, 0x12, 0xc1, - 0x09, 0x3d, 0xfb, 0xab, 0x25, 0x80, 0x24, 0xae, 0x29, 0x6f, 0x98, 0x4b, 0x5d, 0x8f, 0xc5, 0x3d, - 0x9d, 0xf1, 0x58, 0x1c, 0x4a, 0x08, 0x66, 0x3c, 0x15, 0xa7, 0xa6, 0xaa, 0x5c, 0x68, 0xaa, 0x06, - 0xfa, 0x99, 0xaa, 0x65, 0x98, 0x4e, 0xe2, 0xb2, 0xcc, 0x00, 0x57, 0x96, 0xd0, 0x75, 0x3d, 0x0d, - 0xc4, 0xdd, 0xf8, 0xf6, 0x57, 0x2d, 0x10, 0xce, 0x9b, 0x05, 0x16, 0xb4, 0x2b, 0x1f, 0x76, 0x32, - 0x32, 0xcf, 0x3d, 0x5b, 0xc4, 0xaf, 0x55, 0xe4, 0x9b, 0x53, 0x5b, 0xcc, 0xc8, 0x32, 0x67, 0x50, - 0xb5, 0x7f, 0xcd, 0x82, 0x51, 0x0e, 0xbe, 0xce, 0x64, 0xfe, 0xfc, 0x7e, 0xf5, 0x95, 0x2d, 0x98, - 0xbd, 0x79, 0x44, 0x09, 0xab, 0xac, 0xb1, 0xfa, 0x9b, 0x47, 0x12, 0x80, 0x13, 0x1c, 0xf4, 0x0c, - 0x0c, 0x47, 0x9d, 0xbb, 0x0c, 0x3d, 0xe5, 0xc9, 0x59, 0xe7, 0xc5, 0x58, 0xc2, 0xed, 0x7f, 0x5a, - 0x82, 0xa9, 0xb4, 0x23, 0x2f, 0xc2, 0x30, 0xc4, 0x75, 0x80, 0xb4, 0xf8, 0x78, 0x90, 0x5d, 0x4a, - 0x73, 0x04, 0x06, 0xfe, 0x72, 0x37, 0xbb, 0x40, 0x10, 0x94, 0xd0, 0x06, 0x8c, 0xba, 0xc1, 0x7d, - 0xff, 0xbe, 0x13, 0xba, 0x8b, 0xb5, 0x35, 0xf1, 0x25, 0x72, 0x5c, 0xaf, 0xaa, 0x49, 0x05, 0xdd, - 0xcd, 0x98, 0xd9, 0x49, 0x12, 0x10, 0xd6, 0x09, 0x53, 0x9d, 0xb7, 0x11, 0xf8, 0x1b, 0x5e, 0xf3, - 0xba, 0xd3, 0x2e, 0xe6, 0x64, 0xb0, 0x2c, 0xd1, 0xb5, 0x36, 0xc6, 0x45, 0x5e, 0x0d, 0x0e, 0xc0, - 0x09, 0x49, 0xfb, 0x57, 0x67, 0xc0, 0x58, 0x0b, 0x46, 0x4a, 0x5f, 0xeb, 0xa1, 0xa7, 0xf4, 0x7d, - 0x13, 0x46, 0xc8, 0x56, 0x3b, 0xde, 0xa9, 0x7a, 0x61, 0xb1, 0x04, 0xed, 0x2b, 0x02, 0xbb, 0x9b, - 0xba, 0x84, 0x60, 0x45, 0xb1, 0x47, 0x82, 0xe6, 0xf2, 0xfb, 0x22, 0x41, 0xf3, 0xc0, 0x5f, 0x48, - 0x82, 0xe6, 0xd7, 0x61, 0xb8, 0xe9, 0xc5, 0x98, 0xb4, 0x03, 0x91, 0xa8, 0x24, 0x67, 0xf1, 0x5c, - 0xe6, 0xc8, 0xdd, 0xa9, 0x3b, 0x05, 0x00, 0x4b, 0x72, 0x68, 0x5d, 0x6d, 0xaa, 0xa1, 0x22, 0xc7, - 0x7d, 0xb7, 0xdd, 0x32, 0x73, 0x5b, 0x89, 0x84, 0xcc, 0xc3, 0xef, 0x3d, 0x21, 0xb3, 0x4a, 0xa3, - 0x3c, 0xf2, 0xb0, 0xd2, 0x28, 0x1b, 0xe9, 0xa8, 0x2b, 0x47, 0x91, 0x8e, 0xfa, 0xab, 0x16, 0x9c, - 0x6c, 0x67, 0x25, 0x73, 0x17, 0x09, 0x91, 0x7f, 0xf6, 0x10, 0xe9, 0xed, 0x8d, 0xa6, 0x59, 0xe2, - 0x85, 0x4c, 0x34, 0x9c, 0xdd, 0xb0, 0xcc, 0x6b, 0x3d, 0xfa, 0xde, 0xf3, 0x5a, 0x1f, 0x75, 0xe6, - 0xe4, 0x24, 0xcb, 0xf5, 0xf8, 0x91, 0x64, 0xb9, 0x9e, 0x78, 0x88, 0x59, 0xae, 0xb5, 0xfc, 0xd4, - 0x93, 0x0f, 0x37, 0x3f, 0xf5, 0xa6, 0x79, 0x2e, 0xf1, 0x74, 0xc8, 0x2f, 0x15, 0x3e, 0x97, 0x8c, - 0x16, 0x0e, 0x3e, 0x99, 0x78, 0xa6, 0xee, 0xe9, 0xf7, 0x98, 0xa9, 0xdb, 0xc8, 0x77, 0x8d, 0x8e, - 0x22, 0xdf, 0xf5, 0xdb, 0xfa, 0x09, 0x7a, 0xa2, 0x48, 0x0b, 0xea, 0xa0, 0xec, 0x6e, 0x21, 0xeb, - 0x0c, 0xed, 0xce, 0xa8, 0x3d, 0x73, 0xdc, 0x19, 0xb5, 0x4f, 0x1e, 0x61, 0x46, 0xed, 0x53, 0xc7, - 0x9a, 0x51, 0xfb, 0x91, 0xf7, 0x49, 0x46, 0xed, 0xd9, 0xe3, 0xca, 0xa8, 0xfd, 0xe8, 0x43, 0xcd, - 0xa8, 0x4d, 0x3f, 0x5d, 0x5b, 0x86, 0xc3, 0xcd, 0xce, 0x15, 0xf9, 0x74, 0x99, 0xd1, 0x73, 0xfc, - 0xd3, 0x29, 0x10, 0x4e, 0x88, 0xda, 0x7f, 0x09, 0x4e, 0x1f, 0xbc, 0x74, 0x13, 0xcf, 0x93, 0x5a, - 0x62, 0xd3, 0x4b, 0x79, 0x9e, 0x30, 0xb1, 0x50, 0xc3, 0x2a, 0x9c, 0xf2, 0xf7, 0x5b, 0x16, 0x3c, - 0xd2, 0x23, 0x23, 0x66, 0xe1, 0x58, 0xd2, 0x36, 0x4c, 0xb6, 0xcd, 0xaa, 0x85, 0x43, 0xd3, 0x8d, - 0x0c, 0x9c, 0xca, 0xdf, 0x3f, 0x05, 0xc0, 0x69, 0xf2, 0x4b, 0x1f, 0xfa, 0xe1, 0x8f, 0x4e, 0x7f, - 0xe0, 0xf7, 0x7e, 0x74, 0xfa, 0x03, 0x7f, 0xf4, 0xa3, 0xd3, 0x1f, 0xf8, 0xb9, 0xbd, 0xd3, 0xd6, - 0x0f, 0xf7, 0x4e, 0x5b, 0xbf, 0xb7, 0x77, 0xda, 0xfa, 0xb3, 0xbd, 0xd3, 0xd6, 0x57, 0x7f, 0x7c, - 0xfa, 0x03, 0x6f, 0x94, 0xb6, 0x2f, 0xfc, 0xdf, 0x00, 0x00, 0x00, 0xff, 0xff, 0xe8, 0xe6, 0xb4, - 0xea, 0xa4, 0xcc, 0x00, 0x00, + // 11467 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x7d, 0x6d, 0x8c, 0x24, 0xc7, + 0x75, 0x98, 0x7a, 0x66, 0xf6, 0x63, 0xde, 0x7e, 0xd7, 0xed, 0x1d, 0x97, 0x2b, 0xf2, 0xf6, 0xd8, + 0x14, 0xe9, 0x23, 0x79, 0xdc, 0xd3, 0x1d, 0x49, 0xf1, 0x24, 0xca, 0xb4, 0x76, 0x77, 0x76, 0xef, + 0xd6, 0xf7, 0x35, 0xac, 0xd9, 0xbb, 0xa3, 0x28, 0x46, 0x64, 0xdf, 0x74, 0xed, 0x6e, 0xf3, 0x66, + 0xbb, 0x87, 0xdd, 0x3d, 0x7b, 0xb7, 0x34, 0x0c, 0xd8, 0x8a, 0x60, 0x2b, 0x80, 0x92, 0xc8, 0x70, + 0x04, 0x04, 0x4e, 0x00, 0x05, 0x06, 0xe2, 0x28, 0xdf, 0x56, 0x04, 0x7d, 0x18, 0x96, 0x13, 0xc4, + 0xb1, 0x1c, 0x39, 0x48, 0x1c, 0x03, 0x46, 0x6c, 0x05, 0x86, 0xd7, 0xd6, 0x0a, 0xf1, 0xbf, 0x04, + 0x41, 0xf2, 0x6f, 0xf3, 0x81, 0xa0, 0x3e, 0xbb, 0xaa, 0xa7, 0x67, 0xbb, 0x67, 0x79, 0xbb, 0xa6, + 0x84, 0xfc, 0x9b, 0xa9, 0xf7, 0xea, 0x55, 0x75, 0x7d, 0xbc, 0x7a, 0xef, 0xd5, 0x7b, 0xaf, 0xe0, + 0xdc, 0xbd, 0x4b, 0xd1, 0xbc, 0x17, 0x9c, 0xbf, 0xd7, 0xb9, 0x4b, 0x42, 0x9f, 0xc4, 0x24, 0x3a, + 0xdf, 0xbe, 0xb7, 0x71, 0xde, 0x69, 0x7b, 0xe7, 0xb7, 0x2f, 0x9c, 0xdf, 0x20, 0x3e, 0x09, 0x9d, + 0x98, 0xb8, 0xf3, 0xed, 0x30, 0x88, 0x03, 0xf4, 0x18, 0xc7, 0x9e, 0x4f, 0xb0, 0xe7, 0xdb, 0xf7, + 0x36, 0xe6, 0x9d, 0xb6, 0x37, 0xbf, 0x7d, 0x61, 0xf6, 0xf9, 0x0d, 0x2f, 0xde, 0xec, 0xdc, 0x9d, + 0x6f, 0x06, 0x5b, 0xe7, 0x37, 0x82, 0x8d, 0xe0, 0x3c, 0xab, 0x74, 0xb7, 0xb3, 0xce, 0xfe, 0xb1, + 0x3f, 0xec, 0x17, 0x27, 0x36, 0xfb, 0xa2, 0x68, 0xda, 0x69, 0x7b, 0x5b, 0x4e, 0x73, 0xd3, 0xf3, + 0x49, 0xb8, 0xa3, 0x1a, 0x0f, 0x49, 0x14, 0x74, 0xc2, 0x26, 0x49, 0x77, 0xe1, 0xc0, 0x5a, 0xd1, + 0xf9, 0x2d, 0x12, 0x3b, 0x19, 0x1d, 0x9f, 0x3d, 0xdf, 0xab, 0x56, 0xd8, 0xf1, 0x63, 0x6f, 0xab, + 0xbb, 0x99, 0x8f, 0xe5, 0x55, 0x88, 0x9a, 0x9b, 0x64, 0xcb, 0xe9, 0xaa, 0xf7, 0x42, 0xaf, 0x7a, + 0x9d, 0xd8, 0x6b, 0x9d, 0xf7, 0xfc, 0x38, 0x8a, 0xc3, 0x74, 0x25, 0xfb, 0x8f, 0x2d, 0x38, 0xb3, + 0x70, 0xa7, 0xb1, 0xdc, 0x72, 0xa2, 0xd8, 0x6b, 0x2e, 0xb6, 0x82, 0xe6, 0xbd, 0x46, 0x1c, 0x84, + 0xe4, 0x76, 0xd0, 0xea, 0x6c, 0x91, 0x06, 0x1b, 0x08, 0x74, 0x0e, 0x86, 0xb7, 0xd9, 0xff, 0xd5, + 0xda, 0x8c, 0x75, 0xc6, 0x3a, 0x5b, 0x5d, 0x9c, 0xfc, 0xde, 0xee, 0xdc, 0x87, 0xf6, 0x76, 0xe7, + 0x86, 0x6f, 0x8b, 0x72, 0xac, 0x30, 0xd0, 0xd3, 0x30, 0xb8, 0x1e, 0xad, 0xed, 0xb4, 0xc9, 0x4c, + 0x89, 0xe1, 0x8e, 0x0b, 0xdc, 0xc1, 0x95, 0x06, 0x2d, 0xc5, 0x02, 0x8a, 0xce, 0x43, 0xb5, 0xed, + 0x84, 0xb1, 0x17, 0x7b, 0x81, 0x3f, 0x53, 0x3e, 0x63, 0x9d, 0x1d, 0x58, 0x9c, 0x12, 0xa8, 0xd5, + 0xba, 0x04, 0xe0, 0x04, 0x87, 0x76, 0x23, 0x24, 0x8e, 0x7b, 0xd3, 0x6f, 0xed, 0xcc, 0x54, 0xce, + 0x58, 0x67, 0x87, 0x93, 0x6e, 0x60, 0x51, 0x8e, 0x15, 0x86, 0xfd, 0xed, 0x12, 0x0c, 0x2f, 0xac, + 0xaf, 0x7b, 0xbe, 0x17, 0xef, 0xa0, 0xb7, 0x61, 0xd4, 0x0f, 0x5c, 0x22, 0xff, 0xb3, 0xaf, 0x18, + 0xb9, 0xf8, 0xec, 0xfc, 0x41, 0x8b, 0x6a, 0xfe, 0x86, 0x56, 0x63, 0x71, 0x72, 0x6f, 0x77, 0x6e, + 0x54, 0x2f, 0xc1, 0x06, 0x45, 0xf4, 0x26, 0x8c, 0xb4, 0x03, 0x57, 0x35, 0x50, 0x62, 0x0d, 0x3c, + 0x73, 0x70, 0x03, 0xf5, 0xa4, 0xc2, 0xe2, 0xc4, 0xde, 0xee, 0xdc, 0x88, 0x56, 0x80, 0x75, 0x72, + 0xa8, 0x05, 0x13, 0xf4, 0xaf, 0x1f, 0x7b, 0xaa, 0x85, 0x32, 0x6b, 0xe1, 0xf9, 0xfc, 0x16, 0xb4, + 0x4a, 0x8b, 0x27, 0xf6, 0x76, 0xe7, 0x26, 0x52, 0x85, 0x38, 0x4d, 0xda, 0x7e, 0x0f, 0xc6, 0x17, + 0xe2, 0xd8, 0x69, 0x6e, 0x12, 0x97, 0xcf, 0x2f, 0x7a, 0x11, 0x2a, 0xbe, 0xb3, 0x45, 0xc4, 0xec, + 0x9f, 0x11, 0xc3, 0x5e, 0xb9, 0xe1, 0x6c, 0x91, 0xfd, 0xdd, 0xb9, 0xc9, 0x5b, 0xbe, 0xf7, 0x6e, + 0x47, 0xac, 0x19, 0x5a, 0x86, 0x19, 0x36, 0xba, 0x08, 0xe0, 0x92, 0x6d, 0xaf, 0x49, 0xea, 0x4e, + 0xbc, 0x29, 0x56, 0x03, 0x12, 0x75, 0xa1, 0xa6, 0x20, 0x58, 0xc3, 0xb2, 0x3f, 0x67, 0x41, 0x75, + 0x61, 0x3b, 0xf0, 0xdc, 0x7a, 0xe0, 0x46, 0xa8, 0x03, 0x13, 0xed, 0x90, 0xac, 0x93, 0x50, 0x15, + 0xcd, 0x58, 0x67, 0xca, 0x67, 0x47, 0x2e, 0x5e, 0xcc, 0xf9, 0x6e, 0xb3, 0xd2, 0xb2, 0x1f, 0x87, + 0x3b, 0x8b, 0x8f, 0x88, 0xa6, 0x27, 0x52, 0x50, 0x9c, 0x6e, 0xc3, 0xfe, 0x9d, 0x12, 0x9c, 0x5c, + 0x78, 0xaf, 0x13, 0x92, 0x9a, 0x17, 0xdd, 0x4b, 0x6f, 0x05, 0xd7, 0x8b, 0xee, 0xdd, 0x48, 0x06, + 0x43, 0xad, 0xc1, 0x9a, 0x28, 0xc7, 0x0a, 0x03, 0x3d, 0x0f, 0x43, 0xf4, 0xf7, 0x2d, 0xbc, 0x2a, + 0xbe, 0xfe, 0x84, 0x40, 0x1e, 0xa9, 0x39, 0xb1, 0x53, 0xe3, 0x20, 0x2c, 0x71, 0xd0, 0x75, 0x18, + 0x69, 0xb2, 0x9d, 0xbb, 0x71, 0x3d, 0x70, 0x09, 0x9b, 0xe1, 0xea, 0xe2, 0x73, 0x14, 0x7d, 0x29, + 0x29, 0xde, 0xdf, 0x9d, 0x9b, 0xe1, 0x7d, 0x13, 0x24, 0x34, 0x18, 0xd6, 0xeb, 0x23, 0x5b, 0x6d, + 0xc4, 0x0a, 0xa3, 0x04, 0x19, 0x9b, 0xf0, 0xac, 0xb6, 0xa7, 0x06, 0xd8, 0x9e, 0x1a, 0xcd, 0xde, + 0x4f, 0xe8, 0x02, 0x54, 0xee, 0x79, 0xbe, 0x3b, 0x33, 0xc8, 0x68, 0x3d, 0x4e, 0xa7, 0xff, 0xaa, + 0xe7, 0xbb, 0xfb, 0xbb, 0x73, 0x53, 0x46, 0x77, 0x68, 0x21, 0x66, 0xa8, 0xf6, 0x3f, 0xb2, 0xc4, + 0x30, 0xae, 0x78, 0x2d, 0x93, 0xa3, 0x5c, 0x04, 0x88, 0x48, 0x33, 0x24, 0xb1, 0x36, 0x90, 0x6a, + 0x65, 0x34, 0x14, 0x04, 0x6b, 0x58, 0x94, 0x5f, 0x44, 0x9b, 0x4e, 0xc8, 0x16, 0x98, 0x18, 0x4e, + 0xc5, 0x2f, 0x1a, 0x12, 0x80, 0x13, 0x1c, 0x83, 0x5f, 0x94, 0x73, 0xf9, 0xc5, 0x6f, 0x5b, 0x30, + 0xb4, 0xe8, 0xf9, 0xae, 0xe7, 0x6f, 0xa0, 0xb7, 0x61, 0x98, 0xb2, 0x73, 0xd7, 0x89, 0x1d, 0xc1, + 0x2a, 0x3e, 0x2a, 0xd7, 0x9b, 0xce, 0x5d, 0xe5, 0x8a, 0x8b, 0xe6, 0x29, 0x36, 0x5d, 0x77, 0x37, + 0xef, 0xbe, 0x43, 0x9a, 0xf1, 0x75, 0x12, 0x3b, 0xc9, 0xe7, 0x24, 0x65, 0x58, 0x51, 0x45, 0xb7, + 0x60, 0x30, 0x76, 0xc2, 0x0d, 0x12, 0x0b, 0x4e, 0x91, 0xb3, 0x8f, 0x39, 0x0d, 0x4c, 0x57, 0x29, + 0xf1, 0x9b, 0x24, 0xe1, 0xa9, 0x6b, 0x8c, 0x08, 0x16, 0xc4, 0xec, 0x26, 0x8c, 0x2e, 0x39, 0x6d, + 0xe7, 0xae, 0xd7, 0xf2, 0x62, 0x8f, 0x44, 0xe8, 0x27, 0xa0, 0xec, 0xb8, 0x2e, 0xdb, 0x33, 0xd5, + 0xc5, 0x93, 0x7b, 0xbb, 0x73, 0xe5, 0x05, 0x97, 0x4e, 0x19, 0x28, 0xac, 0x1d, 0x4c, 0x31, 0xd0, + 0xb3, 0x50, 0x71, 0xc3, 0xa0, 0x3d, 0x53, 0x62, 0x98, 0xa7, 0xe8, 0xec, 0xd6, 0xc2, 0xa0, 0x9d, + 0x42, 0x65, 0x38, 0xf6, 0x77, 0x4b, 0x80, 0x96, 0x48, 0x7b, 0x73, 0xa5, 0x61, 0xcc, 0xe9, 0x59, + 0x18, 0xde, 0x0a, 0x7c, 0x2f, 0x0e, 0xc2, 0x48, 0x34, 0xc8, 0x96, 0xd2, 0x75, 0x51, 0x86, 0x15, + 0x14, 0x9d, 0x81, 0x4a, 0x3b, 0xe1, 0x08, 0xa3, 0x92, 0x9b, 0x30, 0x5e, 0xc0, 0x20, 0x14, 0xa3, + 0x13, 0x91, 0x50, 0x6c, 0x01, 0x85, 0x71, 0x2b, 0x22, 0x21, 0x66, 0x90, 0x64, 0x05, 0xd1, 0xb5, + 0x25, 0x16, 0x78, 0x6a, 0x05, 0x51, 0x08, 0xd6, 0xb0, 0xd0, 0x5b, 0x50, 0xe5, 0xff, 0x30, 0x59, + 0x67, 0xab, 0x3d, 0x97, 0x8f, 0x5c, 0x0b, 0x9a, 0x4e, 0x2b, 0x3d, 0xf8, 0x63, 0x6c, 0xc5, 0x49, + 0x42, 0x38, 0xa1, 0x69, 0xac, 0xb8, 0xc1, 0xdc, 0x15, 0xf7, 0xb7, 0x2d, 0x40, 0x4b, 0x9e, 0xef, + 0x92, 0xf0, 0x18, 0x4e, 0xdb, 0xfe, 0x36, 0xc3, 0x9f, 0xd0, 0xae, 0x05, 0x5b, 0xed, 0xc0, 0x27, + 0x7e, 0xbc, 0x14, 0xf8, 0x2e, 0x3f, 0x81, 0x3f, 0x01, 0x95, 0x98, 0x36, 0xc5, 0xbb, 0xf5, 0xb4, + 0x9c, 0x16, 0xda, 0xc0, 0xfe, 0xee, 0xdc, 0xa9, 0xee, 0x1a, 0xac, 0x0b, 0xac, 0x0e, 0xfa, 0x38, + 0x0c, 0x46, 0xb1, 0x13, 0x77, 0x22, 0xd1, 0xd1, 0x27, 0x64, 0x47, 0x1b, 0xac, 0x74, 0x7f, 0x77, + 0x6e, 0x42, 0x55, 0xe3, 0x45, 0x58, 0x54, 0x40, 0xcf, 0xc0, 0xd0, 0x16, 0x89, 0x22, 0x67, 0x43, + 0xf2, 0xc4, 0x09, 0x51, 0x77, 0xe8, 0x3a, 0x2f, 0xc6, 0x12, 0x8e, 0x9e, 0x84, 0x01, 0x12, 0x86, + 0x41, 0x28, 0x56, 0xc4, 0x98, 0x40, 0x1c, 0x58, 0xa6, 0x85, 0x98, 0xc3, 0xec, 0xff, 0x6c, 0xc1, + 0x84, 0xea, 0x2b, 0x6f, 0xeb, 0x18, 0xb6, 0xbc, 0x0b, 0xd0, 0x94, 0x1f, 0x18, 0xb1, 0x8d, 0xa6, + 0xb5, 0x91, 0xbd, 0xfc, 0xba, 0x07, 0x34, 0x69, 0x43, 0x15, 0x45, 0x58, 0xa3, 0x6b, 0xff, 0x5b, + 0x0b, 0x4e, 0xa4, 0xbe, 0xed, 0x9a, 0x17, 0xc5, 0xe8, 0xcd, 0xae, 0xef, 0x9b, 0x2f, 0xf6, 0x7d, + 0xb4, 0x36, 0xfb, 0x3a, 0xb5, 0x5e, 0x64, 0x89, 0xf6, 0x6d, 0x18, 0x06, 0xbc, 0x98, 0x6c, 0xc9, + 0xcf, 0x7a, 0xbe, 0xe0, 0x67, 0xf1, 0xfe, 0x25, 0xb3, 0xb4, 0x4a, 0x69, 0x60, 0x4e, 0xca, 0xfe, + 0x5f, 0x16, 0x54, 0x97, 0x02, 0x7f, 0xdd, 0xdb, 0xb8, 0xee, 0xb4, 0x8f, 0x61, 0x7e, 0x1a, 0x50, + 0x61, 0xd4, 0xf9, 0x27, 0x5c, 0xc8, 0xfb, 0x04, 0xd1, 0xb1, 0x79, 0x7a, 0xee, 0x71, 0xf9, 0x42, + 0xb1, 0x29, 0x5a, 0x84, 0x19, 0xb1, 0xd9, 0x97, 0xa1, 0xaa, 0x10, 0xd0, 0x24, 0x94, 0xef, 0x11, + 0x2e, 0x7c, 0x56, 0x31, 0xfd, 0x89, 0xa6, 0x61, 0x60, 0xdb, 0x69, 0x75, 0xc4, 0xe6, 0xc5, 0xfc, + 0xcf, 0x27, 0x4a, 0x97, 0x2c, 0xfb, 0xbb, 0x6c, 0x07, 0x8a, 0x46, 0x96, 0xfd, 0x6d, 0xc1, 0x1c, + 0x3e, 0x6f, 0xc1, 0x74, 0x2b, 0x83, 0x29, 0x89, 0x31, 0x39, 0x0c, 0x3b, 0x7b, 0x4c, 0x74, 0x7b, + 0x3a, 0x0b, 0x8a, 0x33, 0x5b, 0xa3, 0xbc, 0x3e, 0x68, 0xd3, 0x05, 0xe7, 0xb4, 0x58, 0xd7, 0x85, + 0xd8, 0x70, 0x53, 0x94, 0x61, 0x05, 0xb5, 0xff, 0xc2, 0x82, 0x69, 0xf5, 0x1d, 0x57, 0xc9, 0x4e, + 0x83, 0xb4, 0x48, 0x33, 0x0e, 0xc2, 0x0f, 0xca, 0x97, 0x3c, 0xce, 0xe7, 0x84, 0xf3, 0xa4, 0x11, + 0x41, 0xa0, 0x7c, 0x95, 0xec, 0xf0, 0x09, 0xd2, 0x3f, 0xb4, 0x7c, 0xe0, 0x87, 0xfe, 0xa6, 0x05, + 0x63, 0xea, 0x43, 0x8f, 0x61, 0xcb, 0x5d, 0x33, 0xb7, 0xdc, 0x4f, 0x14, 0x5c, 0xaf, 0x3d, 0x36, + 0xdb, 0xdf, 0x2a, 0x51, 0xb6, 0x21, 0x70, 0xea, 0x61, 0x40, 0x07, 0x89, 0x72, 0xfc, 0x0f, 0xc8, + 0x2c, 0xf5, 0xf7, 0xb1, 0x57, 0xc9, 0xce, 0x5a, 0x40, 0xa5, 0x89, 0xec, 0x8f, 0x35, 0x26, 0xb5, + 0x72, 0xe0, 0xa4, 0xfe, 0x5e, 0x09, 0x4e, 0xaa, 0x61, 0x31, 0x4e, 0xe9, 0x1f, 0xcb, 0x81, 0xb9, + 0x00, 0x23, 0x2e, 0x59, 0x77, 0x3a, 0xad, 0x58, 0x29, 0x20, 0x03, 0x5c, 0x33, 0xad, 0x25, 0xc5, + 0x58, 0xc7, 0xe9, 0x63, 0x2c, 0xbf, 0x32, 0xc2, 0xf8, 0x79, 0xec, 0xd0, 0x55, 0x4f, 0x25, 0x3c, + 0x4d, 0xa3, 0x1c, 0xd5, 0x35, 0x4a, 0xa1, 0x3d, 0x3e, 0x09, 0x03, 0xde, 0x16, 0x3d, 0xf3, 0x4b, + 0xe6, 0x51, 0xbe, 0x4a, 0x0b, 0x31, 0x87, 0xa1, 0xa7, 0x60, 0xa8, 0x19, 0x6c, 0x6d, 0x39, 0xbe, + 0x3b, 0x53, 0x66, 0x32, 0xe7, 0x08, 0x15, 0x0b, 0x96, 0x78, 0x11, 0x96, 0x30, 0xf4, 0x18, 0x54, + 0x9c, 0x70, 0x23, 0x9a, 0xa9, 0x30, 0x9c, 0x61, 0xda, 0xd2, 0x42, 0xb8, 0x11, 0x61, 0x56, 0x4a, + 0x65, 0xc9, 0xfb, 0x41, 0x78, 0xcf, 0xf3, 0x37, 0x6a, 0x5e, 0xc8, 0x04, 0x43, 0x4d, 0x96, 0xbc, + 0xa3, 0x20, 0x58, 0xc3, 0x42, 0x75, 0x18, 0x68, 0x07, 0x61, 0x1c, 0xcd, 0x0c, 0xb2, 0x81, 0x7f, + 0x2e, 0x77, 0xfb, 0xf1, 0xef, 0xae, 0x07, 0x61, 0x9c, 0x7c, 0x0a, 0xfd, 0x17, 0x61, 0x4e, 0x08, + 0x2d, 0x41, 0x99, 0xf8, 0xdb, 0x33, 0x43, 0x8c, 0xde, 0x47, 0x0e, 0xa6, 0xb7, 0xec, 0x6f, 0xdf, + 0x76, 0xc2, 0x84, 0x5f, 0x2d, 0xfb, 0xdb, 0x98, 0xd6, 0x46, 0x4d, 0xa8, 0x4a, 0xfb, 0x55, 0x34, + 0x33, 0x5c, 0x64, 0x29, 0x62, 0x81, 0x8e, 0xc9, 0xbb, 0x1d, 0x2f, 0x24, 0x5b, 0xc4, 0x8f, 0xa3, + 0x44, 0xb1, 0x92, 0xd0, 0x08, 0x27, 0x74, 0x51, 0x13, 0x46, 0xb9, 0xfc, 0x79, 0x3d, 0xe8, 0xf8, + 0x71, 0x34, 0x53, 0x65, 0x5d, 0xce, 0x31, 0x76, 0xdc, 0x4e, 0x6a, 0x2c, 0x4e, 0x0b, 0xf2, 0xa3, + 0x5a, 0x61, 0x84, 0x0d, 0xa2, 0xe8, 0x4d, 0x18, 0x6b, 0x79, 0xdb, 0xc4, 0x27, 0x51, 0x54, 0x0f, + 0x83, 0xbb, 0x64, 0x06, 0xd8, 0xd7, 0x3c, 0x99, 0xa7, 0xf8, 0x07, 0x77, 0xc9, 0xe2, 0xd4, 0xde, + 0xee, 0xdc, 0xd8, 0x35, 0xbd, 0x36, 0x36, 0x89, 0xa1, 0xb7, 0x60, 0x9c, 0x0a, 0xbb, 0x5e, 0x42, + 0x7e, 0xa4, 0x38, 0x79, 0xb4, 0xb7, 0x3b, 0x37, 0x8e, 0x8d, 0xea, 0x38, 0x45, 0x0e, 0xad, 0x41, + 0xb5, 0xe5, 0xad, 0x93, 0xe6, 0x4e, 0xb3, 0x45, 0x66, 0x46, 0x19, 0xed, 0x9c, 0xcd, 0x79, 0x4d, + 0xa2, 0x73, 0x05, 0x43, 0xfd, 0xc5, 0x09, 0x21, 0x74, 0x1b, 0x4e, 0xc5, 0x24, 0xdc, 0xf2, 0x7c, + 0x87, 0x6e, 0x2a, 0x21, 0xfd, 0x32, 0xeb, 0xca, 0x18, 0x5b, 0xb5, 0xa7, 0xc5, 0xc0, 0x9e, 0x5a, + 0xcb, 0xc4, 0xc2, 0x3d, 0x6a, 0xa3, 0x9b, 0x30, 0xc1, 0xf6, 0x53, 0xbd, 0xd3, 0x6a, 0xd5, 0x83, + 0x96, 0xd7, 0xdc, 0x99, 0x19, 0x67, 0x04, 0x9f, 0x92, 0x36, 0x93, 0x55, 0x13, 0x4c, 0x15, 0xc3, + 0xe4, 0x1f, 0x4e, 0xd7, 0x46, 0x2d, 0x98, 0x88, 0x48, 0xb3, 0x13, 0x7a, 0xf1, 0x0e, 0x5d, 0xfb, + 0xe4, 0x41, 0x3c, 0x33, 0x51, 0x44, 0xd1, 0x6d, 0x98, 0x95, 0xb8, 0xc1, 0x2a, 0x55, 0x88, 0xd3, + 0xa4, 0x29, 0xab, 0x88, 0x62, 0xd7, 0xf3, 0x67, 0x26, 0x19, 0x07, 0x52, 0xfb, 0xab, 0x41, 0x0b, + 0x31, 0x87, 0x31, 0xfb, 0x01, 0xfd, 0x71, 0x93, 0x72, 0xe9, 0x29, 0x86, 0x98, 0xd8, 0x0f, 0x24, + 0x00, 0x27, 0x38, 0x54, 0x34, 0x88, 0xe3, 0x9d, 0x19, 0xc4, 0x50, 0xd5, 0x56, 0x5b, 0x5b, 0xfb, + 0x34, 0xa6, 0xe5, 0xe8, 0x36, 0x0c, 0x11, 0x7f, 0x7b, 0x25, 0x0c, 0xb6, 0x66, 0x4e, 0x14, 0xe1, + 0x01, 0xcb, 0x1c, 0x99, 0x9f, 0x1f, 0x89, 0x0a, 0x23, 0x8a, 0xb1, 0x24, 0x86, 0x1e, 0xc0, 0x4c, + 0xc6, 0x2c, 0xf1, 0x49, 0x99, 0x66, 0x93, 0xf2, 0x49, 0x51, 0x77, 0x66, 0xad, 0x07, 0xde, 0xfe, + 0x01, 0x30, 0xdc, 0x93, 0xba, 0x7d, 0x17, 0xc6, 0x15, 0xa3, 0x62, 0xf3, 0x8d, 0xe6, 0x60, 0x80, + 0xf2, 0x62, 0xa9, 0xd0, 0x57, 0xe9, 0xa0, 0x52, 0x16, 0x1d, 0x61, 0x5e, 0xce, 0x06, 0xd5, 0x7b, + 0x8f, 0x2c, 0xee, 0xc4, 0x84, 0x2b, 0x76, 0x65, 0x6d, 0x50, 0x25, 0x00, 0x27, 0x38, 0xf6, 0xff, + 0xe5, 0x62, 0x52, 0xc2, 0x0d, 0x0b, 0x9c, 0x04, 0xe7, 0x60, 0x78, 0x33, 0x88, 0x62, 0x8a, 0xcd, + 0xda, 0x18, 0x48, 0x04, 0xa3, 0x2b, 0xa2, 0x1c, 0x2b, 0x0c, 0xf4, 0x0a, 0x8c, 0x35, 0xf5, 0x06, + 0xc4, 0x31, 0x76, 0x52, 0x54, 0x31, 0x5b, 0xc7, 0x26, 0x2e, 0xba, 0x04, 0xc3, 0xcc, 0x30, 0xde, + 0x0c, 0x5a, 0x42, 0x85, 0x94, 0xa7, 0xf2, 0x70, 0x5d, 0x94, 0xef, 0x6b, 0xbf, 0xb1, 0xc2, 0xa6, + 0x8a, 0x38, 0xed, 0xc2, 0x6a, 0x5d, 0x1c, 0x20, 0x4a, 0x11, 0xbf, 0xc2, 0x4a, 0xb1, 0x80, 0xda, + 0xbf, 0x5e, 0xd2, 0x46, 0x99, 0x2a, 0x40, 0x04, 0xbd, 0x01, 0x43, 0xf7, 0x1d, 0x2f, 0xf6, 0xfc, + 0x0d, 0x21, 0x3d, 0xbc, 0x50, 0xf0, 0x34, 0x61, 0xd5, 0xef, 0xf0, 0xaa, 0xfc, 0xe4, 0x13, 0x7f, + 0xb0, 0x24, 0x48, 0x69, 0x87, 0x1d, 0xdf, 0xa7, 0xb4, 0x4b, 0xfd, 0xd3, 0xc6, 0xbc, 0x2a, 0xa7, + 0x2d, 0xfe, 0x60, 0x49, 0x10, 0xad, 0x03, 0xc8, 0xb5, 0x44, 0x5c, 0x61, 0x90, 0xfe, 0x58, 0x3f, + 0xe4, 0xd7, 0x54, 0xed, 0xc5, 0x71, 0x7a, 0xd6, 0x26, 0xff, 0xb1, 0x46, 0xd9, 0x8e, 0x99, 0x10, + 0xd6, 0xdd, 0x2d, 0xf4, 0x19, 0xba, 0xa5, 0x9d, 0x30, 0x26, 0xee, 0x42, 0x9c, 0xb6, 0xe9, 0x1f, + 0x2c, 0x62, 0xaf, 0x79, 0x5b, 0x44, 0xdf, 0xfe, 0x82, 0x08, 0x4e, 0xe8, 0xd9, 0xdf, 0x2a, 0xc3, + 0x4c, 0xaf, 0xee, 0xd2, 0x25, 0x49, 0x1e, 0x78, 0xf1, 0x12, 0x15, 0x93, 0x2c, 0x73, 0x49, 0x2e, + 0x8b, 0x72, 0xac, 0x30, 0xe8, 0xda, 0x88, 0xbc, 0x0d, 0xa9, 0x2c, 0x0d, 0x24, 0x6b, 0xa3, 0xc1, + 0x4a, 0xb1, 0x80, 0x52, 0xbc, 0x90, 0x38, 0x91, 0xb8, 0x0f, 0xd1, 0xd6, 0x10, 0x66, 0xa5, 0x58, + 0x40, 0x75, 0x83, 0x48, 0x25, 0xc7, 0x20, 0x62, 0x0c, 0xd1, 0xc0, 0xc3, 0x1d, 0x22, 0xf4, 0x59, + 0x80, 0x75, 0xcf, 0xf7, 0xa2, 0x4d, 0x46, 0x7d, 0xb0, 0x6f, 0xea, 0x4a, 0xc8, 0x5a, 0x51, 0x54, + 0xb0, 0x46, 0x11, 0xbd, 0x04, 0x23, 0x6a, 0x7b, 0xae, 0xd6, 0x66, 0x86, 0x4c, 0x1b, 0x7a, 0xc2, + 0xab, 0x6a, 0x58, 0xc7, 0xb3, 0xdf, 0x49, 0xaf, 0x17, 0xb1, 0x2b, 0xb4, 0xf1, 0xb5, 0x8a, 0x8e, + 0x6f, 0xe9, 0xe0, 0xf1, 0xb5, 0xff, 0xa8, 0x0c, 0x13, 0x46, 0x63, 0x9d, 0xa8, 0x00, 0x47, 0x7b, + 0x8d, 0x1e, 0x58, 0x4e, 0x4c, 0xc4, 0x9e, 0x3c, 0xd7, 0xcf, 0xa6, 0xd1, 0x8f, 0x37, 0xba, 0x17, + 0x38, 0x25, 0xb4, 0x09, 0xd5, 0x96, 0x13, 0x31, 0x93, 0x0a, 0x11, 0x7b, 0xb1, 0x3f, 0xb2, 0x89, + 0xfa, 0xe1, 0x44, 0xb1, 0x76, 0x7a, 0xf0, 0x56, 0x12, 0xe2, 0xf4, 0xb4, 0xa5, 0xc2, 0x8e, 0xbc, + 0x84, 0x53, 0xdd, 0xa1, 0x12, 0xd1, 0x0e, 0xe6, 0x30, 0x74, 0x09, 0x46, 0x43, 0xc2, 0x56, 0xca, + 0x12, 0x95, 0xe7, 0xd8, 0xd2, 0x1b, 0x48, 0x04, 0x3f, 0xac, 0xc1, 0xb0, 0x81, 0x99, 0xc8, 0xfd, + 0x83, 0x07, 0xc8, 0xfd, 0xcf, 0xc0, 0x10, 0xfb, 0xa1, 0x56, 0x85, 0x9a, 0xa1, 0x55, 0x5e, 0x8c, + 0x25, 0x3c, 0xbd, 0x88, 0x86, 0x0b, 0x2e, 0xa2, 0x67, 0x61, 0xbc, 0xe6, 0x90, 0xad, 0xc0, 0x5f, + 0xf6, 0xdd, 0x76, 0xe0, 0xf9, 0x31, 0x9a, 0x81, 0x0a, 0x3b, 0x4f, 0xf8, 0x7e, 0xaf, 0x50, 0x0a, + 0xb8, 0x42, 0x65, 0x77, 0xfb, 0x4f, 0x4a, 0x30, 0x56, 0x23, 0x2d, 0x12, 0x13, 0xae, 0xf7, 0x44, + 0x68, 0x05, 0xd0, 0x46, 0xe8, 0x34, 0x49, 0x9d, 0x84, 0x5e, 0xe0, 0x36, 0x48, 0x33, 0xf0, 0xd9, + 0xdd, 0x15, 0x3d, 0x20, 0x4f, 0xed, 0xed, 0xce, 0xa1, 0xcb, 0x5d, 0x50, 0x9c, 0x51, 0x03, 0xb9, + 0x30, 0xd6, 0x0e, 0x89, 0x61, 0x37, 0xb4, 0xf2, 0x45, 0x8d, 0xba, 0x5e, 0x85, 0x4b, 0xc3, 0x46, + 0x11, 0x36, 0x89, 0xa2, 0x4f, 0xc1, 0x64, 0x10, 0xb6, 0x37, 0x1d, 0xbf, 0x46, 0xda, 0xc4, 0x77, + 0xa9, 0x0a, 0x20, 0xac, 0x1d, 0xd3, 0x7b, 0xbb, 0x73, 0x93, 0x37, 0x53, 0x30, 0xdc, 0x85, 0x8d, + 0xde, 0x80, 0xa9, 0x76, 0x18, 0xb4, 0x9d, 0x0d, 0xb6, 0x64, 0x84, 0xb4, 0xc2, 0x79, 0xd3, 0xb9, + 0xbd, 0xdd, 0xb9, 0xa9, 0x7a, 0x1a, 0xb8, 0xbf, 0x3b, 0x77, 0x82, 0x0d, 0x19, 0x2d, 0x49, 0x80, + 0xb8, 0x9b, 0x8c, 0xfd, 0x2e, 0x9c, 0xac, 0x05, 0xf7, 0xfd, 0xfb, 0x4e, 0xe8, 0x2e, 0xd4, 0x57, + 0x35, 0xe3, 0xc4, 0xeb, 0x52, 0xf9, 0xe5, 0x77, 0x82, 0x39, 0x27, 0x9b, 0x46, 0x83, 0xab, 0x1d, + 0x2b, 0x5e, 0x8b, 0xf4, 0x30, 0x87, 0xfc, 0xe3, 0x92, 0xd1, 0x66, 0x82, 0xaf, 0xee, 0x2e, 0xac, + 0x9e, 0x77, 0x17, 0x9f, 0x81, 0xe1, 0x75, 0x8f, 0xb4, 0x5c, 0x4c, 0xd6, 0xc5, 0x6c, 0x5d, 0x28, + 0x72, 0xb9, 0xb3, 0x42, 0xeb, 0x48, 0xeb, 0x18, 0x57, 0xa2, 0x57, 0x04, 0x19, 0xac, 0x08, 0xa2, + 0x0e, 0x4c, 0x4a, 0x3d, 0x4c, 0x42, 0xc5, 0x66, 0x7f, 0xa1, 0x98, 0x9a, 0x67, 0x36, 0xc3, 0xa6, + 0x17, 0xa7, 0x08, 0xe2, 0xae, 0x26, 0xa8, 0xfe, 0xbc, 0x45, 0x8f, 0xba, 0x0a, 0x5b, 0xfa, 0x4c, + 0x7f, 0x66, 0xa6, 0x00, 0x56, 0x6a, 0xff, 0x9a, 0x05, 0x8f, 0x74, 0x8d, 0x96, 0xb0, 0x93, 0x1c, + 0xd9, 0x1c, 0xa5, 0x8d, 0x15, 0xa5, 0x7c, 0x63, 0x85, 0xfd, 0xeb, 0x16, 0x4c, 0x2f, 0x6f, 0xb5, + 0xe3, 0x9d, 0x9a, 0x67, 0xde, 0xb9, 0xbc, 0x0c, 0x83, 0x5b, 0xc4, 0xf5, 0x3a, 0x5b, 0x62, 0x5e, + 0xe7, 0xe4, 0xc1, 0x70, 0x9d, 0x95, 0xee, 0xef, 0xce, 0x8d, 0x35, 0xe2, 0x20, 0x74, 0x36, 0x08, + 0x2f, 0xc0, 0x02, 0x9d, 0x5d, 0x29, 0x79, 0xef, 0x91, 0x6b, 0xde, 0x96, 0x27, 0xaf, 0xf2, 0x0e, + 0x34, 0xf2, 0xcd, 0xcb, 0xa1, 0x9d, 0x7f, 0xad, 0xe3, 0xf8, 0xb1, 0x17, 0xef, 0x98, 0xf2, 0x32, + 0x23, 0x84, 0x13, 0x9a, 0xf6, 0x0f, 0x2c, 0x98, 0x90, 0x1c, 0x68, 0xc1, 0x75, 0x43, 0x12, 0x45, + 0x68, 0x16, 0x4a, 0x5e, 0x5b, 0xf4, 0x14, 0x44, 0xed, 0xd2, 0x6a, 0x1d, 0x97, 0xbc, 0x36, 0x7a, + 0x03, 0xaa, 0xfc, 0x2e, 0x30, 0x59, 0x7e, 0x7d, 0xde, 0x2d, 0x32, 0xed, 0x73, 0x4d, 0xd2, 0xc0, + 0x09, 0x39, 0x29, 0x87, 0xb3, 0xb3, 0xad, 0x6c, 0xde, 0x4c, 0x5d, 0x11, 0xe5, 0x58, 0x61, 0xa0, + 0xb3, 0x30, 0xec, 0x07, 0x2e, 0xbf, 0xae, 0xe5, 0x9c, 0x80, 0x2d, 0xea, 0x1b, 0xa2, 0x0c, 0x2b, + 0xa8, 0xfd, 0x45, 0x0b, 0x46, 0xe5, 0x37, 0x16, 0x54, 0x09, 0xe8, 0x36, 0x4c, 0xd4, 0x81, 0x64, + 0x1b, 0x52, 0x91, 0x9e, 0x41, 0x0c, 0x49, 0xbe, 0xdc, 0x8f, 0x24, 0x6f, 0xff, 0x46, 0x09, 0xc6, + 0x65, 0x77, 0x1a, 0x9d, 0xbb, 0x11, 0xa1, 0x82, 0x4e, 0xd5, 0xe1, 0x83, 0x4f, 0xe4, 0x4a, 0x7e, + 0x3e, 0x4f, 0xdb, 0x33, 0xe6, 0x2c, 0x99, 0xe5, 0x05, 0x49, 0x07, 0x27, 0x24, 0xd1, 0x36, 0x4c, + 0xf9, 0x41, 0xcc, 0x0e, 0x50, 0x05, 0x2f, 0x76, 0x97, 0x92, 0x6e, 0xe7, 0x51, 0xd1, 0xce, 0xd4, + 0x8d, 0x34, 0x3d, 0xdc, 0xdd, 0x04, 0xba, 0x29, 0xad, 0x58, 0x65, 0xd6, 0xd6, 0xb3, 0xc5, 0xda, + 0xea, 0x6d, 0xc4, 0xb2, 0x7f, 0xd7, 0x82, 0xaa, 0x44, 0x3b, 0x8e, 0x4b, 0xb5, 0x3b, 0x30, 0x14, + 0xb1, 0x29, 0x92, 0xc3, 0x75, 0xae, 0xd8, 0x27, 0xf0, 0x79, 0x4d, 0xa4, 0x06, 0xfe, 0x3f, 0xc2, + 0x92, 0x1a, 0x33, 0xe7, 0xab, 0x0f, 0xf9, 0xc0, 0x99, 0xf3, 0x55, 0xcf, 0x7a, 0xdf, 0x9d, 0x8d, + 0x19, 0xf6, 0x06, 0x2a, 0xfa, 0xb6, 0x43, 0xb2, 0xee, 0x3d, 0x48, 0x8b, 0xbe, 0x75, 0x56, 0x8a, + 0x05, 0x14, 0xad, 0xc3, 0x68, 0x53, 0x1a, 0xbc, 0x13, 0x16, 0xf2, 0xd1, 0x82, 0xb7, 0x0b, 0xea, + 0xa2, 0x8a, 0xfb, 0x4b, 0x2d, 0x69, 0x94, 0xb0, 0x41, 0x97, 0xf2, 0xa9, 0xe4, 0x2e, 0xbe, 0x5c, + 0xd0, 0x34, 0x14, 0x92, 0x38, 0x69, 0xa1, 0xe7, 0x35, 0xbc, 0xfd, 0x55, 0x0b, 0x06, 0xb9, 0x85, + 0xb4, 0x98, 0x99, 0x59, 0xbb, 0x82, 0x4b, 0xc6, 0xf3, 0x36, 0x2d, 0x14, 0x37, 0x72, 0xe8, 0x0e, + 0x54, 0xd9, 0x0f, 0x66, 0xed, 0x29, 0x17, 0x71, 0x1e, 0xe3, 0xed, 0xeb, 0x5d, 0xbd, 0x2d, 0x09, + 0xe0, 0x84, 0x96, 0xfd, 0x9d, 0x32, 0x65, 0x7d, 0x09, 0xaa, 0x21, 0x3d, 0x58, 0xc7, 0x21, 0x3d, + 0x94, 0x8e, 0x5e, 0x7a, 0x78, 0x17, 0x26, 0x9a, 0xda, 0x15, 0x60, 0x32, 0xe3, 0x17, 0x0b, 0x2e, + 0x2b, 0xed, 0xde, 0x90, 0x5b, 0x04, 0x97, 0x4c, 0x72, 0x38, 0x4d, 0x1f, 0x11, 0x18, 0xe5, 0xeb, + 0x41, 0xb4, 0x57, 0x61, 0xed, 0x9d, 0x2f, 0xb2, 0xc2, 0xf4, 0xc6, 0xd8, 0x2a, 0x6e, 0x68, 0x84, + 0xb0, 0x41, 0xd6, 0xfe, 0x95, 0x01, 0x18, 0x58, 0xde, 0x26, 0x7e, 0x7c, 0x0c, 0xac, 0x6e, 0x0b, + 0xc6, 0x3d, 0x7f, 0x3b, 0x68, 0x6d, 0x13, 0x97, 0xc3, 0x0f, 0x77, 0xbc, 0x9f, 0x12, 0x8d, 0x8c, + 0xaf, 0x1a, 0xc4, 0x70, 0x8a, 0xf8, 0x51, 0xd8, 0x22, 0x5e, 0x83, 0x41, 0xbe, 0x32, 0x84, 0x21, + 0x22, 0xe7, 0xc6, 0x80, 0x0d, 0xac, 0xd8, 0x41, 0x89, 0xc5, 0x84, 0x5f, 0x56, 0x08, 0x42, 0xe8, + 0x1d, 0x18, 0x5f, 0xf7, 0xc2, 0x28, 0x5e, 0xf3, 0xb6, 0xa8, 0x0e, 0xb9, 0xd5, 0x3e, 0x84, 0x15, + 0x42, 0x8d, 0xc8, 0x8a, 0x41, 0x09, 0xa7, 0x28, 0xa3, 0x0d, 0x18, 0xa3, 0x4a, 0x70, 0xd2, 0xd4, + 0x50, 0xdf, 0x4d, 0x29, 0x23, 0xe4, 0x35, 0x9d, 0x10, 0x36, 0xe9, 0x52, 0x96, 0xd4, 0x64, 0x4a, + 0xf3, 0x30, 0x93, 0x6e, 0x14, 0x4b, 0xe2, 0xda, 0x32, 0x87, 0x51, 0xce, 0xc6, 0x7c, 0x71, 0xaa, + 0x26, 0x67, 0x4b, 0x3c, 0x6e, 0xec, 0xaf, 0xd3, 0xb3, 0x98, 0x8e, 0xe1, 0x31, 0x1c, 0x5f, 0x57, + 0xcc, 0xe3, 0xeb, 0xc9, 0x02, 0x33, 0xdb, 0xe3, 0xe8, 0x7a, 0x1b, 0x46, 0xb4, 0x89, 0x47, 0xe7, + 0xa1, 0xda, 0x94, 0xee, 0x22, 0x82, 0x8b, 0x2b, 0x51, 0x4a, 0xf9, 0x91, 0xe0, 0x04, 0x87, 0x8e, + 0x0b, 0x15, 0x41, 0xd3, 0xce, 0x65, 0x54, 0x40, 0xc5, 0x0c, 0x62, 0xbf, 0x00, 0xb0, 0xfc, 0x80, + 0x34, 0x17, 0xb8, 0x12, 0xa9, 0xdd, 0x20, 0x5a, 0xbd, 0x6f, 0x10, 0xed, 0xaf, 0x59, 0x30, 0xbe, + 0xb2, 0x64, 0x28, 0x0d, 0xf3, 0x00, 0x5c, 0x36, 0xbe, 0x73, 0xe7, 0x86, 0xb4, 0x90, 0x73, 0x33, + 0xa6, 0x2a, 0xc5, 0x1a, 0x06, 0x7a, 0x14, 0xca, 0xad, 0x8e, 0x2f, 0x44, 0xd6, 0xa1, 0xbd, 0xdd, + 0xb9, 0xf2, 0xb5, 0x8e, 0x8f, 0x69, 0x99, 0xe6, 0xc5, 0x55, 0x2e, 0xec, 0xc5, 0x95, 0xef, 0x02, + 0xfd, 0xe5, 0x32, 0x4c, 0xae, 0xb4, 0xc8, 0x03, 0xa3, 0xd7, 0x4f, 0xc3, 0xa0, 0x1b, 0x7a, 0xdb, + 0x24, 0x4c, 0x0b, 0x02, 0x35, 0x56, 0x8a, 0x05, 0xb4, 0xb0, 0x63, 0xd9, 0x5b, 0xdd, 0x07, 0xf9, + 0xd1, 0x39, 0xd5, 0xe5, 0x7e, 0x33, 0x5a, 0x87, 0x21, 0x7e, 0xe3, 0x1c, 0xcd, 0x0c, 0xb0, 0xa5, + 0xf8, 0xca, 0xc1, 0x9d, 0x49, 0x8f, 0xcf, 0xbc, 0xb0, 0xe0, 0x70, 0x97, 0x1e, 0xc5, 0xcb, 0x44, + 0x29, 0x96, 0xc4, 0x67, 0x3f, 0x01, 0xa3, 0x3a, 0x66, 0x5f, 0xbe, 0x3d, 0x7f, 0xd5, 0x82, 0x13, + 0x2b, 0xad, 0xa0, 0x79, 0x2f, 0xe5, 0xf9, 0xf7, 0x12, 0x8c, 0xd0, 0xcd, 0x14, 0x19, 0x6e, 0xb1, + 0x86, 0xcb, 0xb0, 0x00, 0x61, 0x1d, 0x4f, 0xab, 0x76, 0xeb, 0xd6, 0x6a, 0x2d, 0xcb, 0xd3, 0x58, + 0x80, 0xb0, 0x8e, 0x67, 0xff, 0xbe, 0x05, 0x8f, 0x5f, 0x5e, 0x5a, 0xae, 0x93, 0x30, 0xf2, 0xa2, + 0x98, 0xf8, 0x71, 0x97, 0xb3, 0x33, 0x95, 0x19, 0x5d, 0xad, 0x2b, 0x89, 0xcc, 0x58, 0x63, 0xbd, + 0x10, 0xd0, 0x0f, 0x8a, 0xc7, 0xff, 0x57, 0x2d, 0x38, 0x71, 0xd9, 0x8b, 0x31, 0x69, 0x07, 0x69, + 0x67, 0xe3, 0x90, 0xb4, 0x83, 0xc8, 0x8b, 0x83, 0x70, 0x27, 0xed, 0x6c, 0x8c, 0x15, 0x04, 0x6b, + 0x58, 0xbc, 0xe5, 0x6d, 0x2f, 0xa2, 0x3d, 0x2d, 0x99, 0xaa, 0x2e, 0x16, 0xe5, 0x58, 0x61, 0xd0, + 0x0f, 0x73, 0xbd, 0x90, 0x89, 0x0c, 0x3b, 0x62, 0x07, 0xab, 0x0f, 0xab, 0x49, 0x00, 0x4e, 0x70, + 0xec, 0xbf, 0x6b, 0xc1, 0xc9, 0xcb, 0xad, 0x4e, 0x14, 0x93, 0x70, 0x3d, 0x32, 0x3a, 0xfb, 0x02, + 0x54, 0x89, 0x14, 0xee, 0x45, 0x5f, 0xd5, 0xa1, 0xa1, 0xa4, 0x7e, 0xee, 0xe9, 0xac, 0xf0, 0x0a, + 0x38, 0xd4, 0xf6, 0xe7, 0xfe, 0xf9, 0x5b, 0x25, 0x18, 0xbb, 0xb2, 0xb6, 0x56, 0xbf, 0x4c, 0x62, + 0xc1, 0x25, 0xf3, 0xcd, 0x5e, 0x58, 0xd3, 0xc8, 0x0f, 0x12, 0x7e, 0x3a, 0xb1, 0xd7, 0x9a, 0xe7, + 0xd1, 0x28, 0xf3, 0xab, 0x7e, 0x7c, 0x33, 0x6c, 0xc4, 0xa1, 0xe7, 0x6f, 0x64, 0xea, 0xf0, 0x92, + 0x97, 0x97, 0x7b, 0xf1, 0x72, 0xf4, 0x02, 0x0c, 0xb2, 0x70, 0x18, 0x29, 0x7c, 0x7c, 0x58, 0xc9, + 0x09, 0xac, 0x74, 0x7f, 0x77, 0xae, 0x7a, 0x0b, 0xaf, 0xf2, 0x3f, 0x58, 0xa0, 0xa2, 0xb7, 0x60, + 0x64, 0x33, 0x8e, 0xdb, 0x57, 0x88, 0xe3, 0x92, 0x50, 0xf2, 0x89, 0xb3, 0x07, 0xf3, 0x09, 0x3a, + 0x1c, 0xbc, 0x42, 0xb2, 0xb5, 0x92, 0xb2, 0x08, 0xeb, 0x14, 0xed, 0x06, 0x40, 0x02, 0x7b, 0x48, + 0x3a, 0x88, 0xfd, 0xf3, 0x25, 0x18, 0xba, 0xe2, 0xf8, 0x6e, 0x8b, 0x84, 0x68, 0x05, 0x2a, 0xe4, + 0x01, 0x69, 0x8a, 0x83, 0x3c, 0xa7, 0xeb, 0xc9, 0x61, 0xc7, 0x2d, 0x77, 0xf4, 0x3f, 0x66, 0xf5, + 0x11, 0x86, 0x21, 0xda, 0xef, 0xcb, 0xca, 0x0f, 0xfd, 0xb9, 0xfc, 0x51, 0x50, 0x8b, 0x82, 0x9f, + 0x94, 0xa2, 0x08, 0x4b, 0x42, 0xcc, 0x02, 0xd5, 0x6c, 0x37, 0x28, 0x7b, 0x8b, 0x8b, 0x69, 0x76, + 0x6b, 0x4b, 0x75, 0x8e, 0x2e, 0xe8, 0x72, 0x0b, 0x94, 0x2c, 0xc4, 0x09, 0x39, 0x7b, 0x0d, 0xaa, + 0x74, 0xf2, 0x17, 0x5a, 0x9e, 0x73, 0xb0, 0x19, 0xec, 0x39, 0xa8, 0x4a, 0x43, 0x54, 0x24, 0x9c, + 0xda, 0x19, 0x55, 0x69, 0xa7, 0x8a, 0x70, 0x02, 0xb7, 0x2f, 0xc1, 0x34, 0xbb, 0x47, 0x76, 0xe2, + 0x4d, 0x63, 0x2f, 0xe6, 0x2e, 0x7a, 0xfb, 0x1b, 0x15, 0x98, 0x5a, 0x6d, 0x2c, 0x35, 0x4c, 0x9b, + 0xe7, 0x25, 0x18, 0xe5, 0xc7, 0x3e, 0x5d, 0xca, 0x4e, 0x4b, 0xd4, 0x57, 0x77, 0x1f, 0x6b, 0x1a, + 0x0c, 0x1b, 0x98, 0xe8, 0x71, 0x28, 0x7b, 0xef, 0xfa, 0x69, 0x6f, 0xc4, 0xd5, 0xd7, 0x6e, 0x60, + 0x5a, 0x4e, 0xc1, 0x54, 0x82, 0xe0, 0xac, 0x53, 0x81, 0x95, 0x14, 0xf1, 0x2a, 0x8c, 0x7b, 0x51, + 0x33, 0xf2, 0x56, 0x7d, 0xca, 0x57, 0x9c, 0xa6, 0xdc, 0x14, 0x89, 0xc8, 0x4f, 0xbb, 0xaa, 0xa0, + 0x38, 0x85, 0xad, 0xf1, 0xf1, 0x81, 0xc2, 0x52, 0x48, 0xae, 0x9b, 0x3b, 0x15, 0xb0, 0xda, 0xec, + 0xeb, 0x22, 0xe6, 0xdb, 0x24, 0x04, 0x2c, 0xfe, 0xc1, 0x11, 0x96, 0x30, 0x74, 0x19, 0xa6, 0x9a, + 0x9b, 0x4e, 0x7b, 0xa1, 0x13, 0x6f, 0xd6, 0xbc, 0xa8, 0x19, 0x6c, 0x93, 0x70, 0x87, 0x09, 0xc0, + 0xc3, 0x89, 0x4d, 0x4b, 0x01, 0x96, 0xae, 0x2c, 0xd4, 0x29, 0x26, 0xee, 0xae, 0x63, 0x0a, 0x24, + 0x70, 0x04, 0x02, 0xc9, 0x02, 0x4c, 0xc8, 0x56, 0x1b, 0x24, 0x62, 0x47, 0xc4, 0x08, 0xeb, 0xa7, + 0x0a, 0x30, 0x12, 0xc5, 0xaa, 0x97, 0x69, 0x7c, 0xfb, 0x1d, 0xa8, 0x2a, 0x5f, 0x3c, 0xe9, 0x82, + 0x6a, 0xf5, 0x70, 0x41, 0xcd, 0x67, 0xee, 0xd2, 0x3a, 0x5f, 0xce, 0xb4, 0xce, 0xff, 0x53, 0x0b, + 0x12, 0x67, 0x22, 0x84, 0xa1, 0xda, 0x0e, 0xd8, 0x4d, 0x5e, 0x28, 0xaf, 0xcc, 0x9f, 0xca, 0xd9, + 0xf3, 0x9c, 0xe7, 0xf0, 0x01, 0xa9, 0xcb, 0xba, 0x38, 0x21, 0x83, 0xae, 0xc1, 0x50, 0x3b, 0x24, + 0x8d, 0x98, 0xc5, 0x8f, 0xf4, 0x41, 0x91, 0x2f, 0x04, 0x5e, 0x13, 0x4b, 0x12, 0xf6, 0xbf, 0xb4, + 0x00, 0xb8, 0x19, 0xdc, 0xf1, 0x37, 0xc8, 0x31, 0x28, 0xd6, 0x37, 0xa0, 0x12, 0xb5, 0x49, 0xb3, + 0xd8, 0x5d, 0x6c, 0xd2, 0xb3, 0x46, 0x9b, 0x34, 0x93, 0xe9, 0xa0, 0xff, 0x30, 0xa3, 0x63, 0x7f, + 0x1b, 0x60, 0x3c, 0x41, 0xa3, 0xca, 0x0d, 0x7a, 0xde, 0x08, 0x9c, 0x78, 0x34, 0x15, 0x38, 0x51, + 0x65, 0xd8, 0x5a, 0xac, 0x44, 0x0c, 0xe5, 0x2d, 0xe7, 0x81, 0xd0, 0xa5, 0x5e, 0x2a, 0xda, 0x21, + 0xda, 0xd2, 0xfc, 0x75, 0xe7, 0x01, 0x17, 0x5d, 0x9f, 0x93, 0x0b, 0xe9, 0xba, 0xf3, 0x60, 0x9f, + 0xdf, 0xb8, 0x32, 0xee, 0x44, 0x95, 0xb7, 0xcf, 0xfd, 0x59, 0xf2, 0x9f, 0x1d, 0x43, 0xb4, 0x39, + 0xd6, 0xaa, 0xe7, 0x0b, 0x53, 0x70, 0x9f, 0xad, 0x7a, 0x7e, 0xba, 0x55, 0xcf, 0x2f, 0xd0, 0xaa, + 0xc7, 0x3c, 0x8c, 0x87, 0xc4, 0x1d, 0x0d, 0x73, 0xcf, 0x1c, 0xb9, 0xf8, 0xf1, 0xbe, 0x9a, 0x16, + 0x97, 0x3d, 0xbc, 0xf9, 0xf3, 0x52, 0x5e, 0x17, 0xa5, 0xb9, 0x5d, 0x90, 0x4d, 0xa3, 0xbf, 0x67, + 0xc1, 0xb8, 0xf8, 0x8d, 0xc9, 0xbb, 0x1d, 0x12, 0xc5, 0x42, 0x2e, 0xf8, 0xd4, 0x61, 0x7a, 0x23, + 0x48, 0xf0, 0x4e, 0x7d, 0x4c, 0xb2, 0x5f, 0x13, 0x98, 0xdb, 0xb7, 0x54, 0x7f, 0xd0, 0xb7, 0x2d, + 0x98, 0xde, 0x72, 0x1e, 0xf0, 0x16, 0x79, 0x19, 0x76, 0x62, 0x2f, 0x10, 0x2e, 0xa8, 0x2b, 0xfd, + 0xae, 0x93, 0x2e, 0x42, 0xbc, 0xbb, 0xd2, 0xbb, 0x6c, 0x3a, 0x0b, 0x25, 0xb7, 0xd3, 0x99, 0x3d, + 0x9c, 0x5d, 0x87, 0x61, 0xb9, 0x30, 0x33, 0x34, 0xa5, 0x9a, 0x2e, 0xfe, 0xf4, 0x7d, 0x81, 0xa6, + 0x69, 0x56, 0xac, 0x1d, 0xb1, 0x14, 0x8f, 0xb4, 0x9d, 0x77, 0x60, 0x54, 0x5f, 0x77, 0x47, 0xda, + 0xd6, 0xbb, 0x70, 0x22, 0x63, 0x55, 0x1d, 0x69, 0x93, 0xf7, 0xe1, 0xd1, 0x9e, 0xeb, 0xe3, 0x28, + 0x1b, 0xb6, 0x7f, 0xcb, 0xd2, 0x59, 0xe7, 0x31, 0xd8, 0xad, 0xae, 0x9b, 0x76, 0xab, 0xb3, 0x45, + 0xf7, 0x50, 0x0f, 0xe3, 0xd5, 0xba, 0xde, 0x7d, 0x7a, 0x24, 0xa0, 0x35, 0x18, 0x6c, 0xd1, 0x12, + 0x79, 0x6d, 0x78, 0xae, 0x9f, 0x5d, 0x9a, 0x48, 0x60, 0xac, 0x3c, 0xc2, 0x82, 0x96, 0xfd, 0x6d, + 0x0b, 0x2a, 0x7f, 0x89, 0x61, 0x5d, 0x5d, 0xa4, 0x45, 0x6a, 0x82, 0x79, 0xec, 0xdc, 0x5f, 0x7e, + 0x10, 0x13, 0x3f, 0x62, 0x62, 0x7c, 0xe6, 0x10, 0xfd, 0x9f, 0x12, 0x8c, 0xd0, 0xa6, 0xa4, 0xa7, + 0xcc, 0x2b, 0x30, 0xd6, 0x72, 0xee, 0x92, 0x96, 0xb4, 0xb9, 0xa7, 0x95, 0xde, 0x6b, 0x3a, 0x10, + 0x9b, 0xb8, 0xb4, 0xf2, 0xba, 0x7e, 0x25, 0x21, 0x84, 0x24, 0x55, 0xd9, 0xb8, 0xaf, 0xc0, 0x26, + 0x2e, 0xd5, 0xba, 0xee, 0x3b, 0x71, 0x73, 0x53, 0x28, 0xc4, 0xaa, 0xbb, 0x77, 0x68, 0x21, 0xe6, + 0x30, 0x2a, 0xec, 0xc9, 0x15, 0x7b, 0x9b, 0x84, 0x4c, 0xd8, 0xe3, 0x42, 0xb5, 0x12, 0xf6, 0xb0, + 0x09, 0xc6, 0x69, 0x7c, 0xf4, 0x09, 0x18, 0xa7, 0x83, 0x13, 0x74, 0x62, 0xe9, 0x07, 0x34, 0xc0, + 0xfc, 0x80, 0x98, 0x1b, 0xf9, 0x9a, 0x01, 0xc1, 0x29, 0x4c, 0x54, 0x87, 0x69, 0xcf, 0x6f, 0xb6, + 0x3a, 0x2e, 0xb9, 0xe5, 0x7b, 0xbe, 0x17, 0x7b, 0x4e, 0xcb, 0x7b, 0x8f, 0xb8, 0x42, 0xec, 0x56, + 0x2e, 0x5b, 0xab, 0x19, 0x38, 0x38, 0xb3, 0xa6, 0xfd, 0x16, 0x9c, 0xb8, 0x16, 0x38, 0xee, 0xa2, + 0xd3, 0x72, 0xfc, 0x26, 0x09, 0x57, 0xfd, 0x8d, 0x5c, 0x9f, 0x02, 0xfd, 0xde, 0xbf, 0x94, 0x77, + 0xef, 0x6f, 0x87, 0x80, 0xf4, 0x06, 0x84, 0x4f, 0xdc, 0x9b, 0x30, 0xe4, 0xf1, 0xa6, 0xc4, 0x46, + 0xb8, 0x90, 0x27, 0x93, 0x77, 0xf5, 0x51, 0xf3, 0xf1, 0xe2, 0x05, 0x58, 0x92, 0xa4, 0x1a, 0x5c, + 0x96, 0x10, 0x9f, 0xaf, 0x7a, 0xdb, 0x2f, 0xc1, 0x14, 0xab, 0xd9, 0xa7, 0xe2, 0xf7, 0xd7, 0x2c, + 0x98, 0xb8, 0x91, 0x0a, 0x80, 0x7e, 0x1a, 0x06, 0x23, 0x12, 0x66, 0x58, 0x56, 0x1b, 0xac, 0x14, + 0x0b, 0xe8, 0x43, 0xb7, 0xd6, 0xfc, 0x72, 0x09, 0xaa, 0xcc, 0x29, 0xbb, 0x4d, 0x95, 0xb8, 0xa3, + 0x97, 0x97, 0xaf, 0x1b, 0xf2, 0x72, 0x8e, 0xc5, 0x40, 0x75, 0xac, 0x97, 0xb8, 0x8c, 0x6e, 0xa9, + 0xc0, 0xe0, 0x42, 0xc6, 0x82, 0x84, 0x20, 0x0f, 0x1e, 0x1d, 0x37, 0xe3, 0x88, 0x65, 0xd0, 0x30, + 0xbb, 0xc0, 0x57, 0xb8, 0x1f, 0xb8, 0x0b, 0x7c, 0xd5, 0xb3, 0x1e, 0x5c, 0xb2, 0xae, 0x75, 0x9e, + 0x9d, 0x23, 0x3f, 0xc5, 0x5c, 0x6d, 0xd9, 0x1e, 0x56, 0xf1, 0xf5, 0x73, 0xc2, 0x75, 0x56, 0x94, + 0xee, 0x33, 0x86, 0x27, 0xfe, 0xf1, 0xf4, 0x09, 0x49, 0x15, 0xfb, 0x0a, 0x4c, 0xa4, 0x86, 0x0e, + 0xbd, 0x04, 0x03, 0xed, 0x4d, 0x27, 0x22, 0x29, 0xa7, 0xa7, 0x81, 0x3a, 0x2d, 0xdc, 0xdf, 0x9d, + 0x1b, 0x57, 0x15, 0x58, 0x09, 0xe6, 0xd8, 0xf6, 0xe7, 0x4b, 0x50, 0xb9, 0x11, 0xb8, 0xc7, 0xb1, + 0xd4, 0xae, 0x18, 0x4b, 0xed, 0xe9, 0xfc, 0x7c, 0x2d, 0x3d, 0x57, 0x59, 0x3d, 0xb5, 0xca, 0xce, + 0x16, 0xa0, 0x75, 0xf0, 0x02, 0xdb, 0x82, 0x11, 0x96, 0x0f, 0x46, 0x38, 0x65, 0xbd, 0x60, 0xa8, + 0x78, 0x73, 0x29, 0x15, 0x6f, 0x42, 0x43, 0xd5, 0x14, 0xbd, 0x67, 0x60, 0x48, 0x38, 0x01, 0xa5, + 0x1d, 0x8d, 0x05, 0x2e, 0x96, 0x70, 0xfb, 0x5f, 0x94, 0xc1, 0xc8, 0x3f, 0x83, 0x7e, 0xd7, 0x82, + 0xf9, 0x90, 0x07, 0x6d, 0xb9, 0xb5, 0x4e, 0xe8, 0xf9, 0x1b, 0x8d, 0xe6, 0x26, 0x71, 0x3b, 0x2d, + 0xcf, 0xdf, 0x58, 0xdd, 0xf0, 0x03, 0x55, 0xbc, 0xfc, 0x80, 0x34, 0x3b, 0xcc, 0xe6, 0x5e, 0x38, + 0xed, 0x8d, 0xba, 0x00, 0xbf, 0xb8, 0xb7, 0x3b, 0x37, 0x8f, 0xfb, 0x6a, 0x05, 0xf7, 0xd9, 0x2b, + 0xf4, 0x7d, 0x0b, 0xce, 0xf3, 0x0c, 0x2c, 0xc5, 0xbf, 0xa4, 0x90, 0x6a, 0x5c, 0x97, 0x44, 0x13, + 0x72, 0x6b, 0x24, 0xdc, 0x5a, 0x7c, 0x59, 0x0c, 0xf2, 0xf9, 0x7a, 0x7f, 0xad, 0xe2, 0x7e, 0xbb, + 0x69, 0xff, 0xeb, 0x32, 0x8c, 0xd1, 0xf1, 0x4c, 0x52, 0x28, 0xbc, 0x64, 0x2c, 0x93, 0x27, 0x52, + 0xcb, 0x64, 0xca, 0x40, 0x7e, 0x38, 0xd9, 0x13, 0x22, 0x98, 0x6a, 0x39, 0x51, 0x7c, 0x85, 0x38, + 0x61, 0x7c, 0x97, 0x38, 0xec, 0x9e, 0x39, 0xed, 0xc3, 0x52, 0xe0, 0xea, 0x5a, 0x19, 0xe1, 0xae, + 0xa5, 0x89, 0xe1, 0x6e, 0xfa, 0x68, 0x1b, 0x10, 0xbb, 0xd3, 0x0e, 0x1d, 0x3f, 0xe2, 0xdf, 0xe2, + 0x09, 0x1b, 0x7d, 0x7f, 0xad, 0xce, 0x8a, 0x56, 0xd1, 0xb5, 0x2e, 0x6a, 0x38, 0xa3, 0x05, 0xcd, + 0x6b, 0x61, 0xa0, 0xa8, 0xd7, 0xc2, 0x60, 0x8e, 0x87, 0xff, 0x2f, 0x58, 0x70, 0x82, 0x4e, 0x8b, + 0xe9, 0x0d, 0x1e, 0xa1, 0x00, 0x26, 0xe8, 0xb2, 0x6b, 0x91, 0x58, 0x96, 0x89, 0xfd, 0x95, 0x23, + 0xe2, 0x9b, 0x74, 0x12, 0x39, 0xf2, 0xaa, 0x49, 0x0c, 0xa7, 0xa9, 0xdb, 0x5f, 0xb3, 0x80, 0x79, + 0x4f, 0x1e, 0xc3, 0x61, 0x76, 0xd9, 0x3c, 0xcc, 0xec, 0x7c, 0x8e, 0xd1, 0xe3, 0x1c, 0x7b, 0x11, + 0x26, 0x29, 0xb4, 0x1e, 0x06, 0x0f, 0x76, 0xa4, 0xc4, 0x9f, 0x2f, 0x5d, 0xfd, 0x42, 0x89, 0x6f, + 0x1b, 0x15, 0x7d, 0x8a, 0x7e, 0xd1, 0x82, 0xe1, 0xa6, 0xd3, 0x76, 0x9a, 0x3c, 0x7b, 0x57, 0x01, + 0x33, 0x91, 0x51, 0x7f, 0x7e, 0x49, 0xd4, 0xe5, 0x26, 0x8e, 0x8f, 0xca, 0x4f, 0x97, 0xc5, 0xb9, + 0x66, 0x0d, 0xd5, 0xf8, 0xec, 0x3d, 0x18, 0x33, 0x88, 0x1d, 0xa9, 0x3e, 0xfc, 0x8b, 0x16, 0x67, + 0xfa, 0x4a, 0x67, 0xb9, 0x0f, 0x53, 0xbe, 0xf6, 0x9f, 0xb2, 0x33, 0x29, 0x50, 0xcf, 0x17, 0x67, + 0xeb, 0x8c, 0x0b, 0x6a, 0x9e, 0xa2, 0x29, 0x82, 0xb8, 0xbb, 0x0d, 0xfb, 0x57, 0x2d, 0x78, 0x44, + 0x47, 0xd4, 0xc2, 0x85, 0xf3, 0x0c, 0xd8, 0x35, 0x18, 0x0e, 0xda, 0x24, 0x74, 0x12, 0xfd, 0xec, + 0xac, 0x1c, 0xff, 0x9b, 0xa2, 0x7c, 0x7f, 0x77, 0x6e, 0x5a, 0xa7, 0x2e, 0xcb, 0xb1, 0xaa, 0x89, + 0x6c, 0x18, 0x64, 0xe3, 0x12, 0x89, 0x40, 0x6f, 0x96, 0xcd, 0x8a, 0x5d, 0x90, 0x45, 0x58, 0x40, + 0xec, 0xbf, 0x69, 0xf1, 0xe5, 0xa6, 0x77, 0x1d, 0xfd, 0x0c, 0x4c, 0x6e, 0x51, 0x55, 0x6e, 0xf9, + 0x41, 0x3b, 0xe4, 0xe6, 0x77, 0x39, 0x62, 0x2f, 0x15, 0x1f, 0x31, 0xed, 0x73, 0x17, 0x67, 0x44, + 0xef, 0x27, 0xaf, 0xa7, 0xc8, 0xe2, 0xae, 0x86, 0xec, 0x7f, 0x50, 0xe2, 0x7b, 0x96, 0xc9, 0x70, + 0xcf, 0xc0, 0x50, 0x3b, 0x70, 0x97, 0x56, 0x6b, 0x58, 0x8c, 0x95, 0x62, 0x3a, 0x75, 0x5e, 0x8c, + 0x25, 0x1c, 0x5d, 0x04, 0x20, 0x0f, 0x62, 0x12, 0xfa, 0x4e, 0x4b, 0x5d, 0xe9, 0x2b, 0x51, 0x69, + 0x59, 0x41, 0xb0, 0x86, 0x45, 0xeb, 0xb4, 0xc3, 0x60, 0xdb, 0x73, 0x59, 0x9c, 0x4b, 0xd9, 0xac, + 0x53, 0x57, 0x10, 0xac, 0x61, 0x51, 0x05, 0xba, 0xe3, 0x47, 0xfc, 0x18, 0x73, 0xee, 0x8a, 0x4c, + 0x4a, 0xc3, 0x89, 0x02, 0x7d, 0x4b, 0x07, 0x62, 0x13, 0x17, 0x5d, 0x85, 0xc1, 0xd8, 0x61, 0x17, + 0xd5, 0x03, 0x45, 0xbc, 0x7e, 0xd6, 0x28, 0xae, 0x9e, 0xba, 0x8a, 0x56, 0xc5, 0x82, 0x84, 0xfd, + 0x9f, 0xaa, 0x00, 0x89, 0xd4, 0x85, 0x3e, 0xdf, 0xbd, 0xe1, 0x3f, 0x56, 0x54, 0x64, 0x7b, 0x78, + 0xbb, 0x1d, 0x7d, 0xc9, 0x82, 0x11, 0xa7, 0xd5, 0x0a, 0x9a, 0x4e, 0xcc, 0x86, 0xa7, 0x54, 0x94, + 0xf5, 0x88, 0x9e, 0x2c, 0x24, 0x75, 0x79, 0x67, 0x5e, 0x90, 0x97, 0xc7, 0x1a, 0x24, 0xb7, 0x3f, + 0x7a, 0x17, 0xd0, 0x47, 0xa5, 0xd4, 0xce, 0x67, 0x78, 0x36, 0x2d, 0xb5, 0x57, 0x19, 0xc3, 0xd5, + 0x04, 0x76, 0xf4, 0x96, 0x91, 0x79, 0xa8, 0x52, 0x24, 0x58, 0xd9, 0x90, 0x43, 0xf2, 0x92, 0x0e, + 0xa1, 0x37, 0x74, 0xf7, 0xf8, 0x81, 0x22, 0xd9, 0x00, 0x34, 0x71, 0x38, 0xc7, 0x35, 0x3e, 0x86, + 0x09, 0xd7, 0x3c, 0x79, 0x85, 0x8b, 0xdf, 0x85, 0xfc, 0x16, 0x52, 0x47, 0x76, 0x72, 0xd6, 0xa6, + 0x00, 0x38, 0xdd, 0x04, 0x7a, 0x83, 0x07, 0x2f, 0xac, 0xfa, 0xeb, 0x81, 0x70, 0xf3, 0x3b, 0x57, + 0x60, 0xce, 0x77, 0xa2, 0x98, 0x6c, 0xd1, 0x3a, 0xc9, 0xe1, 0x7a, 0x43, 0x50, 0xc1, 0x8a, 0x1e, + 0x5a, 0x83, 0x41, 0x16, 0x9b, 0x16, 0xcd, 0x0c, 0x17, 0x31, 0x09, 0x9a, 0x21, 0xd9, 0xc9, 0xfe, + 0x61, 0x7f, 0x23, 0x2c, 0x68, 0xa1, 0x2b, 0x32, 0x29, 0x43, 0xb4, 0xea, 0xdf, 0x8a, 0x08, 0x4b, + 0xca, 0x50, 0x5d, 0xfc, 0x48, 0x92, 0x65, 0x81, 0x97, 0x67, 0xa6, 0x6b, 0x34, 0x6a, 0x52, 0xc1, + 0x46, 0xfc, 0x97, 0x59, 0x20, 0x67, 0xa0, 0x48, 0x47, 0xcd, 0x9c, 0x91, 0xc9, 0x60, 0xdf, 0x36, + 0x89, 0xe1, 0x34, 0xf5, 0x63, 0x3d, 0x52, 0x67, 0x7d, 0x98, 0x4c, 0x6f, 0xca, 0x23, 0x3d, 0xc2, + 0x7f, 0x58, 0x81, 0x71, 0x73, 0x71, 0xa0, 0xf3, 0x50, 0x15, 0x44, 0x54, 0x8a, 0x37, 0xb5, 0x07, + 0xae, 0x4b, 0x00, 0x4e, 0x70, 0x58, 0xb2, 0x3b, 0x56, 0x5d, 0x73, 0xf0, 0x4a, 0x92, 0xdd, 0x29, + 0x08, 0xd6, 0xb0, 0xa8, 0x24, 0x7c, 0x37, 0x08, 0x62, 0x75, 0x12, 0xa8, 0x75, 0xb3, 0xc8, 0x4a, + 0xb1, 0x80, 0xd2, 0x13, 0xe0, 0x1e, 0x9d, 0xcc, 0x96, 0x69, 0xde, 0x54, 0x27, 0xc0, 0x55, 0x1d, + 0x88, 0x4d, 0x5c, 0x7a, 0xa2, 0x05, 0x11, 0x5b, 0x88, 0x42, 0xde, 0x4e, 0x1c, 0xe6, 0x1a, 0x3c, + 0x5e, 0x53, 0xc2, 0xd1, 0xa7, 0xe1, 0x11, 0x15, 0x5e, 0x89, 0xb9, 0xb9, 0x58, 0xb6, 0x38, 0x68, + 0xa8, 0xcc, 0x8f, 0x2c, 0x65, 0xa3, 0xe1, 0x5e, 0xf5, 0xd1, 0xab, 0x30, 0x2e, 0x64, 0x65, 0x49, + 0x71, 0xc8, 0xf4, 0x7b, 0xb8, 0x6a, 0x40, 0x71, 0x0a, 0x1b, 0xd5, 0x60, 0x92, 0x96, 0x30, 0x21, + 0x55, 0x52, 0xe0, 0x61, 0xa2, 0xea, 0xa8, 0xbf, 0x9a, 0x82, 0xe3, 0xae, 0x1a, 0x68, 0x01, 0x26, + 0xb8, 0xb0, 0x42, 0x15, 0x43, 0x36, 0x0f, 0xc2, 0x37, 0x57, 0x6d, 0x84, 0x9b, 0x26, 0x18, 0xa7, + 0xf1, 0xd1, 0x25, 0x18, 0x75, 0xc2, 0xe6, 0xa6, 0x17, 0x93, 0x66, 0xdc, 0x09, 0x79, 0xca, 0x13, + 0xcd, 0x71, 0x64, 0x41, 0x83, 0x61, 0x03, 0xd3, 0x7e, 0x0f, 0x4e, 0x64, 0x04, 0x02, 0xd0, 0x85, + 0xe3, 0xb4, 0x3d, 0xf9, 0x4d, 0x29, 0xd7, 0xb7, 0x85, 0xfa, 0xaa, 0xfc, 0x1a, 0x0d, 0x8b, 0xae, + 0x4e, 0x66, 0x27, 0xd7, 0x92, 0xb6, 0xaa, 0xd5, 0xb9, 0x22, 0x01, 0x38, 0xc1, 0xb1, 0xff, 0x14, + 0x40, 0xb3, 0xde, 0x14, 0x70, 0x77, 0xba, 0x04, 0xa3, 0x32, 0x0f, 0xb1, 0x96, 0xcc, 0x53, 0x7d, + 0xe6, 0x65, 0x0d, 0x86, 0x0d, 0x4c, 0xda, 0x37, 0x5f, 0xda, 0xa4, 0xd2, 0x8e, 0x76, 0xca, 0x58, + 0x85, 0x13, 0x1c, 0x74, 0x0e, 0x86, 0x23, 0xd2, 0x5a, 0xbf, 0xe6, 0xf9, 0xf7, 0xc4, 0xc2, 0x56, + 0x9c, 0xb9, 0x21, 0xca, 0xb1, 0xc2, 0x40, 0x8b, 0x50, 0xee, 0x78, 0xae, 0x58, 0xca, 0x52, 0x6c, + 0x28, 0xdf, 0x5a, 0xad, 0xed, 0xef, 0xce, 0x3d, 0xd1, 0x2b, 0xbd, 0x32, 0xd5, 0xcf, 0xa3, 0x79, + 0xba, 0xfd, 0x68, 0xe5, 0xac, 0x0b, 0x83, 0xc1, 0x3e, 0x2f, 0x0c, 0x2e, 0x02, 0x88, 0xaf, 0x96, + 0x6b, 0xb9, 0x9c, 0xcc, 0xda, 0x65, 0x05, 0xc1, 0x1a, 0x16, 0xd5, 0xf2, 0x9b, 0x21, 0x71, 0xa4, + 0x22, 0xcc, 0x1d, 0xd4, 0x87, 0x0f, 0xaf, 0xe5, 0x2f, 0xa5, 0x89, 0xe1, 0x6e, 0xfa, 0x28, 0x80, + 0x29, 0x57, 0xc4, 0xf0, 0x26, 0x8d, 0x56, 0xfb, 0xf7, 0x8a, 0x67, 0xbe, 0x3d, 0x69, 0x42, 0xb8, + 0x9b, 0x36, 0xfa, 0x2c, 0xcc, 0xca, 0xc2, 0xee, 0x00, 0x6a, 0xb6, 0x5d, 0xca, 0x8b, 0xa7, 0xf7, + 0x76, 0xe7, 0x66, 0x6b, 0x3d, 0xb1, 0xf0, 0x01, 0x14, 0xd0, 0x9b, 0x30, 0xc8, 0x2e, 0x98, 0xa2, + 0x99, 0x11, 0x76, 0xe2, 0xbd, 0x58, 0x24, 0xb6, 0x82, 0xae, 0xfa, 0x79, 0x76, 0x4d, 0x25, 0xbc, + 0x86, 0x93, 0x5b, 0x3b, 0x56, 0x88, 0x05, 0x4d, 0xd4, 0x86, 0x11, 0xc7, 0xf7, 0x83, 0xd8, 0xe1, + 0x82, 0xd8, 0x68, 0x11, 0x59, 0x52, 0x6b, 0x62, 0x21, 0xa9, 0xcb, 0xdb, 0x51, 0x8e, 0x88, 0x1a, + 0x04, 0xeb, 0x4d, 0xa0, 0xfb, 0x30, 0x11, 0xdc, 0xa7, 0x0c, 0x53, 0xde, 0x88, 0x44, 0x33, 0x63, + 0xe6, 0x87, 0xe5, 0x18, 0x6a, 0x8d, 0xca, 0x1a, 0x27, 0x33, 0x89, 0xe2, 0x74, 0x2b, 0x68, 0xde, + 0x30, 0x57, 0x8f, 0x27, 0xbe, 0xf1, 0x89, 0xb9, 0x5a, 0xb7, 0x4e, 0xb3, 0x20, 0x7d, 0xee, 0x0f, + 0xcb, 0x38, 0xc2, 0x44, 0x2a, 0x48, 0x3f, 0x01, 0x61, 0x1d, 0x0f, 0x6d, 0xc2, 0x68, 0x72, 0xb7, + 0x15, 0x46, 0x2c, 0xff, 0x8f, 0xe6, 0xee, 0x75, 0xf0, 0xc7, 0xad, 0x6a, 0x35, 0x79, 0xa4, 0x8f, + 0x5e, 0x82, 0x0d, 0xca, 0xb3, 0x1f, 0x87, 0x11, 0x6d, 0x8a, 0xfb, 0x71, 0xf7, 0x9e, 0x7d, 0x15, + 0x26, 0xd3, 0x53, 0xd7, 0x97, 0xbb, 0xf8, 0xff, 0x28, 0xc1, 0x44, 0xc6, 0xc5, 0x16, 0xcb, 0xc6, + 0x9c, 0x62, 0xb2, 0x49, 0xf2, 0x65, 0x93, 0x55, 0x96, 0x0a, 0xb0, 0x4a, 0xc9, 0xb7, 0xcb, 0x3d, + 0xf9, 0xb6, 0x60, 0x8f, 0x95, 0xf7, 0xc3, 0x1e, 0xcd, 0x13, 0x69, 0xa0, 0xd0, 0x89, 0xf4, 0x10, + 0x58, 0xaa, 0x71, 0xa8, 0x0d, 0x15, 0x38, 0xd4, 0xbe, 0x5a, 0x82, 0xc9, 0xc4, 0x35, 0x5e, 0xa4, + 0x41, 0x3f, 0xfa, 0x0b, 0x8f, 0x35, 0xe3, 0xc2, 0x23, 0x2f, 0xcb, 0x79, 0xaa, 0x7f, 0x3d, 0x2f, + 0x3f, 0xde, 0x4c, 0x5d, 0x7e, 0xbc, 0xd8, 0x27, 0xdd, 0x83, 0x2f, 0x42, 0xbe, 0x55, 0x82, 0x93, + 0xe9, 0x2a, 0x4b, 0x2d, 0xc7, 0xdb, 0x3a, 0x86, 0xf1, 0xfa, 0xb4, 0x31, 0x5e, 0x2f, 0xf7, 0xf7, + 0x5d, 0xac, 0x93, 0x3d, 0x07, 0xcd, 0x49, 0x0d, 0xda, 0xc7, 0x0f, 0x43, 0xfc, 0xe0, 0x91, 0xfb, + 0x43, 0x0b, 0x1e, 0xcd, 0xac, 0x77, 0x0c, 0x26, 0xde, 0xd7, 0x4d, 0x13, 0xef, 0x0b, 0x87, 0xf8, + 0xba, 0x1e, 0x36, 0xdf, 0x5f, 0x2b, 0xf7, 0xf8, 0x2a, 0x66, 0x04, 0xbb, 0x09, 0x23, 0x4e, 0xb3, + 0x49, 0xa2, 0xe8, 0x7a, 0xe0, 0xaa, 0xc4, 0x62, 0xcf, 0xb3, 0x53, 0x2c, 0x29, 0xde, 0xdf, 0x9d, + 0x9b, 0x4d, 0x93, 0x48, 0xc0, 0x58, 0xa7, 0x60, 0xa6, 0x3c, 0x2c, 0x1d, 0x51, 0xca, 0xc3, 0x8b, + 0x00, 0xdb, 0x4a, 0x5f, 0x4e, 0xdb, 0xd6, 0x34, 0x4d, 0x5a, 0xc3, 0x42, 0x7f, 0x85, 0xc9, 0x9e, + 0xdc, 0x2f, 0xa5, 0x62, 0x46, 0xd9, 0xe6, 0xcc, 0x9f, 0xee, 0xe3, 0xc2, 0x83, 0x79, 0x95, 0x1d, + 0x52, 0x91, 0x44, 0x9f, 0x82, 0xc9, 0x88, 0xe7, 0xa4, 0x58, 0x6a, 0x39, 0x11, 0x8b, 0x09, 0x11, + 0xfc, 0x94, 0xc5, 0xe5, 0x36, 0x52, 0x30, 0xdc, 0x85, 0x6d, 0x7f, 0xb3, 0x0c, 0x1f, 0x3e, 0x60, + 0xd9, 0xa2, 0x05, 0xf3, 0x7e, 0xf8, 0xb9, 0xb4, 0xa5, 0x69, 0x36, 0xb3, 0xb2, 0x61, 0x7a, 0x4a, + 0xcd, 0x76, 0xe9, 0x7d, 0xcf, 0xf6, 0x97, 0x75, 0xbb, 0x20, 0x77, 0x55, 0xbd, 0x7c, 0xe8, 0x8d, + 0xf9, 0xa3, 0x7a, 0x2d, 0xf0, 0x39, 0x0b, 0x9e, 0xc8, 0xfc, 0x2c, 0xc3, 0x1f, 0xe5, 0x3c, 0x54, + 0x9b, 0xb4, 0x50, 0x8b, 0xe0, 0x4a, 0x42, 0x27, 0x25, 0x00, 0x27, 0x38, 0x86, 0xdb, 0x49, 0x29, + 0xd7, 0xed, 0xe4, 0xf7, 0x2c, 0x98, 0x4e, 0x77, 0xe2, 0x18, 0xf8, 0x56, 0xc3, 0xe4, 0x5b, 0xf3, + 0xfd, 0x4d, 0x7e, 0x0f, 0x96, 0xf5, 0xd5, 0x49, 0x38, 0xd5, 0x75, 0xea, 0xf1, 0x51, 0xfc, 0x39, + 0x0b, 0xa6, 0x36, 0x98, 0x9e, 0xa0, 0x85, 0xc9, 0x89, 0xef, 0xca, 0x89, 0x2d, 0x3c, 0x30, 0xba, + 0x8e, 0x6b, 0x3d, 0x5d, 0x28, 0xb8, 0xbb, 0x31, 0xf4, 0x45, 0x0b, 0xa6, 0x9d, 0xfb, 0x51, 0xd7, + 0x23, 0x3d, 0x62, 0x21, 0xbd, 0x9a, 0x63, 0x96, 0xcb, 0x79, 0xde, 0x67, 0x71, 0x66, 0x6f, 0x77, + 0x6e, 0x3a, 0x0b, 0x0b, 0x67, 0xb6, 0x4a, 0xe7, 0x77, 0x53, 0x84, 0xcb, 0x14, 0x0b, 0xf8, 0xcc, + 0x0a, 0xae, 0xe1, 0x6c, 0x4d, 0x42, 0xb0, 0xa2, 0x88, 0xde, 0x86, 0xea, 0x86, 0x8c, 0x8c, 0x4b, + 0xb3, 0xcd, 0x1e, 0xc3, 0x9c, 0x15, 0x48, 0xc7, 0xc3, 0x15, 0x14, 0x08, 0x27, 0x44, 0xd1, 0x15, + 0x28, 0xfb, 0xeb, 0x91, 0x88, 0x41, 0xcf, 0xf3, 0x36, 0x32, 0x7d, 0xbc, 0x78, 0xd8, 0xee, 0x8d, + 0x95, 0x06, 0xa6, 0x24, 0x28, 0xa5, 0xf0, 0xae, 0x2b, 0xec, 0xd1, 0x39, 0x94, 0xf0, 0x62, 0xad, + 0x9b, 0x12, 0x5e, 0xac, 0x61, 0x4a, 0x02, 0xd5, 0x61, 0x80, 0x05, 0xe3, 0x08, 0x63, 0x73, 0x4e, + 0xa2, 0x82, 0xae, 0x90, 0x23, 0x9e, 0x99, 0x93, 0x15, 0x63, 0x4e, 0x08, 0xad, 0xc1, 0x60, 0x93, + 0x3d, 0x2e, 0x21, 0xac, 0x00, 0x79, 0x29, 0x3c, 0xba, 0x1e, 0xa2, 0xe0, 0x37, 0x6c, 0xbc, 0x1c, + 0x0b, 0x5a, 0x8c, 0x2a, 0x69, 0x6f, 0xae, 0x47, 0x42, 0xcd, 0xcf, 0xa3, 0xda, 0xf5, 0x4c, 0x88, + 0xa0, 0xca, 0xca, 0xb1, 0xa0, 0x85, 0x6a, 0x50, 0x5a, 0x6f, 0x8a, 0x58, 0x9d, 0x1c, 0x23, 0xb3, + 0x19, 0x83, 0xbd, 0x38, 0xb8, 0xb7, 0x3b, 0x57, 0x5a, 0x59, 0xc2, 0xa5, 0xf5, 0x26, 0x7a, 0x1d, + 0x86, 0xd6, 0x79, 0x54, 0xad, 0x48, 0xe6, 0x7b, 0x21, 0x2f, 0xf4, 0xb7, 0x2b, 0x04, 0x97, 0x87, + 0xa4, 0x08, 0x00, 0x96, 0xe4, 0x58, 0x9e, 0x43, 0x15, 0x27, 0x2c, 0xb2, 0xf9, 0xce, 0xf7, 0x17, + 0x57, 0x2c, 0xb4, 0x5f, 0x55, 0x8a, 0x35, 0x8a, 0x74, 0xcd, 0x3b, 0xf2, 0x9d, 0x1c, 0x96, 0xc9, + 0x37, 0x77, 0xcd, 0x67, 0x3e, 0xab, 0xc3, 0xd7, 0xbc, 0x02, 0xe1, 0x84, 0x28, 0xea, 0xc0, 0xd8, + 0x76, 0xd4, 0xde, 0x24, 0x72, 0xeb, 0xb3, 0xf4, 0xbe, 0x23, 0x17, 0x3f, 0x99, 0x93, 0xb3, 0x59, + 0x54, 0xf1, 0xc2, 0xb8, 0xe3, 0xb4, 0xba, 0x38, 0x18, 0x4b, 0x2c, 0x77, 0x5b, 0x27, 0x8b, 0xcd, + 0x56, 0xe8, 0x94, 0xbc, 0xdb, 0x09, 0xee, 0xee, 0xc4, 0x44, 0xa4, 0xff, 0xcd, 0x99, 0x92, 0xd7, + 0x38, 0x72, 0xf7, 0x94, 0x08, 0x00, 0x96, 0xe4, 0xd4, 0x90, 0x31, 0x6e, 0x3c, 0x59, 0x78, 0xc8, + 0xba, 0xbe, 0x21, 0x19, 0x32, 0xc6, 0x7d, 0x13, 0xa2, 0x8c, 0xeb, 0xb6, 0x37, 0x83, 0x38, 0xf0, + 0x53, 0xbc, 0x7f, 0xaa, 0x08, 0xd7, 0xad, 0x67, 0xd4, 0xec, 0xe6, 0xba, 0x59, 0x58, 0x38, 0xb3, + 0x55, 0xe4, 0xc3, 0x78, 0x3b, 0x08, 0xe3, 0xfb, 0x41, 0x28, 0xd7, 0x21, 0x2a, 0xa4, 0x23, 0x1a, + 0x75, 0x44, 0xdb, 0xcc, 0xf3, 0xd8, 0x84, 0xe0, 0x14, 0x75, 0x3a, 0x75, 0x51, 0xd3, 0x69, 0x91, + 0xd5, 0x9b, 0x33, 0x27, 0x8a, 0x4c, 0x5d, 0x83, 0x23, 0x77, 0x4f, 0x9d, 0x00, 0x60, 0x49, 0x8e, + 0xf2, 0x3a, 0x96, 0xcb, 0x9e, 0x65, 0x33, 0xce, 0xe5, 0x75, 0x5d, 0xde, 0xb9, 0x9c, 0xd7, 0xb1, + 0x62, 0xcc, 0x09, 0xa1, 0x77, 0xa0, 0x2a, 0x84, 0xdb, 0x20, 0x9a, 0x39, 0xc9, 0xa8, 0xfe, 0x64, + 0x4e, 0x6f, 0x39, 0xfa, 0xcd, 0x46, 0xf6, 0xa9, 0x2f, 0xa2, 0xff, 0x24, 0x12, 0x4e, 0xc8, 0xdb, + 0xbf, 0x3a, 0xd8, 0x2d, 0xf6, 0x30, 0xc5, 0xe6, 0x6f, 0x74, 0xdf, 0x58, 0x7f, 0xaa, 0x7f, 0xfd, + 0xfd, 0x21, 0xde, 0x5d, 0x7f, 0xd1, 0x82, 0x53, 0xed, 0xcc, 0xcf, 0x13, 0x82, 0x43, 0xbf, 0x66, + 0x00, 0x3e, 0x34, 0x2a, 0xc7, 0x78, 0x36, 0x1c, 0xf7, 0x68, 0x33, 0xad, 0x0a, 0x94, 0xdf, 0xb7, + 0x2a, 0x70, 0x07, 0x86, 0x99, 0xec, 0x9a, 0xe4, 0xf7, 0xe9, 0x33, 0x15, 0x0e, 0x13, 0x41, 0x96, + 0x04, 0x09, 0xac, 0x88, 0xd1, 0x81, 0x7b, 0x3c, 0xfd, 0x11, 0x98, 0x30, 0xb0, 0xc8, 0x6c, 0xc9, + 0xf5, 0xac, 0x15, 0x31, 0x12, 0x8f, 0xd7, 0x0f, 0x42, 0xde, 0xcf, 0x43, 0xc0, 0x07, 0x37, 0x86, + 0x6a, 0x19, 0x8a, 0xde, 0xa0, 0x79, 0x3d, 0x95, 0xaf, 0xec, 0x1d, 0xaf, 0x82, 0xf2, 0x0f, 0xad, + 0x0c, 0x79, 0x9a, 0x2b, 0x95, 0x9f, 0x34, 0x95, 0xca, 0xa7, 0xd3, 0x4a, 0x65, 0x97, 0x29, 0xc9, + 0xd0, 0x27, 0x8b, 0x67, 0xe6, 0x2d, 0x9a, 0xc0, 0xc8, 0x6e, 0xc1, 0x99, 0x3c, 0x66, 0xcd, 0x5c, + 0xd6, 0x5c, 0x75, 0x59, 0x9b, 0xb8, 0xac, 0xb9, 0xab, 0x35, 0xcc, 0x20, 0x45, 0x73, 0x60, 0xd8, + 0x3f, 0x5f, 0x82, 0x72, 0x3d, 0x70, 0x8f, 0xc1, 0x34, 0x76, 0xd9, 0x30, 0x8d, 0x3d, 0x95, 0xfb, + 0x50, 0x64, 0x4f, 0x43, 0xd8, 0xcd, 0x94, 0x21, 0xec, 0x27, 0xf2, 0x49, 0x1d, 0x6c, 0xf6, 0xfa, + 0x76, 0x19, 0xf4, 0xa7, 0x2e, 0xd1, 0x7f, 0x38, 0x8c, 0x27, 0x73, 0xb9, 0xd8, 0xeb, 0x97, 0xa2, + 0x0d, 0xe6, 0xf1, 0x26, 0x03, 0x31, 0x7f, 0x64, 0x1d, 0x9a, 0xef, 0x10, 0x6f, 0x63, 0x33, 0x26, + 0x6e, 0xfa, 0xc3, 0x8e, 0xcf, 0xa1, 0xf9, 0x2f, 0x2c, 0x98, 0x48, 0xb5, 0x8e, 0x5a, 0x59, 0x11, + 0x5c, 0x87, 0x34, 0x76, 0x4d, 0xe5, 0x86, 0x7c, 0xcd, 0x03, 0xa8, 0x3b, 0x0b, 0x69, 0x50, 0x62, + 0xb2, 0xb5, 0xba, 0xd4, 0x88, 0xb0, 0x86, 0x81, 0x5e, 0x82, 0x91, 0x38, 0x68, 0x07, 0xad, 0x60, + 0x63, 0xe7, 0x2a, 0x91, 0xd9, 0x59, 0xd4, 0xcd, 0xd2, 0x5a, 0x02, 0xc2, 0x3a, 0x9e, 0xfd, 0x9d, + 0x32, 0xa4, 0x1f, 0x4a, 0xfd, 0xff, 0xeb, 0xf4, 0x47, 0x67, 0x9d, 0xfe, 0xb1, 0x05, 0x93, 0xb4, + 0x75, 0xe6, 0x62, 0x24, 0x1d, 0x8f, 0xd5, 0x33, 0x21, 0xd6, 0x01, 0xcf, 0x84, 0x3c, 0x4d, 0xb9, + 0x9d, 0x1b, 0x74, 0x62, 0x61, 0x02, 0xd3, 0x98, 0x18, 0x2d, 0xc5, 0x02, 0x2a, 0xf0, 0x48, 0x18, + 0x8a, 0x08, 0x2d, 0x1d, 0x8f, 0x84, 0x21, 0x16, 0x50, 0xf9, 0x8a, 0x48, 0xa5, 0xc7, 0x2b, 0x22, + 0x2c, 0xbf, 0x99, 0x70, 0x6b, 0x11, 0x62, 0x85, 0x96, 0xdf, 0x4c, 0xfa, 0xbb, 0x24, 0x38, 0xf6, + 0xd7, 0xcb, 0x30, 0x5a, 0x0f, 0xdc, 0x24, 0xa2, 0xe0, 0x45, 0x23, 0xa2, 0xe0, 0x4c, 0x2a, 0xa2, + 0x60, 0x52, 0xc7, 0x7d, 0x38, 0x01, 0x05, 0x22, 0x0f, 0x1e, 0x7b, 0xe7, 0xe6, 0x90, 0xc1, 0x04, + 0x46, 0x1e, 0x3c, 0x45, 0x08, 0x9b, 0x74, 0x7f, 0x9c, 0x82, 0x08, 0xfe, 0xb7, 0x05, 0xe3, 0xf5, + 0xc0, 0xa5, 0x0b, 0xf4, 0xc7, 0x69, 0x35, 0xea, 0xd9, 0xf3, 0x06, 0x0f, 0xc8, 0x9e, 0xf7, 0xcf, + 0x2d, 0x18, 0xaa, 0x07, 0xee, 0x31, 0x98, 0x87, 0x57, 0x4c, 0xf3, 0xf0, 0x13, 0xb9, 0x9c, 0xb7, + 0x87, 0x45, 0xf8, 0x9b, 0x65, 0x18, 0xa3, 0x3d, 0x0e, 0x36, 0xe4, 0x7c, 0x19, 0x63, 0x63, 0x15, + 0x18, 0x1b, 0x2a, 0x12, 0x06, 0xad, 0x56, 0x70, 0x3f, 0x3d, 0x77, 0x2b, 0xac, 0x14, 0x0b, 0x28, + 0x3a, 0x07, 0xc3, 0xed, 0x90, 0x6c, 0x7b, 0x41, 0x27, 0x4a, 0x47, 0x7b, 0xd6, 0x45, 0x39, 0x56, + 0x18, 0xe8, 0x45, 0x18, 0x8d, 0x3c, 0xbf, 0x49, 0xa4, 0xd3, 0x4b, 0x85, 0x39, 0xbd, 0xf0, 0x44, + 0xa5, 0x5a, 0x39, 0x36, 0xb0, 0xd0, 0x1d, 0xa8, 0xb2, 0xff, 0x6c, 0x07, 0xf5, 0xff, 0x0c, 0x08, + 0x57, 0x87, 0x25, 0x01, 0x9c, 0xd0, 0x42, 0x17, 0x01, 0x62, 0xe9, 0x9e, 0x13, 0x89, 0xb0, 0x64, + 0x25, 0x97, 0x2a, 0xc7, 0x9d, 0x08, 0x6b, 0x58, 0xe8, 0x39, 0xa8, 0xc6, 0x8e, 0xd7, 0xba, 0xe6, + 0xf9, 0x24, 0x12, 0xee, 0x4d, 0x22, 0xe9, 0xb8, 0x28, 0xc4, 0x09, 0x9c, 0x9e, 0xf7, 0x2c, 0xe8, + 0x9d, 0x3f, 0x31, 0x34, 0xcc, 0xb0, 0xd9, 0x79, 0x7f, 0x4d, 0x95, 0x62, 0x0d, 0xc3, 0xbe, 0x04, + 0x27, 0xeb, 0x81, 0x5b, 0x0f, 0xc2, 0x78, 0x25, 0x08, 0xef, 0x3b, 0xa1, 0x2b, 0xe7, 0x6f, 0x4e, + 0xe6, 0xba, 0xa6, 0x67, 0xf2, 0x00, 0xb7, 0x22, 0x18, 0xb9, 0xab, 0x5f, 0x60, 0x27, 0x7e, 0x9f, + 0xa1, 0x2a, 0x7f, 0x54, 0x06, 0x54, 0x67, 0x0e, 0x44, 0xc6, 0x8b, 0x54, 0x9b, 0x30, 0x1e, 0x91, + 0x6b, 0x9e, 0xdf, 0x79, 0x20, 0x48, 0x15, 0x8b, 0x0d, 0x6a, 0x2c, 0xeb, 0x75, 0xb8, 0x9d, 0xc6, + 0x2c, 0xc3, 0x29, 0xba, 0x74, 0x66, 0xc3, 0x8e, 0xbf, 0x10, 0xdd, 0x8a, 0x48, 0x28, 0x5e, 0x60, + 0xfa, 0x38, 0xbb, 0xc6, 0x94, 0x85, 0xfb, 0xbb, 0x73, 0x67, 0x73, 0x9c, 0x33, 0x7c, 0xef, 0x01, + 0xc5, 0x5c, 0xad, 0xe1, 0x84, 0x16, 0x5d, 0x68, 0xec, 0xcf, 0x8d, 0xc0, 0xc7, 0x41, 0x10, 0xcb, + 0xa5, 0xc9, 0x5e, 0xef, 0xd0, 0xca, 0xb1, 0x81, 0x85, 0x22, 0x40, 0x51, 0xa7, 0xdd, 0x6e, 0xb1, + 0x5b, 0x55, 0xa7, 0x75, 0x39, 0x0c, 0x3a, 0x6d, 0xee, 0x73, 0x5e, 0x5e, 0x5c, 0xa2, 0x3c, 0xb8, + 0xd1, 0x05, 0xdd, 0xdf, 0x9d, 0x7b, 0x26, 0xbf, 0x83, 0x0c, 0x77, 0xb5, 0x86, 0x33, 0xc8, 0x23, + 0x0c, 0x43, 0xeb, 0x11, 0xfb, 0x2d, 0x42, 0xeb, 0x2f, 0x31, 0x33, 0x6e, 0x83, 0x15, 0xf5, 0x47, + 0x5e, 0x12, 0xb2, 0x7f, 0x96, 0x1d, 0xb3, 0xec, 0x81, 0x9e, 0xb8, 0x13, 0x12, 0xb4, 0x05, 0x63, + 0x6d, 0x76, 0x94, 0xc6, 0x61, 0xd0, 0x6a, 0x11, 0x29, 0xe5, 0x1e, 0xce, 0x91, 0x8a, 0x3f, 0xc9, + 0xa1, 0x93, 0xc3, 0x26, 0x75, 0xfb, 0xbf, 0x8e, 0x33, 0x8e, 0x29, 0xae, 0xcc, 0x87, 0x84, 0xcb, + 0xb4, 0x90, 0x27, 0x3f, 0x52, 0xe4, 0xa9, 0xbd, 0xe4, 0x34, 0x12, 0x0e, 0xd8, 0x58, 0x52, 0x41, + 0x9f, 0x61, 0x01, 0x01, 0x9c, 0x4d, 0x15, 0x7f, 0x40, 0x94, 0xe3, 0x1b, 0xc1, 0x00, 0x82, 0x04, + 0xd6, 0xc8, 0xa1, 0x6b, 0x30, 0x26, 0xde, 0x73, 0x11, 0xc6, 0x92, 0xb2, 0xa1, 0xe8, 0x8f, 0x61, + 0x1d, 0xb8, 0x9f, 0x2e, 0xc0, 0x66, 0x65, 0xb4, 0x01, 0x8f, 0x6b, 0xef, 0x95, 0x65, 0x38, 0xfd, + 0x71, 0xfe, 0xf7, 0xc4, 0xde, 0xee, 0xdc, 0xe3, 0x6b, 0x07, 0x21, 0xe2, 0x83, 0xe9, 0xa0, 0x9b, + 0x70, 0xd2, 0x69, 0xc6, 0xde, 0x36, 0xa9, 0x11, 0xc7, 0x6d, 0x79, 0x3e, 0x31, 0x93, 0x35, 0x3c, + 0xba, 0xb7, 0x3b, 0x77, 0x72, 0x21, 0x0b, 0x01, 0x67, 0xd7, 0x43, 0x9f, 0x84, 0xaa, 0xeb, 0x47, + 0x62, 0x0c, 0x06, 0x8d, 0xe7, 0xf9, 0xaa, 0xb5, 0x1b, 0x0d, 0xf5, 0xfd, 0xc9, 0x1f, 0x9c, 0x54, + 0x40, 0xef, 0xc2, 0xa8, 0x1e, 0x84, 0x25, 0x9e, 0x85, 0x7c, 0xb9, 0x90, 0x16, 0x6f, 0x44, 0x2e, + 0x71, 0x3b, 0xa2, 0x72, 0xae, 0x35, 0x82, 0x9a, 0x8c, 0x26, 0xd0, 0x4f, 0x03, 0x8a, 0x48, 0xb8, + 0xed, 0x35, 0xc9, 0x42, 0x93, 0xe5, 0x18, 0x66, 0x96, 0xa6, 0x61, 0x23, 0xca, 0x04, 0x35, 0xba, + 0x30, 0x70, 0x46, 0x2d, 0x74, 0x85, 0xf2, 0x3f, 0xbd, 0x54, 0xf8, 0x42, 0x4b, 0xf1, 0x74, 0xa6, + 0x46, 0xda, 0x21, 0x69, 0x3a, 0x31, 0x71, 0x4d, 0x8a, 0x38, 0x55, 0x8f, 0x9e, 0x8e, 0xea, 0x19, + 0x09, 0x30, 0x3d, 0x78, 0xbb, 0x9f, 0x92, 0xa0, 0xda, 0xde, 0x66, 0x10, 0xc5, 0x37, 0x48, 0x7c, + 0x3f, 0x08, 0xef, 0x89, 0xbc, 0x6c, 0x49, 0xc2, 0xc6, 0x04, 0x84, 0x75, 0x3c, 0x2a, 0xc9, 0xb1, + 0x0b, 0xc8, 0xd5, 0x1a, 0xbb, 0xdd, 0x19, 0x4e, 0xf6, 0xce, 0x15, 0x5e, 0x8c, 0x25, 0x5c, 0xa2, + 0xae, 0xd6, 0x97, 0xd8, 0x4d, 0x4d, 0x0a, 0x75, 0xb5, 0xbe, 0x84, 0x25, 0x1c, 0x05, 0xdd, 0x8f, + 0x20, 0x8e, 0x17, 0xb9, 0x35, 0xeb, 0x3e, 0x4f, 0x0a, 0xbe, 0x83, 0xf8, 0x00, 0x26, 0xd5, 0x43, + 0x8c, 0x3c, 0x75, 0x5d, 0x34, 0x33, 0xc1, 0x16, 0xce, 0x61, 0x32, 0xe0, 0x29, 0xeb, 0xe2, 0x6a, + 0x8a, 0x26, 0xee, 0x6a, 0xc5, 0x48, 0x11, 0x32, 0x99, 0xfb, 0x34, 0xc8, 0x79, 0xa8, 0x46, 0x9d, + 0xbb, 0x6e, 0xb0, 0xe5, 0x78, 0x3e, 0xbb, 0x4e, 0xd1, 0x44, 0xa9, 0x86, 0x04, 0xe0, 0x04, 0x07, + 0xd5, 0x61, 0xd8, 0x11, 0x8a, 0xa4, 0xb8, 0xf6, 0xc8, 0xc9, 0x05, 0x20, 0xd5, 0x4e, 0x6e, 0xe3, + 0x95, 0xff, 0xb0, 0xa2, 0x82, 0x5e, 0x81, 0x31, 0x11, 0xca, 0x26, 0x5c, 0x4e, 0x4f, 0x98, 0x61, + 0x0f, 0x0d, 0x1d, 0x88, 0x4d, 0x5c, 0xb4, 0x01, 0xe3, 0x94, 0x4a, 0xc2, 0x00, 0x67, 0xa6, 0xfb, + 0xe3, 0xa1, 0x5a, 0x12, 0x76, 0x9d, 0x0c, 0x4e, 0x91, 0x45, 0x2e, 0x3c, 0xe6, 0x74, 0xe2, 0x60, + 0x8b, 0xee, 0x04, 0x73, 0x9f, 0xac, 0x05, 0xf7, 0x88, 0xcf, 0xee, 0x3a, 0x86, 0x17, 0xcf, 0xec, + 0xed, 0xce, 0x3d, 0xb6, 0x70, 0x00, 0x1e, 0x3e, 0x90, 0x0a, 0x7a, 0x0b, 0x46, 0xe2, 0xa0, 0x25, + 0x3c, 0xc9, 0xa3, 0x99, 0x53, 0x45, 0x52, 0x21, 0xad, 0xa9, 0x0a, 0xba, 0x31, 0x45, 0x11, 0xc1, + 0x3a, 0x45, 0xf4, 0x36, 0x8c, 0xd2, 0xb9, 0xbf, 0xee, 0xb4, 0xdb, 0x9e, 0xbf, 0x11, 0xcd, 0x3c, + 0x52, 0x64, 0xb4, 0x54, 0xa2, 0x4f, 0x73, 0xff, 0xb2, 0x22, 0x12, 0x61, 0x83, 0xe2, 0xec, 0x4f, + 0xc1, 0x54, 0x17, 0xd3, 0xeb, 0xcb, 0xc9, 0xf6, 0x3f, 0x0e, 0x40, 0x55, 0x59, 0x2e, 0xd1, 0x79, + 0xd3, 0x48, 0xfd, 0x68, 0xda, 0x48, 0x3d, 0x4c, 0x05, 0x45, 0xdd, 0x2e, 0xfd, 0xd9, 0x8c, 0xc7, + 0xfd, 0x9f, 0xcd, 0xdd, 0xe5, 0xc5, 0x23, 0xec, 0x34, 0x55, 0xb3, 0x5c, 0xd8, 0xee, 0x5d, 0x39, + 0x50, 0x7b, 0x2d, 0xf8, 0x60, 0x25, 0xd5, 0x53, 0xdb, 0x81, 0xbb, 0x5a, 0x4f, 0xbf, 0xc7, 0x56, + 0xa7, 0x85, 0x98, 0xc3, 0x98, 0x7e, 0x41, 0x4f, 0x6d, 0xa6, 0x5f, 0x0c, 0x1d, 0x52, 0xbf, 0x90, + 0x04, 0x70, 0x42, 0x0b, 0x6d, 0xc3, 0x54, 0xd3, 0x7c, 0x5e, 0x4f, 0xc5, 0xcd, 0x3d, 0xdf, 0xc7, + 0xf3, 0x76, 0x1d, 0xed, 0x65, 0x9c, 0xa5, 0x34, 0x3d, 0xdc, 0xdd, 0x04, 0x7a, 0x05, 0x86, 0xdf, + 0x0d, 0x22, 0x76, 0x7d, 0x22, 0x8e, 0x2e, 0x19, 0x9f, 0x34, 0xfc, 0xda, 0xcd, 0x06, 0x2b, 0xdf, + 0xdf, 0x9d, 0x1b, 0xa9, 0x07, 0xae, 0xfc, 0x8b, 0x55, 0x05, 0xf4, 0x39, 0x0b, 0x4e, 0x1a, 0x3b, + 0x59, 0xf5, 0x1c, 0x0e, 0xd3, 0xf3, 0xc7, 0x45, 0xcb, 0x27, 0x57, 0xb3, 0x68, 0xe2, 0xec, 0xa6, + 0xec, 0xdf, 0xe1, 0xa6, 0x5a, 0x61, 0xbc, 0x21, 0x51, 0xa7, 0x75, 0x1c, 0xaf, 0x54, 0xdc, 0x34, + 0xec, 0x4a, 0x0f, 0xe1, 0xb2, 0xe0, 0xdf, 0x5b, 0xec, 0xb2, 0x60, 0x8d, 0x6c, 0xb5, 0x5b, 0x4e, + 0x7c, 0x1c, 0x3e, 0xd8, 0x9f, 0x81, 0xe1, 0x58, 0xb4, 0x56, 0xec, 0x89, 0x0d, 0xad, 0x7b, 0xec, + 0x12, 0x45, 0x1d, 0x7d, 0xb2, 0x14, 0x2b, 0x82, 0xf6, 0xbf, 0xe2, 0xb3, 0x22, 0x21, 0xc7, 0x60, + 0x11, 0xb9, 0x61, 0x5a, 0x44, 0x9e, 0x29, 0xfc, 0x2d, 0x3d, 0x2c, 0x23, 0xdf, 0x31, 0xbf, 0x80, + 0x69, 0x28, 0x3f, 0x3a, 0xb7, 0x59, 0xf6, 0xaf, 0x58, 0x30, 0x9d, 0xe5, 0x14, 0x41, 0x45, 0x18, + 0xae, 0x1f, 0xa9, 0x7b, 0x3e, 0x35, 0xaa, 0xb7, 0x45, 0x39, 0x56, 0x18, 0x85, 0x73, 0xde, 0xf7, + 0x97, 0xca, 0xeb, 0x26, 0x98, 0x0f, 0x35, 0xa2, 0x57, 0x79, 0xc8, 0x85, 0xa5, 0x5e, 0x52, 0xec, + 0x2f, 0xdc, 0xc2, 0xfe, 0x46, 0x09, 0xa6, 0xb9, 0xb1, 0x7d, 0x61, 0x3b, 0xf0, 0xdc, 0x7a, 0xe0, + 0x8a, 0x00, 0x14, 0x17, 0x46, 0xdb, 0x9a, 0x7a, 0x5b, 0x2c, 0x35, 0x90, 0xae, 0x10, 0x27, 0x2a, + 0x85, 0x5e, 0x8a, 0x0d, 0xaa, 0xb4, 0x15, 0xb2, 0xed, 0x35, 0x95, 0xed, 0xb6, 0xd4, 0xf7, 0xc9, + 0xa0, 0x5a, 0x59, 0xd6, 0xe8, 0x60, 0x83, 0xea, 0x11, 0x3c, 0x55, 0x63, 0xff, 0x7d, 0x0b, 0x1e, + 0xe9, 0x91, 0x3e, 0x88, 0x36, 0x77, 0x9f, 0x5d, 0x70, 0x88, 0x97, 0x40, 0x55, 0x73, 0xfc, 0xda, + 0x03, 0x0b, 0x28, 0xba, 0x0b, 0xc0, 0xaf, 0x2d, 0xa8, 0x34, 0x9d, 0xbe, 0x53, 0x2f, 0x98, 0xa4, + 0x43, 0xcb, 0xdf, 0x20, 0x29, 0x61, 0x8d, 0xaa, 0xfd, 0xb5, 0x32, 0x0c, 0xf0, 0x07, 0xe7, 0xeb, + 0x30, 0xb4, 0xc9, 0xf3, 0x2a, 0xf7, 0x97, 0xd6, 0x39, 0x51, 0x5f, 0x78, 0x01, 0x96, 0x64, 0xd0, + 0x75, 0x38, 0x21, 0x42, 0xa0, 0x6a, 0xa4, 0xe5, 0xec, 0x48, 0x7d, 0x98, 0xbf, 0x5f, 0x22, 0x13, + 0xed, 0x9f, 0x58, 0xed, 0x46, 0xc1, 0x59, 0xf5, 0xd0, 0xab, 0x5d, 0x69, 0x10, 0x79, 0xbe, 0x6a, + 0x25, 0x0b, 0xe7, 0xa4, 0x42, 0x7c, 0x05, 0xc6, 0xda, 0x5d, 0x9a, 0xbf, 0xf6, 0xae, 0xb7, 0xa9, + 0xed, 0x9b, 0xb8, 0xcc, 0x87, 0xa2, 0xc3, 0x7c, 0x47, 0xd6, 0x36, 0x43, 0x12, 0x6d, 0x06, 0x2d, + 0x57, 0x3c, 0x49, 0x9b, 0xf8, 0x50, 0xa4, 0xe0, 0xb8, 0xab, 0x06, 0xa5, 0xb2, 0xee, 0x78, 0xad, + 0x4e, 0x48, 0x12, 0x2a, 0x83, 0x26, 0x95, 0x95, 0x14, 0x1c, 0x77, 0xd5, 0xa0, 0x6b, 0xeb, 0xa4, + 0x78, 0xc5, 0x54, 0x06, 0xcb, 0x0b, 0x16, 0xf4, 0x69, 0x18, 0x92, 0x81, 0x0c, 0x85, 0x72, 0xba, + 0x08, 0x07, 0x09, 0xf5, 0x22, 0xaa, 0xf6, 0x9e, 0x9d, 0x08, 0x61, 0x90, 0xf4, 0x0e, 0xf3, 0x5a, + 0xe6, 0x9f, 0x5b, 0x70, 0x22, 0xc3, 0x21, 0x8f, 0xb3, 0xb4, 0x0d, 0x2f, 0x8a, 0xd5, 0x6b, 0x1a, + 0x1a, 0x4b, 0xe3, 0xe5, 0x58, 0x61, 0xd0, 0xdd, 0xc2, 0x99, 0x66, 0x9a, 0x51, 0x0a, 0x57, 0x17, + 0x01, 0xed, 0x8f, 0x51, 0xa2, 0x33, 0x50, 0xe9, 0x44, 0x24, 0x94, 0x0f, 0x4b, 0x4a, 0x3e, 0x7f, + 0x2b, 0x22, 0x21, 0x66, 0x10, 0x2a, 0xb6, 0x6e, 0x28, 0x8b, 0xa0, 0x26, 0xb6, 0x32, 0xeb, 0x1e, + 0xe6, 0x30, 0xfb, 0xcb, 0x65, 0x98, 0x48, 0x39, 0xe6, 0xd2, 0x8e, 0x6c, 0x05, 0xbe, 0x17, 0x07, + 0x2a, 0xcf, 0x1e, 0x7f, 0xcb, 0x8e, 0xb4, 0x37, 0xaf, 0x8b, 0x72, 0xac, 0x30, 0xd0, 0xd3, 0xf2, + 0xb5, 0xe2, 0xf4, 0x2b, 0x21, 0x8b, 0x35, 0xe3, 0xc1, 0xe2, 0xa2, 0x2f, 0xfc, 0x3c, 0x09, 0x95, + 0x76, 0xa0, 0x1e, 0x9f, 0x57, 0xf3, 0x89, 0x17, 0x6b, 0xf5, 0x20, 0x68, 0x61, 0x06, 0x44, 0x4f, + 0x89, 0xaf, 0x4f, 0xdd, 0xd0, 0x60, 0xc7, 0x0d, 0x22, 0x6d, 0x08, 0x9e, 0x81, 0xa1, 0x7b, 0x64, + 0x27, 0xf4, 0xfc, 0x8d, 0xf4, 0xfd, 0xd4, 0x55, 0x5e, 0x8c, 0x25, 0xdc, 0x4c, 0x9a, 0x3f, 0x74, + 0xc4, 0xaf, 0xf8, 0x0c, 0xe7, 0x9e, 0x83, 0xdf, 0xb4, 0x60, 0x82, 0x65, 0xc1, 0x15, 0xa9, 0x1a, + 0xbc, 0xc0, 0x3f, 0x06, 0x19, 0xe3, 0x49, 0x18, 0x08, 0x69, 0xa3, 0xe9, 0x67, 0x38, 0x58, 0x4f, + 0x30, 0x87, 0xa1, 0xc7, 0xa0, 0xc2, 0xba, 0x40, 0xa7, 0x71, 0x94, 0x27, 0xdb, 0xaf, 0x39, 0xb1, + 0x83, 0x59, 0x29, 0x8b, 0x85, 0xc3, 0xa4, 0xdd, 0xf2, 0x78, 0xa7, 0x13, 0x83, 0xee, 0x07, 0x2d, + 0x16, 0x2e, 0xb3, 0x93, 0x0f, 0x2b, 0x16, 0x2e, 0x9b, 0xf8, 0xc1, 0x72, 0xfe, 0x7f, 0x2b, 0xc1, + 0xe9, 0xcc, 0x7a, 0xc9, 0x4d, 0xf7, 0x8a, 0x71, 0xd3, 0x7d, 0x31, 0x75, 0xd3, 0x6d, 0x1f, 0x5c, + 0xfb, 0xe1, 0xdc, 0x7d, 0x67, 0x5f, 0x49, 0x97, 0x8f, 0xf1, 0x4a, 0xba, 0x52, 0x54, 0xc4, 0x19, + 0xc8, 0x11, 0x71, 0xfe, 0xd0, 0x82, 0x47, 0x33, 0x87, 0xec, 0x03, 0x17, 0x7c, 0x98, 0xd9, 0xcb, + 0x1e, 0xda, 0xc9, 0x2f, 0x97, 0x7b, 0x7c, 0x15, 0xd3, 0x53, 0xce, 0x52, 0x2e, 0xc4, 0x80, 0x91, + 0x10, 0xde, 0x46, 0x39, 0x07, 0xe2, 0x65, 0x58, 0x41, 0x51, 0xa4, 0x05, 0xef, 0xf1, 0x4e, 0x2e, + 0x1f, 0x72, 0x43, 0xcd, 0x9b, 0x96, 0x78, 0x3d, 0xff, 0x44, 0x3a, 0xa4, 0xef, 0x8e, 0xa6, 0x79, + 0x96, 0x0f, 0xa3, 0x79, 0x8e, 0x66, 0x6b, 0x9d, 0x68, 0x01, 0x26, 0xb6, 0x3c, 0x9f, 0x3d, 0xfe, + 0x6b, 0x4a, 0x4f, 0x2a, 0x82, 0xfa, 0xba, 0x09, 0xc6, 0x69, 0xfc, 0xd9, 0x57, 0x60, 0xec, 0xf0, + 0xd6, 0xb5, 0x1f, 0x94, 0xe1, 0xc3, 0x07, 0x30, 0x05, 0x7e, 0x3a, 0x18, 0xf3, 0xa2, 0x9d, 0x0e, + 0x5d, 0x73, 0x53, 0x87, 0xe9, 0xf5, 0x4e, 0xab, 0xb5, 0xc3, 0xfc, 0xc4, 0x88, 0x2b, 0x31, 0x84, + 0x50, 0xa3, 0x92, 0x62, 0xaf, 0x64, 0xe0, 0xe0, 0xcc, 0x9a, 0xe8, 0xa7, 0x01, 0x05, 0x77, 0x59, + 0x7a, 0x66, 0x37, 0xc9, 0xaf, 0xc1, 0xa6, 0xa0, 0x9c, 0x6c, 0xd5, 0x9b, 0x5d, 0x18, 0x38, 0xa3, + 0x16, 0x95, 0x53, 0xe9, 0x39, 0xb6, 0xa3, 0xba, 0x95, 0x92, 0x53, 0xb1, 0x0e, 0xc4, 0x26, 0x2e, + 0xba, 0x0c, 0x53, 0xce, 0xb6, 0xe3, 0xf1, 0x74, 0x6b, 0x92, 0x00, 0x17, 0x54, 0x95, 0xfd, 0x6a, + 0x21, 0x8d, 0x80, 0xbb, 0xeb, 0xa0, 0xb6, 0x61, 0x90, 0xe4, 0x2f, 0x44, 0x7c, 0xf2, 0x10, 0x2b, + 0xb8, 0xb0, 0x89, 0xd2, 0xfe, 0x53, 0x8b, 0x1e, 0x7d, 0x19, 0xef, 0xc4, 0xd2, 0x11, 0x51, 0x06, + 0x36, 0x2d, 0x18, 0x51, 0x8d, 0xc8, 0x92, 0x0e, 0xc4, 0x26, 0x2e, 0x5f, 0x1a, 0x51, 0xe2, 0xb6, + 0x6e, 0x48, 0x9b, 0x22, 0x8e, 0x57, 0x61, 0x50, 0x09, 0xda, 0xf5, 0xb6, 0xbd, 0x28, 0x08, 0xc5, + 0x06, 0xea, 0xf7, 0x35, 0x76, 0xc5, 0x2f, 0x6b, 0x9c, 0x0c, 0x96, 0xf4, 0xec, 0xaf, 0x94, 0x60, + 0x4c, 0xb6, 0xf8, 0x5a, 0x27, 0x88, 0x9d, 0x63, 0x38, 0xd2, 0x5f, 0x33, 0x8e, 0xf4, 0xf3, 0xc5, + 0xc2, 0x9a, 0x59, 0xe7, 0x7a, 0x1e, 0xe5, 0x9f, 0x4e, 0x1d, 0xe5, 0x17, 0xfa, 0x21, 0x7a, 0xf0, + 0x11, 0xfe, 0x6f, 0x2c, 0x98, 0x32, 0xf0, 0x8f, 0xe1, 0x24, 0xa9, 0x9b, 0x27, 0xc9, 0x73, 0x7d, + 0x7c, 0x4d, 0x8f, 0x13, 0xe4, 0xeb, 0xa5, 0xd4, 0x57, 0xb0, 0x93, 0xe3, 0x67, 0xa0, 0xb2, 0xe9, + 0x84, 0x6e, 0xb1, 0xdc, 0xa3, 0x5d, 0xd5, 0xe7, 0xaf, 0x38, 0xa1, 0xcb, 0xf9, 0xff, 0x39, 0xf5, + 0x8a, 0x9d, 0x13, 0xba, 0xb9, 0xd1, 0x1c, 0xac, 0x51, 0x74, 0x09, 0x06, 0xa3, 0x66, 0xd0, 0x56, + 0xfe, 0xae, 0x67, 0xf8, 0x0b, 0x77, 0xb4, 0x64, 0x7f, 0x77, 0x0e, 0x99, 0xcd, 0xd1, 0x62, 0x2c, + 0xf0, 0x67, 0x37, 0xa0, 0xaa, 0x9a, 0x3e, 0x52, 0x8f, 0xff, 0xff, 0x52, 0x86, 0x13, 0x19, 0x6b, + 0x05, 0xfd, 0xac, 0x31, 0x6e, 0xaf, 0xf4, 0xbd, 0xd8, 0xde, 0xe7, 0xc8, 0xfd, 0x2c, 0xd3, 0x94, + 0x5c, 0xb1, 0x3a, 0x0e, 0xd1, 0xfc, 0xad, 0x88, 0xa4, 0x9b, 0xa7, 0x45, 0xf9, 0xcd, 0xd3, 0x66, + 0x8f, 0x6d, 0xf8, 0x69, 0x43, 0xaa, 0xa7, 0x47, 0x3a, 0xcf, 0x5f, 0xa8, 0xc0, 0x74, 0x56, 0xfe, + 0x04, 0xf4, 0x0b, 0x56, 0xea, 0xa5, 0x93, 0x57, 0xfb, 0x4f, 0xc2, 0xc0, 0x9f, 0x3f, 0x11, 0xd9, + 0x8d, 0xe6, 0xcd, 0xb7, 0x4f, 0x72, 0x47, 0x5c, 0xb4, 0xce, 0xe2, 0xb0, 0x42, 0xfe, 0x6a, 0x8d, + 0xe4, 0x0a, 0x9f, 0x3a, 0x44, 0x57, 0xc4, 0xc3, 0x37, 0x51, 0x2a, 0x0e, 0x4b, 0x16, 0xe7, 0xc7, + 0x61, 0xc9, 0x3e, 0xcc, 0x7a, 0x30, 0xa2, 0x7d, 0xd7, 0x91, 0x2e, 0x83, 0x7b, 0xf4, 0x88, 0xd2, + 0xfa, 0x7d, 0xa4, 0x4b, 0xe1, 0xef, 0x58, 0x90, 0x72, 0x4e, 0x53, 0x66, 0x19, 0xab, 0xa7, 0x59, + 0xe6, 0x0c, 0x54, 0xc2, 0xa0, 0x45, 0xd2, 0x8f, 0x5f, 0xe0, 0xa0, 0x45, 0x30, 0x83, 0xa8, 0x87, + 0xad, 0xcb, 0xbd, 0x1e, 0xb6, 0xa6, 0x7a, 0x7a, 0x8b, 0x6c, 0x13, 0x69, 0x24, 0x51, 0x6c, 0xfc, + 0x1a, 0x2d, 0xc4, 0x1c, 0x66, 0xff, 0x66, 0x05, 0x4e, 0x64, 0xc4, 0x24, 0x52, 0x0d, 0x69, 0xc3, + 0x89, 0xc9, 0x7d, 0x67, 0x27, 0x9d, 0x84, 0xf7, 0x32, 0x2f, 0xc6, 0x12, 0xce, 0x9c, 0x6a, 0x79, + 0x22, 0xbf, 0x94, 0xe9, 0x4a, 0xe4, 0xef, 0x13, 0xd0, 0xa3, 0x7f, 0x02, 0xf9, 0x22, 0x40, 0x14, + 0xb5, 0x96, 0x7d, 0x2a, 0xe1, 0xb9, 0xc2, 0x79, 0x37, 0xc9, 0xff, 0xd8, 0xb8, 0x26, 0x20, 0x58, + 0xc3, 0x42, 0x35, 0x98, 0x6c, 0x87, 0x41, 0xcc, 0x0d, 0x83, 0x35, 0xee, 0x6a, 0x31, 0x60, 0x46, + 0x8d, 0xd5, 0x53, 0x70, 0xdc, 0x55, 0x03, 0xbd, 0x04, 0x23, 0x22, 0x92, 0xac, 0x1e, 0x04, 0x2d, + 0x61, 0x46, 0x52, 0xf7, 0xf1, 0x8d, 0x04, 0x84, 0x75, 0x3c, 0xad, 0x1a, 0xb3, 0x36, 0x0e, 0x65, + 0x56, 0xe3, 0x16, 0x47, 0x0d, 0x2f, 0x95, 0x65, 0x65, 0xb8, 0x50, 0x96, 0x95, 0xc4, 0xb0, 0x56, + 0x2d, 0x7c, 0x11, 0x03, 0xb9, 0x06, 0xa8, 0xdf, 0x2f, 0xc3, 0x20, 0x9f, 0x8a, 0x63, 0x90, 0xf2, + 0xea, 0xc2, 0xa4, 0x54, 0x28, 0xa3, 0x05, 0xef, 0xd5, 0x7c, 0xcd, 0x89, 0x1d, 0xce, 0x9a, 0xd4, + 0x0e, 0x49, 0xcc, 0x50, 0x68, 0xde, 0xd8, 0x43, 0xb3, 0x29, 0x4b, 0x09, 0x70, 0x1a, 0xda, 0x8e, + 0xda, 0x04, 0x88, 0xd8, 0x33, 0xbc, 0x94, 0x86, 0xc8, 0x10, 0xfc, 0x62, 0xa1, 0x7e, 0x34, 0x54, + 0x35, 0xde, 0x9b, 0x64, 0x59, 0x2a, 0x00, 0xd6, 0x68, 0xcf, 0xbe, 0x0c, 0x55, 0x85, 0x9c, 0xa7, + 0x42, 0x8e, 0xea, 0xac, 0xed, 0x27, 0x61, 0x22, 0xd5, 0x56, 0x5f, 0x1a, 0xe8, 0x6f, 0x5b, 0x30, + 0xc1, 0xbb, 0xbc, 0xec, 0x6f, 0x0b, 0x56, 0xf0, 0x79, 0x0b, 0xa6, 0x5b, 0x19, 0x3b, 0x51, 0x4c, + 0xf3, 0x61, 0xf6, 0xb0, 0x52, 0x3e, 0xb3, 0xa0, 0x38, 0xb3, 0x35, 0x74, 0x16, 0x86, 0xf9, 0xab, + 0xe2, 0x4e, 0x4b, 0x78, 0x8a, 0x8f, 0xf2, 0xdc, 0xe8, 0xbc, 0x0c, 0x2b, 0xa8, 0xfd, 0x43, 0x0b, + 0xa6, 0xf8, 0x47, 0x5c, 0x25, 0x3b, 0x4a, 0xbd, 0xfa, 0x80, 0x7c, 0x86, 0xc8, 0x02, 0x5f, 0xea, + 0x91, 0x05, 0x5e, 0xff, 0xca, 0xf2, 0x81, 0x5f, 0xf9, 0x0d, 0x0b, 0xc4, 0x0a, 0x3d, 0x06, 0xfd, + 0x61, 0xd5, 0xd4, 0x1f, 0x3e, 0x52, 0x64, 0xd1, 0xf7, 0x50, 0x1c, 0x7e, 0xa9, 0x04, 0x93, 0x1c, + 0x21, 0xb9, 0x91, 0xf9, 0xa0, 0x4c, 0x4e, 0x7f, 0xaf, 0x13, 0xa9, 0xb7, 0x69, 0xb3, 0xbf, 0xd4, + 0x98, 0xcb, 0xca, 0x81, 0x73, 0xf9, 0x3f, 0x2d, 0x40, 0x7c, 0x4c, 0xd2, 0x4f, 0xb2, 0xf3, 0xd3, + 0x4d, 0x33, 0x07, 0x24, 0x9c, 0x43, 0x41, 0xb0, 0x86, 0xf5, 0x90, 0x3f, 0x21, 0x75, 0x1f, 0x56, + 0xce, 0xbf, 0x0f, 0xeb, 0xe3, 0xab, 0xff, 0x7b, 0x19, 0xd2, 0xce, 0x9a, 0xe8, 0x6d, 0x18, 0x6d, + 0x3a, 0x6d, 0xe7, 0xae, 0xd7, 0xf2, 0x62, 0x8f, 0x44, 0xc5, 0x2e, 0xdc, 0x97, 0xb4, 0x1a, 0xe2, + 0x1a, 0x4a, 0x2b, 0xc1, 0x06, 0x45, 0x34, 0x0f, 0xd0, 0x0e, 0xbd, 0x6d, 0xaf, 0x45, 0x36, 0x98, + 0xc6, 0xc3, 0x62, 0x4e, 0xf8, 0xdd, 0xb1, 0x2c, 0xc5, 0x1a, 0x46, 0x46, 0x8c, 0x42, 0xf9, 0x38, + 0x62, 0x14, 0x2a, 0x47, 0x18, 0xa3, 0x30, 0x50, 0x28, 0x46, 0x01, 0xc3, 0x29, 0x79, 0xd0, 0xd3, + 0xff, 0x2b, 0x5e, 0x8b, 0x08, 0x39, 0x8f, 0xc7, 0xaf, 0xcc, 0xee, 0xed, 0xce, 0x9d, 0xc2, 0x99, + 0x18, 0xb8, 0x47, 0x4d, 0xbb, 0x03, 0x27, 0x1a, 0x24, 0x94, 0x4f, 0xef, 0xa9, 0x7d, 0xf7, 0x59, + 0xa8, 0x86, 0xa9, 0x2d, 0xdf, 0x67, 0x92, 0x02, 0x2d, 0x2f, 0x9d, 0xdc, 0xe2, 0x09, 0x49, 0xfb, + 0xaf, 0x97, 0x60, 0x48, 0xb8, 0x74, 0x1e, 0x83, 0xa0, 0x72, 0xd5, 0x30, 0x47, 0x3d, 0x93, 0xc7, + 0x2b, 0x59, 0xb7, 0x7a, 0x1a, 0xa2, 0x1a, 0x29, 0x43, 0xd4, 0x73, 0xc5, 0xc8, 0x1d, 0x6c, 0x82, + 0xfa, 0x27, 0x65, 0x18, 0x37, 0x5d, 0x5c, 0x8f, 0x61, 0x58, 0x5e, 0x87, 0xa1, 0x48, 0x78, 0x5b, + 0x97, 0x8a, 0xf8, 0xf7, 0xa5, 0xa7, 0x38, 0xb9, 0xb5, 0x17, 0xfe, 0xd5, 0x92, 0x5c, 0xa6, 0x43, + 0x77, 0xf9, 0x58, 0x1c, 0xba, 0xf3, 0x3c, 0x8f, 0x2b, 0x0f, 0xc3, 0xf3, 0xd8, 0xfe, 0x2e, 0x3b, + 0x1e, 0xf4, 0xf2, 0x63, 0x38, 0xf2, 0x5f, 0x33, 0x0f, 0x92, 0x73, 0x85, 0xd6, 0x9d, 0xe8, 0x5e, + 0x8f, 0xa3, 0xff, 0x5b, 0x16, 0x8c, 0x08, 0xc4, 0x63, 0xf8, 0x80, 0x9f, 0x36, 0x3f, 0xe0, 0xa9, + 0x42, 0x1f, 0xd0, 0xa3, 0xe7, 0x5f, 0x29, 0xa9, 0x9e, 0xd7, 0x83, 0x30, 0x2e, 0x94, 0xbd, 0x7d, + 0x98, 0xaa, 0x89, 0x41, 0x33, 0x68, 0x09, 0x61, 0xef, 0xb1, 0x24, 0x5c, 0x91, 0x97, 0xef, 0x6b, + 0xbf, 0xb1, 0xc2, 0x66, 0xd1, 0x74, 0x41, 0x18, 0x8b, 0xc3, 0x36, 0x89, 0xa6, 0x0b, 0xc2, 0x18, + 0x33, 0x08, 0x72, 0x01, 0x62, 0x27, 0xdc, 0x20, 0x31, 0x2d, 0x13, 0x91, 0xbe, 0xbd, 0x77, 0x6b, + 0x27, 0xf6, 0x5a, 0xf3, 0x9e, 0x1f, 0x47, 0x71, 0x38, 0xbf, 0xea, 0xc7, 0x37, 0x43, 0xae, 0x20, + 0x68, 0xf1, 0x87, 0x8a, 0x16, 0xd6, 0xe8, 0xca, 0x90, 0x12, 0xd6, 0xc6, 0x80, 0x79, 0xdb, 0x74, + 0x43, 0x94, 0x63, 0x85, 0x61, 0xbf, 0xcc, 0x38, 0x3b, 0x1b, 0xa0, 0xfe, 0x42, 0x03, 0xbf, 0x30, + 0xa4, 0x86, 0x96, 0x99, 0x90, 0x6f, 0xe8, 0x01, 0x88, 0x45, 0xd9, 0x27, 0xed, 0x82, 0xee, 0x73, + 0x9d, 0xc4, 0x2b, 0x22, 0xd2, 0x75, 0x45, 0xf9, 0x72, 0x61, 0x8e, 0xdc, 0xc7, 0xa5, 0x24, 0x4b, + 0x23, 0xc9, 0x72, 0xe7, 0xad, 0xd6, 0xd3, 0x39, 0xf7, 0x97, 0x24, 0x00, 0x27, 0x38, 0xe8, 0xbc, + 0x50, 0x3e, 0xb9, 0x75, 0xe6, 0xc3, 0x29, 0xe5, 0x53, 0x0e, 0x89, 0xa6, 0x7d, 0x5e, 0x80, 0x11, + 0xf5, 0x8c, 0x51, 0x9d, 0x3f, 0x20, 0x53, 0xe5, 0xb2, 0xd8, 0x72, 0x52, 0x8c, 0x75, 0x1c, 0xb4, + 0x06, 0x13, 0x11, 0x7f, 0x63, 0x49, 0xc6, 0x76, 0x08, 0x23, 0xc3, 0xb3, 0xf2, 0x42, 0xb3, 0x61, + 0x82, 0xf7, 0x59, 0x11, 0xdf, 0xca, 0x32, 0x1a, 0x24, 0x4d, 0x02, 0xbd, 0x0a, 0xe3, 0x2d, 0xfd, + 0xdd, 0xd9, 0xba, 0xb0, 0x41, 0x28, 0x17, 0x35, 0xe3, 0x55, 0xda, 0x3a, 0x4e, 0x61, 0xa3, 0xd7, + 0x61, 0x46, 0x2f, 0x11, 0x09, 0x91, 0x1c, 0x7f, 0x83, 0x44, 0xe2, 0x3d, 0x96, 0xc7, 0xf6, 0x76, + 0xe7, 0x66, 0xae, 0xf5, 0xc0, 0xc1, 0x3d, 0x6b, 0xa3, 0x4b, 0x30, 0x2a, 0x3f, 0x5f, 0x8b, 0x84, + 0x4a, 0x9c, 0x23, 0x35, 0x18, 0x36, 0x30, 0xd1, 0x7d, 0x38, 0x29, 0xff, 0xaf, 0x85, 0xce, 0xfa, + 0xba, 0xd7, 0x14, 0x21, 0x69, 0x23, 0x8c, 0xc4, 0x82, 0xf4, 0x2d, 0x5f, 0xce, 0x42, 0xda, 0xdf, + 0x9d, 0x3b, 0x23, 0x46, 0x2d, 0x13, 0xce, 0x26, 0x31, 0x9b, 0x3e, 0xba, 0x0e, 0x27, 0x36, 0x89, + 0xd3, 0x8a, 0x37, 0x97, 0x36, 0x49, 0xf3, 0x9e, 0xdc, 0x58, 0x2c, 0xbe, 0x4a, 0x73, 0x1f, 0xbc, + 0xd2, 0x8d, 0x82, 0xb3, 0xea, 0xbd, 0xbf, 0xfb, 0xe7, 0x9f, 0xa1, 0x95, 0x35, 0xf9, 0x01, 0xbd, + 0x03, 0xa3, 0xfa, 0x58, 0xa7, 0x05, 0x83, 0xfc, 0x37, 0x89, 0x85, 0x1c, 0xa2, 0x66, 0x40, 0x87, + 0x61, 0x83, 0xb6, 0xfd, 0xef, 0x4a, 0x30, 0x97, 0x93, 0x6f, 0x2c, 0x65, 0xf9, 0xb2, 0x0a, 0x59, + 0xbe, 0x16, 0xe4, 0x3b, 0x3d, 0x37, 0x52, 0x79, 0xde, 0x53, 0x2f, 0xef, 0x24, 0xd9, 0xde, 0xd3, + 0xf8, 0x85, 0xbd, 0xd2, 0x74, 0xe3, 0x59, 0x25, 0xd7, 0x39, 0xef, 0x0d, 0xdd, 0x1e, 0x3a, 0x70, + 0x18, 0xa1, 0xb7, 0xa7, 0x29, 0xd4, 0xfe, 0x6e, 0x09, 0x4e, 0xaa, 0xc1, 0xfc, 0xf1, 0x1d, 0xc2, + 0xb7, 0xba, 0x87, 0xf0, 0xa1, 0x9a, 0x94, 0xed, 0x9b, 0x30, 0xd8, 0xd8, 0x89, 0x9a, 0x71, 0xab, + 0xc0, 0x89, 0xff, 0xa4, 0xb1, 0xaf, 0x92, 0xd3, 0x88, 0xbd, 0xbe, 0x27, 0xb6, 0x99, 0xfd, 0x8b, + 0x16, 0x4c, 0xac, 0x2d, 0xd5, 0x1b, 0x41, 0xf3, 0x1e, 0x89, 0x17, 0xb8, 0xf1, 0x03, 0x8b, 0x03, + 0xdf, 0x3a, 0xe4, 0x41, 0x9e, 0x25, 0x22, 0x9c, 0x81, 0xca, 0x66, 0x10, 0xc5, 0xe9, 0x0b, 0x84, + 0x2b, 0x41, 0x14, 0x63, 0x06, 0xb1, 0xff, 0xcc, 0x82, 0x01, 0xf6, 0xb8, 0x5c, 0xde, 0xc3, 0x84, + 0x45, 0xbe, 0x0b, 0xbd, 0x04, 0x83, 0x64, 0x7d, 0x9d, 0x34, 0x63, 0x31, 0xbf, 0x32, 0x18, 0x67, + 0x70, 0x99, 0x95, 0xd2, 0x13, 0x8d, 0x35, 0xc6, 0xff, 0x62, 0x81, 0x8c, 0x3e, 0x03, 0xd5, 0xd8, + 0xdb, 0x22, 0x0b, 0xae, 0x2b, 0x2c, 0xf6, 0xfd, 0xf9, 0x87, 0xa9, 0x13, 0x76, 0x4d, 0x12, 0xc1, + 0x09, 0x3d, 0xfb, 0x4b, 0x25, 0x80, 0x24, 0xd8, 0x2e, 0xef, 0x33, 0x17, 0xbb, 0xde, 0x5f, 0x7c, + 0x3a, 0xe3, 0xfd, 0x45, 0x94, 0x10, 0xcc, 0x78, 0x7d, 0x51, 0x0d, 0x55, 0xb9, 0xd0, 0x50, 0x55, + 0xfa, 0x19, 0xaa, 0x25, 0x98, 0x4a, 0x82, 0x05, 0xcd, 0xa8, 0x6b, 0x96, 0x23, 0x79, 0x2d, 0x0d, + 0xc4, 0xdd, 0xf8, 0xf6, 0x97, 0x2c, 0x10, 0x1e, 0xc5, 0x05, 0x16, 0xb4, 0x2b, 0xdf, 0x4a, 0x33, + 0xd2, 0x21, 0x3e, 0x5b, 0xc4, 0xd9, 0x5a, 0x24, 0x41, 0x54, 0x7c, 0xdf, 0x48, 0x7d, 0x68, 0x50, + 0xb5, 0x7f, 0xc3, 0x82, 0x11, 0x0e, 0xbe, 0xce, 0x14, 0xd1, 0xfc, 0x7e, 0xf5, 0x95, 0x80, 0x9b, + 0x3d, 0x23, 0x46, 0x09, 0xab, 0x44, 0xcc, 0xfa, 0x33, 0x62, 0x12, 0x80, 0x13, 0x1c, 0xf4, 0x0c, + 0x0c, 0x45, 0x9d, 0xbb, 0x0c, 0x3d, 0xe5, 0x5e, 0xdc, 0xe0, 0xc5, 0x58, 0xc2, 0xed, 0x7f, 0x56, + 0x82, 0xc9, 0xb4, 0x77, 0x39, 0xc2, 0x30, 0xc8, 0x19, 0x48, 0x5a, 0xa7, 0x39, 0xc8, 0x58, 0xaa, + 0x79, 0xa7, 0x03, 0x7f, 0x0c, 0x9f, 0xb1, 0x20, 0x41, 0x09, 0xad, 0xc3, 0x88, 0x1b, 0xdc, 0xf7, + 0xef, 0x3b, 0xa1, 0xbb, 0x50, 0x5f, 0x15, 0x33, 0x91, 0xe3, 0x0f, 0x58, 0x4b, 0x2a, 0xe8, 0xbe, + 0xef, 0xcc, 0x78, 0x97, 0x80, 0xb0, 0x4e, 0x18, 0x7d, 0x96, 0x65, 0x6f, 0x59, 0xf7, 0x36, 0xae, + 0x3b, 0xed, 0x62, 0x9e, 0x2f, 0x4b, 0x12, 0x5d, 0x6b, 0x63, 0x4c, 0x24, 0x7b, 0xe1, 0x00, 0x9c, + 0x90, 0xb4, 0x7f, 0xe9, 0x24, 0x18, 0x6b, 0xc1, 0xc8, 0x92, 0x6d, 0x3d, 0xf4, 0x2c, 0xd9, 0x6f, + 0xc2, 0x30, 0xd9, 0x6a, 0xc7, 0x3b, 0x35, 0x2f, 0x2c, 0xf6, 0xe6, 0xc1, 0xb2, 0xc0, 0xee, 0xa6, + 0x2e, 0x21, 0x58, 0x51, 0xec, 0x91, 0xf3, 0xbc, 0xfc, 0x81, 0xc8, 0x79, 0x5e, 0xf9, 0x4b, 0xc9, + 0x79, 0xfe, 0x3a, 0x0c, 0x6d, 0x78, 0x31, 0x26, 0xed, 0x40, 0x9c, 0xc6, 0x39, 0x8b, 0xe7, 0x32, + 0x47, 0xee, 0xce, 0x86, 0x2b, 0x00, 0x58, 0x92, 0x43, 0x6b, 0x6a, 0x53, 0x0d, 0x16, 0x91, 0x41, + 0xbb, 0x8d, 0xe9, 0x99, 0xdb, 0x4a, 0xe4, 0x38, 0x1f, 0x7a, 0xff, 0x39, 0xce, 0x55, 0x66, 0xf2, + 0xe1, 0x87, 0x95, 0x99, 0xdc, 0xc8, 0xf0, 0x5e, 0x3d, 0x8a, 0x0c, 0xef, 0x5f, 0xb2, 0xe0, 0x64, + 0x3b, 0xeb, 0x7d, 0x04, 0x91, 0x63, 0xfc, 0xa7, 0x0e, 0xf1, 0x62, 0x84, 0xd1, 0x34, 0xcb, 0x06, + 0x92, 0x89, 0x86, 0xb3, 0x1b, 0x96, 0xa9, 0xe2, 0x47, 0xde, 0x7f, 0xaa, 0xf8, 0xa3, 0x4e, 0x46, + 0x9e, 0x24, 0x8e, 0x1f, 0x3b, 0x92, 0xc4, 0xf1, 0xe3, 0x0f, 0x31, 0x71, 0xbc, 0x96, 0xf2, 0x7d, + 0xe2, 0xe1, 0xa6, 0x7c, 0xdf, 0x34, 0xcf, 0x25, 0x9e, 0x61, 0xfc, 0xa5, 0xc2, 0xe7, 0x92, 0xd1, + 0xc2, 0xc1, 0x27, 0x13, 0x4f, 0x7e, 0x3f, 0xf5, 0x3e, 0x93, 0xdf, 0x1b, 0x29, 0xe4, 0xd1, 0x51, + 0xa4, 0x90, 0x7f, 0x5b, 0x3f, 0x41, 0x4f, 0x14, 0x69, 0x41, 0x1d, 0x94, 0xdd, 0x2d, 0x64, 0x9d, + 0xa1, 0xdd, 0x49, 0xea, 0xa7, 0x8f, 0x3b, 0x49, 0xfd, 0xc9, 0x23, 0x4c, 0x52, 0x7f, 0xea, 0x58, + 0x93, 0xd4, 0x3f, 0xf2, 0x01, 0x49, 0x52, 0x3f, 0x73, 0x5c, 0x49, 0xea, 0x1f, 0x7d, 0xb8, 0x49, + 0xea, 0xdf, 0x86, 0x6a, 0x5b, 0xc6, 0x68, 0xce, 0xcc, 0x16, 0x99, 0xba, 0xcc, 0x90, 0x4e, 0x3e, + 0x75, 0x0a, 0x84, 0x13, 0xa2, 0xb4, 0x85, 0x24, 0x69, 0xfd, 0x87, 0x8b, 0xb4, 0x90, 0x69, 0xf7, + 0x38, 0x20, 0x55, 0xfd, 0x17, 0x4a, 0x70, 0xfa, 0xe0, 0xdd, 0x91, 0x18, 0x4d, 0xea, 0x89, 0x2d, + 0x3b, 0x65, 0x34, 0x61, 0x92, 0xa7, 0x86, 0x55, 0x38, 0xf4, 0xfd, 0x32, 0x4c, 0x29, 0x9f, 0xb0, + 0x96, 0xd7, 0xdc, 0xd1, 0x9e, 0xce, 0x52, 0xb1, 0x0c, 0x8d, 0x34, 0x02, 0xee, 0xae, 0x83, 0x16, + 0x60, 0xc2, 0x28, 0x5c, 0xad, 0x09, 0xfd, 0x45, 0x59, 0x69, 0x1a, 0x26, 0x18, 0xa7, 0xf1, 0xed, + 0xaf, 0x5b, 0xf0, 0x48, 0x8f, 0xac, 0xb4, 0x85, 0xe3, 0xb9, 0xdb, 0x30, 0xd1, 0x36, 0xab, 0x16, + 0x4e, 0x0f, 0x61, 0x64, 0xc1, 0x55, 0xbd, 0x4e, 0x01, 0x70, 0x9a, 0xfc, 0xe2, 0xd9, 0xef, 0xfd, + 0xe0, 0xf4, 0x87, 0xfe, 0xe0, 0x07, 0xa7, 0x3f, 0xf4, 0xfd, 0x1f, 0x9c, 0xfe, 0xd0, 0xcf, 0xed, + 0x9d, 0xb6, 0xbe, 0xb7, 0x77, 0xda, 0xfa, 0x83, 0xbd, 0xd3, 0xd6, 0xf7, 0xf7, 0x4e, 0x5b, 0x7f, + 0xbe, 0x77, 0xda, 0xfa, 0xd2, 0x0f, 0x4f, 0x7f, 0xe8, 0x8d, 0xd2, 0xf6, 0x85, 0xff, 0x17, 0x00, + 0x00, 0xff, 0xff, 0x06, 0x5b, 0x53, 0xd1, 0x4d, 0xd1, 0x00, 0x00, } diff --git a/vendor/k8s.io/client-go/pkg/api/v1/generated.proto b/vendor/k8s.io/client-go/pkg/api/v1/generated.proto index 5a6940bb..2accf2a6 100644 --- a/vendor/k8s.io/client-go/pkg/api/v1/generated.proto +++ b/vendor/k8s.io/client-go/pkg/api/v1/generated.proto @@ -19,14 +19,13 @@ limitations under the License. syntax = 'proto2'; -package k8s.io.kubernetes.pkg.api.v1; +package k8s.io.client_go.pkg.api.v1; import "k8s.io/apimachinery/pkg/api/resource/generated.proto"; import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; // Package-wide variables from generator "generated". option go_package = "v1"; @@ -139,11 +138,11 @@ message AzureFileVolumeSource { optional bool readOnly = 3; } -// Binding ties one object to another. -// For example, a pod is bound to a node by a scheduler. +// Binding ties one object to another; for example, a pod is bound to a node by a scheduler. +// Deprecated in 1.7, please use the bindings subresource of pods instead. message Binding { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; @@ -242,7 +241,7 @@ message ComponentCondition { // ComponentStatus (and ComponentStatusList) holds the cluster validation info. message ComponentStatus { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; @@ -256,7 +255,7 @@ message ComponentStatus { // Status of all the conditions for the component as a list of ComponentStatus objects. message ComponentStatusList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -267,7 +266,7 @@ message ComponentStatusList { // ConfigMap holds configuration data for pods to consume. message ConfigMap { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; @@ -306,7 +305,7 @@ message ConfigMapKeySelector { // ConfigMapList is a resource containing a list of ConfigMap objects. message ConfigMapList { - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -380,7 +379,6 @@ message Container { // Docker image name. // More info: https://kubernetes.io/docs/concepts/containers/images - // +optional optional string image = 2; // Entrypoint array. Not executed within a shell. @@ -502,7 +500,7 @@ message Container { // Security options the pod should run with. // More info: https://kubernetes.io/docs/concepts/policy/security-context/ - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/security_context.md + // More info: https://git.k8s.io/community/contributors/design-proposals/security_context.md // +optional optional SecurityContext securityContext = 15; @@ -762,6 +760,15 @@ message EmptyDirVolumeSource { // More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir // +optional optional string medium = 1; + + // Total amount of local storage required for this EmptyDir volume. + // The size limit is also applicable for memory medium. + // The maximum usage on memory medium EmptyDir would be the minimum value between + // the SizeLimit specified here and the sum of memory limits of all containers in a pod. + // The default is nil which means that the limit is undefined. + // More info: http://kubernetes.io/docs/user-guide/volumes#emptydir + // +optional + optional k8s.io.apimachinery.pkg.api.resource.Quantity sizeLimit = 2; } // EndpointAddress is a tuple that describes single IP address. @@ -846,7 +853,7 @@ message EndpointSubset { // ] message Endpoints { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; @@ -863,7 +870,7 @@ message Endpoints { // EndpointsList is a list of endpoints. message EndpointsList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -932,7 +939,7 @@ message EnvVarSource { // TODO: Decide whether to store these separately or with the object they apply to. message Event { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // The object that this event is about. @@ -973,7 +980,7 @@ message Event { // EventList is a list of events. message EventList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -1201,7 +1208,7 @@ message HostAlias { // IP address of the host file entry. optional string ip = 1; - // Hostnames for the the above IP address. + // Hostnames for the above IP address. repeated string hostnames = 2; } @@ -1305,12 +1312,12 @@ message Lifecycle { // LimitRange sets resource usage limits for each kind of resource in a Namespace. message LimitRange { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // Spec defines the limits enforced. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional LimitRangeSpec spec = 2; } @@ -1345,12 +1352,12 @@ message LimitRangeItem { // LimitRangeList is a list of LimitRange items. message LimitRangeList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; // Items is a list of LimitRange objects. - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/admission_control_limit_range.md + // More info: https://git.k8s.io/community/contributors/design-proposals/admission_control_limit_range.md repeated LimitRange items = 2; } @@ -1363,7 +1370,7 @@ message LimitRangeSpec { // List holds a list of objects, which may not be known by the server. message List { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -1440,6 +1447,14 @@ message LocalObjectReference { optional string name = 1; } +// Local represents directly-attached storage with node affinity +message LocalVolumeSource { + // The full path to the volume on the node + // For alpha, this path must be a directory + // Once block as a source is supported, then this path can point to a block device + optional string path = 1; +} + // Represents an NFS mount that lasts the lifetime of a pod. // NFS volumes do not support ownership management or SELinux relabeling. message NFSVolumeSource { @@ -1463,17 +1478,17 @@ message NFSVolumeSource { // Use of multiple namespaces is optional. message Namespace { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // Spec defines the behavior of the Namespace. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional NamespaceSpec spec = 2; // Status describes the current status of a Namespace. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional NamespaceStatus status = 3; } @@ -1481,7 +1496,7 @@ message Namespace { // NamespaceList is a list of Namespaces. message NamespaceList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -1493,7 +1508,7 @@ message NamespaceList { // NamespaceSpec describes the attributes on a Namespace. message NamespaceSpec { // Finalizers is an opaque list of values that must be empty to permanently remove object from storage. - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/namespaces.md#finalizers + // More info: https://git.k8s.io/community/contributors/design-proposals/namespaces.md#finalizers // +optional repeated string finalizers = 1; } @@ -1501,7 +1516,7 @@ message NamespaceSpec { // NamespaceStatus is information about the current status of a Namespace. message NamespaceStatus { // Phase is the current lifecycle phase of the namespace. - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/namespaces.md#phases + // More info: https://git.k8s.io/community/contributors/design-proposals/namespaces.md#phases // +optional optional string phase = 1; } @@ -1510,19 +1525,19 @@ message NamespaceStatus { // Each node will have a unique identifier in the cache (i.e. in etcd). message Node { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // Spec defines the behavior of a node. - // https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional NodeSpec spec = 2; // Most recently observed status of the node. // Populated by the system. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional NodeStatus status = 3; } @@ -1594,7 +1609,7 @@ message NodeDaemonEndpoints { // NodeList is the whole list of all Nodes which have been registered with master. message NodeList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -1734,12 +1749,12 @@ message NodeStatus { // NodeSystemInfo is a set of ids/uuids to uniquely identify the node. message NodeSystemInfo { // MachineID reported by the node. For unique machine identification - // in the cluster this field is prefered. Learn more from man(5) + // in the cluster this field is preferred. Learn more from man(5) // machine-id: http://man7.org/linux/man-pages/man5/machine-id.5.html optional string machineID = 1; // SystemUUID reported by the node. For unique machine identification - // MachineID is prefered. This field is specific to Red Hat hosts + // MachineID is preferred. This field is specific to Red Hat hosts // https://access.redhat.com/documentation/en-US/Red_Hat_Subscription_Management/1/html/RHSM/getting-system-uuid.html optional string systemUUID = 2; @@ -1806,7 +1821,7 @@ message ObjectMeta { // should retry (optionally after the time indicated in the Retry-After header). // // Applied only if Name is not specified. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#idempotency + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency // +optional optional string generateName = 2; @@ -1846,7 +1861,7 @@ message ObjectMeta { // Populated by the system. // Read-only. // Value must be treated as opaque by clients and . - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#concurrency-control-and-consistency + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency // +optional optional string resourceVersion = 6; @@ -1862,7 +1877,7 @@ message ObjectMeta { // Populated by the system. // Read-only. // Null for lists. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.Time creationTimestamp = 8; @@ -1882,7 +1897,7 @@ message ObjectMeta { // // Populated by the system when a graceful deletion is requested. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.Time deletionTimestamp = 9; @@ -1945,7 +1960,7 @@ message ObjectMeta { // ObjectReference contains enough information to let you inspect or modify the referred object. message ObjectReference { // Kind of the referent. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional string kind = 1; @@ -1969,7 +1984,7 @@ message ObjectReference { optional string apiVersion = 5; // Specific resourceVersion to which this reference is made, if any. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#concurrency-control-and-consistency + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency // +optional optional string resourceVersion = 6; @@ -1990,7 +2005,7 @@ message ObjectReference { // More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes message PersistentVolume { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; @@ -2011,7 +2026,7 @@ message PersistentVolume { // PersistentVolumeClaim is a user's request for and claim to a persistent volume message PersistentVolumeClaim { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; @@ -2030,7 +2045,7 @@ message PersistentVolumeClaim { // PersistentVolumeClaimList is a list of PersistentVolumeClaim items. message PersistentVolumeClaimList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -2100,7 +2115,7 @@ message PersistentVolumeClaimVolumeSource { // PersistentVolumeList is a list of PersistentVolume items. message PersistentVolumeList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -2202,6 +2217,15 @@ message PersistentVolumeSource { // ScaleIO represents a ScaleIO persistent volume attached and mounted on Kubernetes nodes. // +optional optional ScaleIOVolumeSource scaleIO = 19; + + // Local represents directly-attached storage with node affinity + // +optional + optional LocalVolumeSource local = 20; + + // StorageOS represents a StorageOS volume that is attached to the kubelet's host machine and mounted into the pod + // More info: https://releases.k8s.io/HEAD/examples/volumes/storageos/README.md + // +optional + optional StorageOSPersistentVolumeSource storageos = 21; } // PersistentVolumeSpec is the specification of a persistent volume. @@ -2271,12 +2295,12 @@ message PhotonPersistentDiskVolumeSource { // by clients and scheduled onto hosts. message Pod { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // Specification of the desired behavior of the pod. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional PodSpec spec = 2; @@ -2284,7 +2308,7 @@ message Pod { // This data may not be up to date. // Populated by the system. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional PodStatus status = 3; } @@ -2484,12 +2508,12 @@ message PodExecOptions { // PodList is a list of Pods. message PodList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; // List of pods. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md repeated Pod items = 2; } @@ -2829,7 +2853,7 @@ message PodStatus { // PodStatusResult is a wrapper for PodStatus returned by kubelet that can be encode/decoded message PodStatusResult { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; @@ -2837,7 +2861,7 @@ message PodStatusResult { // This data may not be up to date. // Populated by the system. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional PodStatus status = 2; } @@ -2845,12 +2869,12 @@ message PodStatusResult { // PodTemplate describes a template for creating copies of a predefined pod. message PodTemplate { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // Template defines the pods that will be created from this pod template. - // https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional PodTemplateSpec template = 2; } @@ -2858,7 +2882,7 @@ message PodTemplate { // PodTemplateList is a list of PodTemplates. message PodTemplateList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -2869,12 +2893,12 @@ message PodTemplateList { // PodTemplateSpec describes the data a pod should have when created from a template message PodTemplateSpec { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // Specification of the desired behavior of the pod. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional PodSpec spec = 2; } @@ -3059,7 +3083,7 @@ message RBDVolumeSource { // RangeAllocation is not a public type. message RangeAllocation { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; @@ -3074,12 +3098,12 @@ message RangeAllocation { message ReplicationController { // If the Labels of a ReplicationController are empty, they are defaulted to // be the same as the Pod(s) that the replication controller manages. - // Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // Spec defines the specification of the desired behavior of the replication controller. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional ReplicationControllerSpec spec = 2; @@ -3087,7 +3111,7 @@ message ReplicationController { // This data may be out of date by some window of time. // Populated by the system. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional ReplicationControllerStatus status = 3; } @@ -3116,7 +3140,7 @@ message ReplicationControllerCondition { // ReplicationControllerList is a collection of replication controllers. message ReplicationControllerList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -3202,17 +3226,17 @@ message ResourceFieldSelector { // ResourceQuota sets aggregate quota restrictions enforced per namespace message ResourceQuota { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // Spec defines the desired quota. - // https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional ResourceQuotaSpec spec = 2; // Status defines the actual enforced quota and its current usage. - // https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional ResourceQuotaStatus status = 3; } @@ -3220,19 +3244,19 @@ message ResourceQuota { // ResourceQuotaList is a list of ResourceQuota items. message ResourceQuotaList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; // Items is a list of ResourceQuota objects. - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/admission_control_resource_quota.md + // More info: https://git.k8s.io/community/contributors/design-proposals/admission_control_resource_quota.md repeated ResourceQuota items = 2; } // ResourceQuotaSpec defines the desired hard limits to enforce for Quota. message ResourceQuotaSpec { // Hard is the set of desired hard limits for each named resource. - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/admission_control_resource_quota.md + // More info: https://git.k8s.io/community/contributors/design-proposals/admission_control_resource_quota.md // +optional map hard = 1; @@ -3245,7 +3269,7 @@ message ResourceQuotaSpec { // ResourceQuotaStatus defines the enforced hard limits and observed use. message ResourceQuotaStatus { // Hard is the set of enforced hard limits for each named resource. - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/admission_control_resource_quota.md + // More info: https://git.k8s.io/community/contributors/design-proposals/admission_control_resource_quota.md // +optional map hard = 1; @@ -3336,7 +3360,7 @@ message ScaleIOVolumeSource { // the Data field must be less than MaxSecretSize bytes. message Secret { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; @@ -3390,7 +3414,7 @@ message SecretKeySelector { // SecretList is a list of Secret. message SecretList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -3513,19 +3537,19 @@ message SerializedReference { // will answer requests sent through the proxy. message Service { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // Spec defines the behavior of a service. - // https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional ServiceSpec spec = 2; // Most recently observed status of the service. // Populated by the system. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional ServiceStatus status = 3; } @@ -3536,7 +3560,7 @@ message Service { // * a set of secrets message ServiceAccount { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; @@ -3563,7 +3587,7 @@ message ServiceAccount { // ServiceAccountList is a list of ServiceAccount objects message ServiceAccountList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -3575,7 +3599,7 @@ message ServiceAccountList { // ServiceList holds a list of services. message ServiceList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -3714,9 +3738,12 @@ message ServiceSpec { // +optional optional string externalName = 10; - // externalTrafficPolicy denotes if this Service desires to route external traffic to - // local endpoints only. This preserves Source IP and avoids a second hop for - // LoadBalancer and Nodeport type services. + // externalTrafficPolicy denotes if this Service desires to route external + // traffic to node-local or cluster-wide endpoints. "Local" preserves the + // client source IP and avoids a second hop for LoadBalancer and Nodeport + // type services, but risks potentially imbalanced traffic spreading. + // "Cluster" obscures the client source IP and may cause a second hop to + // another node, but should have good overall load-spreading. // +optional optional string externalTrafficPolicy = 11; @@ -3737,6 +3764,70 @@ message ServiceStatus { optional LoadBalancerStatus loadBalancer = 1; } +// Represents a StorageOS persistent volume resource. +message StorageOSPersistentVolumeSource { + // VolumeName is the human-readable name of the StorageOS volume. Volume + // names are only unique within a namespace. + optional string volumeName = 1; + + // VolumeNamespace specifies the scope of the volume within StorageOS. If no + // namespace is specified then the Pod's namespace will be used. This allows the + // Kubernetes name scoping to be mirrored within StorageOS for tighter integration. + // Set VolumeName to any name to override the default behaviour. + // Set to "default" if you are not using namespaces within StorageOS. + // Namespaces that do not pre-exist within StorageOS will be created. + // +optional + optional string volumeNamespace = 2; + + // Filesystem type to mount. + // Must be a filesystem type supported by the host operating system. + // Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. + // +optional + optional string fsType = 3; + + // Defaults to false (read/write). ReadOnly here will force + // the ReadOnly setting in VolumeMounts. + // +optional + optional bool readOnly = 4; + + // SecretRef specifies the secret to use for obtaining the StorageOS API + // credentials. If not specified, default values will be attempted. + // +optional + optional ObjectReference secretRef = 5; +} + +// Represents a StorageOS persistent volume resource. +message StorageOSVolumeSource { + // VolumeName is the human-readable name of the StorageOS volume. Volume + // names are only unique within a namespace. + optional string volumeName = 1; + + // VolumeNamespace specifies the scope of the volume within StorageOS. If no + // namespace is specified then the Pod's namespace will be used. This allows the + // Kubernetes name scoping to be mirrored within StorageOS for tighter integration. + // Set VolumeName to any name to override the default behaviour. + // Set to "default" if you are not using namespaces within StorageOS. + // Namespaces that do not pre-exist within StorageOS will be created. + // +optional + optional string volumeNamespace = 2; + + // Filesystem type to mount. + // Must be a filesystem type supported by the host operating system. + // Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. + // +optional + optional string fsType = 3; + + // Defaults to false (read/write). ReadOnly here will force + // the ReadOnly setting in VolumeMounts. + // +optional + optional bool readOnly = 4; + + // SecretRef specifies the secret to use for obtaining the StorageOS API + // credentials. If not specified, default values will be attempted. + // +optional + optional LocalObjectReference secretRef = 5; +} + // Sysctl defines a kernel parameter to be set message Sysctl { // Name of a property to set @@ -3988,6 +4079,10 @@ message VolumeSource { // ScaleIO represents a ScaleIO persistent volume attached and mounted on Kubernetes nodes. // +optional optional ScaleIOVolumeSource scaleIO = 25; + + // StorageOS represents a StorageOS volume attached and mounted on Kubernetes nodes. + // +optional + optional StorageOSVolumeSource storageos = 27; } // Represents a vSphere volume resource. @@ -4000,6 +4095,14 @@ message VsphereVirtualDiskVolumeSource { // Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. // +optional optional string fsType = 2; + + // Storage Policy Based Management (SPBM) profile name. + // +optional + optional string storagePolicyName = 3; + + // Storage Policy Based Management (SPBM) profile ID associated with the StoragePolicyName. + // +optional + optional string storagePolicyID = 4; } // The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s) diff --git a/vendor/k8s.io/client-go/pkg/api/v1/resource.go b/vendor/k8s.io/client-go/pkg/api/v1/resource.go index 2dca9866..0d1c1dcc 100644 --- a/vendor/k8s.io/client-go/pkg/api/v1/resource.go +++ b/vendor/k8s.io/client-go/pkg/api/v1/resource.go @@ -54,3 +54,10 @@ func (self *ResourceList) NvidiaGPU() *resource.Quantity { } return &resource.Quantity{} } + +func (self *ResourceList) StorageOverlay() *resource.Quantity { + if val, ok := (*self)[ResourceStorageOverlay]; ok { + return &val + } + return &resource.Quantity{} +} diff --git a/vendor/k8s.io/client-go/pkg/api/v1/types.generated.go b/vendor/k8s.io/client-go/pkg/api/v1/types.generated.go index 123c69ac..dc5ef1f5 100644 --- a/vendor/k8s.io/client-go/pkg/api/v1/types.generated.go +++ b/vendor/k8s.io/client-go/pkg/api/v1/types.generated.go @@ -1302,7 +1302,7 @@ func (x *Volume) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [27]bool + var yyq2 [28]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[1] = x.VolumeSource.HostPath != nil && x.HostPath != nil @@ -1331,9 +1331,10 @@ func (x *Volume) CodecEncodeSelf(e *codec1978.Encoder) { yyq2[24] = x.VolumeSource.Projected != nil && x.Projected != nil yyq2[25] = x.VolumeSource.PortworxVolume != nil && x.PortworxVolume != nil yyq2[26] = x.VolumeSource.ScaleIO != nil && x.ScaleIO != nil + yyq2[27] = x.VolumeSource.StorageOS != nil && x.StorageOS != nil var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(27) + r.EncodeArrayStart(28) } else { yynn2 = 1 for _, b := range yyq2 { @@ -2325,6 +2326,43 @@ func (x *Volume) CodecEncodeSelf(e *codec1978.Encoder) { } } } + var yyn84 bool + if x.VolumeSource.StorageOS == nil { + yyn84 = true + goto LABEL84 + } + LABEL84: + if yyr2 || yy2arr2 { + if yyn84 { + r.EncodeNil() + } else { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[27] { + if x.StorageOS == nil { + r.EncodeNil() + } else { + x.StorageOS.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } + } else { + if yyq2[27] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("storageos")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if yyn84 { + r.EncodeNil() + } else { + if x.StorageOS == nil { + r.EncodeNil() + } else { + x.StorageOS.CodecEncodeSelf(e) + } + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -2762,6 +2800,20 @@ func (x *Volume) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { } x.ScaleIO.CodecDecodeSelf(d) } + case "storageos": + if x.VolumeSource.StorageOS == nil { + x.VolumeSource.StorageOS = new(StorageOSVolumeSource) + } + if r.TryDecodeAsNil() { + if x.StorageOS != nil { + x.StorageOS = nil + } + } else { + if x.StorageOS == nil { + x.StorageOS = new(StorageOSVolumeSource) + } + x.StorageOS.CodecDecodeSelf(d) + } default: z.DecStructFieldNotFound(-1, yys3) } // end switch yys3 @@ -2773,16 +2825,16 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj32 int - var yyb32 bool - var yyhl32 bool = l >= 0 - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + var yyj33 int + var yyb33 bool + var yyhl33 bool = l >= 0 + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2790,24 +2842,24 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.Name = "" } else { - yyv33 := &x.Name - yym34 := z.DecBinary() - _ = yym34 + yyv34 := &x.Name + yym35 := z.DecBinary() + _ = yym35 if false { } else { - *((*string)(yyv33)) = r.DecodeString() + *((*string)(yyv34)) = r.DecodeString() } } if x.VolumeSource.HostPath == nil { x.VolumeSource.HostPath = new(HostPathVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2825,13 +2877,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.EmptyDir == nil { x.VolumeSource.EmptyDir = new(EmptyDirVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2849,13 +2901,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.GCEPersistentDisk == nil { x.VolumeSource.GCEPersistentDisk = new(GCEPersistentDiskVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2873,13 +2925,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.AWSElasticBlockStore == nil { x.VolumeSource.AWSElasticBlockStore = new(AWSElasticBlockStoreVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2897,13 +2949,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.GitRepo == nil { x.VolumeSource.GitRepo = new(GitRepoVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2921,13 +2973,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.Secret == nil { x.VolumeSource.Secret = new(SecretVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2945,13 +2997,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.NFS == nil { x.VolumeSource.NFS = new(NFSVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2969,13 +3021,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.ISCSI == nil { x.VolumeSource.ISCSI = new(ISCSIVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2993,13 +3045,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.Glusterfs == nil { x.VolumeSource.Glusterfs = new(GlusterfsVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3017,13 +3069,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.PersistentVolumeClaim == nil { x.VolumeSource.PersistentVolumeClaim = new(PersistentVolumeClaimVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3041,13 +3093,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.RBD == nil { x.VolumeSource.RBD = new(RBDVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3065,13 +3117,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.FlexVolume == nil { x.VolumeSource.FlexVolume = new(FlexVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3089,13 +3141,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.Cinder == nil { x.VolumeSource.Cinder = new(CinderVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3113,13 +3165,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.CephFS == nil { x.VolumeSource.CephFS = new(CephFSVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3137,13 +3189,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.Flocker == nil { x.VolumeSource.Flocker = new(FlockerVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3161,13 +3213,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.DownwardAPI == nil { x.VolumeSource.DownwardAPI = new(DownwardAPIVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3185,13 +3237,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.FC == nil { x.VolumeSource.FC = new(FCVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3209,13 +3261,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.AzureFile == nil { x.VolumeSource.AzureFile = new(AzureFileVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3233,13 +3285,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.ConfigMap == nil { x.VolumeSource.ConfigMap = new(ConfigMapVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3257,13 +3309,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.VsphereVolume == nil { x.VolumeSource.VsphereVolume = new(VsphereVirtualDiskVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3281,13 +3333,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.Quobyte == nil { x.VolumeSource.Quobyte = new(QuobyteVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3305,13 +3357,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.AzureDisk == nil { x.VolumeSource.AzureDisk = new(AzureDiskVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3329,13 +3381,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.PhotonPersistentDisk == nil { x.VolumeSource.PhotonPersistentDisk = new(PhotonPersistentDiskVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3353,13 +3405,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.Projected == nil { x.VolumeSource.Projected = new(ProjectedVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3377,13 +3429,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.PortworxVolume == nil { x.VolumeSource.PortworxVolume = new(PortworxVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3401,13 +3453,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.ScaleIO == nil { x.VolumeSource.ScaleIO = new(ScaleIOVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3422,18 +3474,42 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.ScaleIO.CodecDecodeSelf(d) } - for { - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l - } else { - yyb32 = r.CheckBreak() + if x.VolumeSource.StorageOS == nil { + x.VolumeSource.StorageOS = new(StorageOSVolumeSource) + } + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l + } else { + yyb33 = r.CheckBreak() + } + if yyb33 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.StorageOS != nil { + x.StorageOS = nil } - if yyb32 { + } else { + if x.StorageOS == nil { + x.StorageOS = new(StorageOSVolumeSource) + } + x.StorageOS.CodecDecodeSelf(d) + } + for { + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l + } else { + yyb33 = r.CheckBreak() + } + if yyb33 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj32-1, "") + z.DecStructFieldNotFound(yyj33-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -3452,7 +3528,7 @@ func (x *VolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [26]bool + var yyq2 [27]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[0] = x.HostPath != nil @@ -3481,9 +3557,10 @@ func (x *VolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { yyq2[23] = x.Projected != nil yyq2[24] = x.PortworxVolume != nil yyq2[25] = x.ScaleIO != nil + yyq2[26] = x.StorageOS != nil var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(26) + r.EncodeArrayStart(27) } else { yynn2 = 0 for _, b := range yyq2 { @@ -4092,6 +4169,29 @@ func (x *VolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { } } } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[26] { + if x.StorageOS == nil { + r.EncodeNil() + } else { + x.StorageOS.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[26] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("storageos")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.StorageOS == nil { + r.EncodeNil() + } else { + x.StorageOS.CodecEncodeSelf(e) + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -4439,6 +4539,17 @@ func (x *VolumeSource) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { } x.ScaleIO.CodecDecodeSelf(d) } + case "storageos": + if r.TryDecodeAsNil() { + if x.StorageOS != nil { + x.StorageOS = nil + } + } else { + if x.StorageOS == nil { + x.StorageOS = new(StorageOSVolumeSource) + } + x.StorageOS.CodecDecodeSelf(d) + } default: z.DecStructFieldNotFound(-1, yys3) } // end switch yys3 @@ -4450,16 +4561,16 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj30 int - var yyb30 bool - var yyhl30 bool = l >= 0 - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + var yyj31 int + var yyb31 bool + var yyhl31 bool = l >= 0 + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4474,13 +4585,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.HostPath.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4495,13 +4606,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.EmptyDir.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4516,13 +4627,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.GCEPersistentDisk.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4537,13 +4648,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.AWSElasticBlockStore.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4558,13 +4669,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.GitRepo.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4579,13 +4690,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.Secret.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4600,13 +4711,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.NFS.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4621,13 +4732,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.ISCSI.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4642,13 +4753,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.Glusterfs.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4663,13 +4774,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.PersistentVolumeClaim.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4684,13 +4795,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.RBD.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4705,13 +4816,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.FlexVolume.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4726,13 +4837,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.Cinder.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4747,13 +4858,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.CephFS.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4768,13 +4879,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.Flocker.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4789,13 +4900,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.DownwardAPI.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4810,13 +4921,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.FC.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4831,13 +4942,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.AzureFile.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4852,13 +4963,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.ConfigMap.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4873,13 +4984,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.VsphereVolume.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4894,13 +5005,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.Quobyte.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4915,13 +5026,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.AzureDisk.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4936,13 +5047,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.PhotonPersistentDisk.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4957,13 +5068,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.Projected.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4978,13 +5089,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.PortworxVolume.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4999,18 +5110,39 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.ScaleIO.CodecDecodeSelf(d) } - for { - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l - } else { - yyb30 = r.CheckBreak() + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l + } else { + yyb31 = r.CheckBreak() + } + if yyb31 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.StorageOS != nil { + x.StorageOS = nil } - if yyb30 { + } else { + if x.StorageOS == nil { + x.StorageOS = new(StorageOSVolumeSource) + } + x.StorageOS.CodecDecodeSelf(d) + } + for { + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l + } else { + yyb31 = r.CheckBreak() + } + if yyb31 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj30-1, "") + z.DecStructFieldNotFound(yyj31-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -5263,7 +5395,7 @@ func (x *PersistentVolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [19]bool + var yyq2 [21]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[0] = x.GCEPersistentDisk != nil @@ -5285,9 +5417,11 @@ func (x *PersistentVolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { yyq2[16] = x.PhotonPersistentDisk != nil yyq2[17] = x.PortworxVolume != nil yyq2[18] = x.ScaleIO != nil + yyq2[19] = x.Local != nil + yyq2[20] = x.StorageOS != nil var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(19) + r.EncodeArrayStart(21) } else { yynn2 = 0 for _, b := range yyq2 { @@ -5735,6 +5869,52 @@ func (x *PersistentVolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { } } } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[19] { + if x.Local == nil { + r.EncodeNil() + } else { + x.Local.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[19] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("local")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Local == nil { + r.EncodeNil() + } else { + x.Local.CodecEncodeSelf(e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[20] { + if x.StorageOS == nil { + r.EncodeNil() + } else { + x.StorageOS.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[20] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("storageos")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.StorageOS == nil { + r.EncodeNil() + } else { + x.StorageOS.CodecEncodeSelf(e) + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -6005,6 +6185,28 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromMap(l int, d *codec1978.Deco } x.ScaleIO.CodecDecodeSelf(d) } + case "local": + if r.TryDecodeAsNil() { + if x.Local != nil { + x.Local = nil + } + } else { + if x.Local == nil { + x.Local = new(LocalVolumeSource) + } + x.Local.CodecDecodeSelf(d) + } + case "storageos": + if r.TryDecodeAsNil() { + if x.StorageOS != nil { + x.StorageOS = nil + } + } else { + if x.StorageOS == nil { + x.StorageOS = new(StorageOSPersistentVolumeSource) + } + x.StorageOS.CodecDecodeSelf(d) + } default: z.DecStructFieldNotFound(-1, yys3) } // end switch yys3 @@ -6016,16 +6218,16 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj23 int - var yyb23 bool - var yyhl23 bool = l >= 0 - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + var yyj25 int + var yyb25 bool + var yyhl25 bool = l >= 0 + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6040,13 +6242,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.GCEPersistentDisk.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6061,13 +6263,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.AWSElasticBlockStore.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6082,13 +6284,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.HostPath.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6103,13 +6305,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.Glusterfs.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6124,13 +6326,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.NFS.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6145,13 +6347,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.RBD.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6166,13 +6368,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.ISCSI.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6187,13 +6389,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.Cinder.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6208,13 +6410,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.CephFS.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6229,13 +6431,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.FC.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6250,13 +6452,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.Flocker.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6271,13 +6473,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.FlexVolume.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6292,13 +6494,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.AzureFile.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6313,13 +6515,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.VsphereVolume.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6334,13 +6536,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.Quobyte.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6355,13 +6557,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.AzureDisk.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6376,13 +6578,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.PhotonPersistentDisk.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6397,13 +6599,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.PortworxVolume.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6418,18 +6620,60 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.ScaleIO.CodecDecodeSelf(d) } - for { - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l - } else { - yyb23 = r.CheckBreak() + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l + } else { + yyb25 = r.CheckBreak() + } + if yyb25 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.Local != nil { + x.Local = nil } - if yyb23 { + } else { + if x.Local == nil { + x.Local = new(LocalVolumeSource) + } + x.Local.CodecDecodeSelf(d) + } + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l + } else { + yyb25 = r.CheckBreak() + } + if yyb25 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.StorageOS != nil { + x.StorageOS = nil + } + } else { + if x.StorageOS == nil { + x.StorageOS = new(StorageOSPersistentVolumeSource) + } + x.StorageOS.CodecDecodeSelf(d) + } + for { + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l + } else { + yyb25 = r.CheckBreak() + } + if yyb25 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj23-1, "") + z.DecStructFieldNotFound(yyj25-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -6839,7 +7083,7 @@ func (x *PersistentVolumeSpec) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [24]bool + var yyq2 [26]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[0] = len(x.Capacity) != 0 @@ -6862,13 +7106,15 @@ func (x *PersistentVolumeSpec) CodecEncodeSelf(e *codec1978.Encoder) { yyq2[17] = x.PersistentVolumeSource.PhotonPersistentDisk != nil && x.PhotonPersistentDisk != nil yyq2[18] = x.PersistentVolumeSource.PortworxVolume != nil && x.PortworxVolume != nil yyq2[19] = x.PersistentVolumeSource.ScaleIO != nil && x.ScaleIO != nil - yyq2[20] = len(x.AccessModes) != 0 - yyq2[21] = x.ClaimRef != nil - yyq2[22] = x.PersistentVolumeReclaimPolicy != "" - yyq2[23] = x.StorageClassName != "" + yyq2[20] = x.PersistentVolumeSource.Local != nil && x.Local != nil + yyq2[21] = x.PersistentVolumeSource.StorageOS != nil && x.StorageOS != nil + yyq2[22] = len(x.AccessModes) != 0 + yyq2[23] = x.ClaimRef != nil + yyq2[24] = x.PersistentVolumeReclaimPolicy != "" + yyq2[25] = x.StorageClassName != "" var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(24) + r.EncodeArrayStart(26) } else { yynn2 = 0 for _, b := range yyq2 { @@ -7605,14 +7851,88 @@ func (x *PersistentVolumeSpec) CodecEncodeSelf(e *codec1978.Encoder) { } } } + var yyn63 bool + if x.PersistentVolumeSource.Local == nil { + yyn63 = true + goto LABEL63 + } + LABEL63: + if yyr2 || yy2arr2 { + if yyn63 { + r.EncodeNil() + } else { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[20] { + if x.Local == nil { + r.EncodeNil() + } else { + x.Local.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } + } else { + if yyq2[20] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("local")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if yyn63 { + r.EncodeNil() + } else { + if x.Local == nil { + r.EncodeNil() + } else { + x.Local.CodecEncodeSelf(e) + } + } + } + } + var yyn66 bool + if x.PersistentVolumeSource.StorageOS == nil { + yyn66 = true + goto LABEL66 + } + LABEL66: + if yyr2 || yy2arr2 { + if yyn66 { + r.EncodeNil() + } else { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[21] { + if x.StorageOS == nil { + r.EncodeNil() + } else { + x.StorageOS.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } + } else { + if yyq2[21] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("storageos")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if yyn66 { + r.EncodeNil() + } else { + if x.StorageOS == nil { + r.EncodeNil() + } else { + x.StorageOS.CodecEncodeSelf(e) + } + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[20] { + if yyq2[22] { if x.AccessModes == nil { r.EncodeNil() } else { - yym64 := z.EncBinary() - _ = yym64 + yym70 := z.EncBinary() + _ = yym70 if false { } else { h.encSlicePersistentVolumeAccessMode(([]PersistentVolumeAccessMode)(x.AccessModes), e) @@ -7622,15 +7942,15 @@ func (x *PersistentVolumeSpec) CodecEncodeSelf(e *codec1978.Encoder) { r.EncodeNil() } } else { - if yyq2[20] { + if yyq2[22] { z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("accessModes")) z.EncSendContainerState(codecSelfer_containerMapValue1234) if x.AccessModes == nil { r.EncodeNil() } else { - yym65 := z.EncBinary() - _ = yym65 + yym71 := z.EncBinary() + _ = yym71 if false { } else { h.encSlicePersistentVolumeAccessMode(([]PersistentVolumeAccessMode)(x.AccessModes), e) @@ -7640,7 +7960,7 @@ func (x *PersistentVolumeSpec) CodecEncodeSelf(e *codec1978.Encoder) { } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[21] { + if yyq2[23] { if x.ClaimRef == nil { r.EncodeNil() } else { @@ -7650,7 +7970,7 @@ func (x *PersistentVolumeSpec) CodecEncodeSelf(e *codec1978.Encoder) { r.EncodeNil() } } else { - if yyq2[21] { + if yyq2[23] { z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("claimRef")) z.EncSendContainerState(codecSelfer_containerMapValue1234) @@ -7663,13 +7983,13 @@ func (x *PersistentVolumeSpec) CodecEncodeSelf(e *codec1978.Encoder) { } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[22] { + if yyq2[24] { x.PersistentVolumeReclaimPolicy.CodecEncodeSelf(e) } else { r.EncodeString(codecSelferC_UTF81234, "") } } else { - if yyq2[22] { + if yyq2[24] { z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("persistentVolumeReclaimPolicy")) z.EncSendContainerState(codecSelfer_containerMapValue1234) @@ -7678,9 +7998,9 @@ func (x *PersistentVolumeSpec) CodecEncodeSelf(e *codec1978.Encoder) { } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[23] { - yym73 := z.EncBinary() - _ = yym73 + if yyq2[25] { + yym79 := z.EncBinary() + _ = yym79 if false { } else { r.EncodeString(codecSelferC_UTF81234, string(x.StorageClassName)) @@ -7689,12 +8009,12 @@ func (x *PersistentVolumeSpec) CodecEncodeSelf(e *codec1978.Encoder) { r.EncodeString(codecSelferC_UTF81234, "") } } else { - if yyq2[23] { + if yyq2[25] { z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("storageClassName")) z.EncSendContainerState(codecSelfer_containerMapValue1234) - yym74 := z.EncBinary() - _ = yym74 + yym80 := z.EncBinary() + _ = yym80 if false { } else { r.EncodeString(codecSelferC_UTF81234, string(x.StorageClassName)) @@ -8035,16 +8355,44 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromMap(l int, d *codec1978.Decode } x.ScaleIO.CodecDecodeSelf(d) } + case "local": + if x.PersistentVolumeSource.Local == nil { + x.PersistentVolumeSource.Local = new(LocalVolumeSource) + } + if r.TryDecodeAsNil() { + if x.Local != nil { + x.Local = nil + } + } else { + if x.Local == nil { + x.Local = new(LocalVolumeSource) + } + x.Local.CodecDecodeSelf(d) + } + case "storageos": + if x.PersistentVolumeSource.StorageOS == nil { + x.PersistentVolumeSource.StorageOS = new(StorageOSPersistentVolumeSource) + } + if r.TryDecodeAsNil() { + if x.StorageOS != nil { + x.StorageOS = nil + } + } else { + if x.StorageOS == nil { + x.StorageOS = new(StorageOSPersistentVolumeSource) + } + x.StorageOS.CodecDecodeSelf(d) + } case "accessModes": if r.TryDecodeAsNil() { x.AccessModes = nil } else { - yyv24 := &x.AccessModes - yym25 := z.DecBinary() - _ = yym25 + yyv26 := &x.AccessModes + yym27 := z.DecBinary() + _ = yym27 if false { } else { - h.decSlicePersistentVolumeAccessMode((*[]PersistentVolumeAccessMode)(yyv24), d) + h.decSlicePersistentVolumeAccessMode((*[]PersistentVolumeAccessMode)(yyv26), d) } } case "claimRef": @@ -8062,19 +8410,19 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromMap(l int, d *codec1978.Decode if r.TryDecodeAsNil() { x.PersistentVolumeReclaimPolicy = "" } else { - yyv27 := &x.PersistentVolumeReclaimPolicy - yyv27.CodecDecodeSelf(d) + yyv29 := &x.PersistentVolumeReclaimPolicy + yyv29.CodecDecodeSelf(d) } case "storageClassName": if r.TryDecodeAsNil() { x.StorageClassName = "" } else { - yyv28 := &x.StorageClassName - yym29 := z.DecBinary() - _ = yym29 + yyv30 := &x.StorageClassName + yym31 := z.DecBinary() + _ = yym31 if false { } else { - *((*string)(yyv28)) = r.DecodeString() + *((*string)(yyv30)) = r.DecodeString() } } default: @@ -8088,16 +8436,16 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj30 int - var yyb30 bool - var yyhl30 bool = l >= 0 - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + var yyj32 int + var yyb32 bool + var yyhl32 bool = l >= 0 + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8105,19 +8453,19 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if r.TryDecodeAsNil() { x.Capacity = nil } else { - yyv31 := &x.Capacity - yyv31.CodecDecodeSelf(d) + yyv33 := &x.Capacity + yyv33.CodecDecodeSelf(d) } if x.PersistentVolumeSource.GCEPersistentDisk == nil { x.PersistentVolumeSource.GCEPersistentDisk = new(GCEPersistentDiskVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8135,13 +8483,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.AWSElasticBlockStore == nil { x.PersistentVolumeSource.AWSElasticBlockStore = new(AWSElasticBlockStoreVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8159,13 +8507,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.HostPath == nil { x.PersistentVolumeSource.HostPath = new(HostPathVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8183,13 +8531,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.Glusterfs == nil { x.PersistentVolumeSource.Glusterfs = new(GlusterfsVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8207,13 +8555,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.NFS == nil { x.PersistentVolumeSource.NFS = new(NFSVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8231,13 +8579,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.RBD == nil { x.PersistentVolumeSource.RBD = new(RBDVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8255,13 +8603,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.ISCSI == nil { x.PersistentVolumeSource.ISCSI = new(ISCSIVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8279,13 +8627,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.Cinder == nil { x.PersistentVolumeSource.Cinder = new(CinderVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8303,13 +8651,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.CephFS == nil { x.PersistentVolumeSource.CephFS = new(CephFSVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8327,13 +8675,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.FC == nil { x.PersistentVolumeSource.FC = new(FCVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8351,13 +8699,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.Flocker == nil { x.PersistentVolumeSource.Flocker = new(FlockerVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8375,13 +8723,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.FlexVolume == nil { x.PersistentVolumeSource.FlexVolume = new(FlexVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8399,13 +8747,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.AzureFile == nil { x.PersistentVolumeSource.AzureFile = new(AzureFileVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8423,13 +8771,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.VsphereVolume == nil { x.PersistentVolumeSource.VsphereVolume = new(VsphereVirtualDiskVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8447,13 +8795,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.Quobyte == nil { x.PersistentVolumeSource.Quobyte = new(QuobyteVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8471,13 +8819,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.AzureDisk == nil { x.PersistentVolumeSource.AzureDisk = new(AzureDiskVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8495,13 +8843,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.PhotonPersistentDisk == nil { x.PersistentVolumeSource.PhotonPersistentDisk = new(PhotonPersistentDiskVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8519,13 +8867,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.PortworxVolume == nil { x.PersistentVolumeSource.PortworxVolume = new(PortworxVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8543,13 +8891,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.ScaleIO == nil { x.PersistentVolumeSource.ScaleIO = new(ScaleIOVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8564,13 +8912,61 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco } x.ScaleIO.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l - } else { - yyb30 = r.CheckBreak() + if x.PersistentVolumeSource.Local == nil { + x.PersistentVolumeSource.Local = new(LocalVolumeSource) } - if yyb30 { + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l + } else { + yyb32 = r.CheckBreak() + } + if yyb32 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.Local != nil { + x.Local = nil + } + } else { + if x.Local == nil { + x.Local = new(LocalVolumeSource) + } + x.Local.CodecDecodeSelf(d) + } + if x.PersistentVolumeSource.StorageOS == nil { + x.PersistentVolumeSource.StorageOS = new(StorageOSPersistentVolumeSource) + } + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l + } else { + yyb32 = r.CheckBreak() + } + if yyb32 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.StorageOS != nil { + x.StorageOS = nil + } + } else { + if x.StorageOS == nil { + x.StorageOS = new(StorageOSPersistentVolumeSource) + } + x.StorageOS.CodecDecodeSelf(d) + } + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l + } else { + yyb32 = r.CheckBreak() + } + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8578,21 +8974,21 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if r.TryDecodeAsNil() { x.AccessModes = nil } else { - yyv51 := &x.AccessModes - yym52 := z.DecBinary() - _ = yym52 + yyv55 := &x.AccessModes + yym56 := z.DecBinary() + _ = yym56 if false { } else { - h.decSlicePersistentVolumeAccessMode((*[]PersistentVolumeAccessMode)(yyv51), d) + h.decSlicePersistentVolumeAccessMode((*[]PersistentVolumeAccessMode)(yyv55), d) } } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8607,13 +9003,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco } x.ClaimRef.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8621,16 +9017,16 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if r.TryDecodeAsNil() { x.PersistentVolumeReclaimPolicy = "" } else { - yyv54 := &x.PersistentVolumeReclaimPolicy - yyv54.CodecDecodeSelf(d) + yyv58 := &x.PersistentVolumeReclaimPolicy + yyv58.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8638,26 +9034,26 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if r.TryDecodeAsNil() { x.StorageClassName = "" } else { - yyv55 := &x.StorageClassName - yym56 := z.DecBinary() - _ = yym56 + yyv59 := &x.StorageClassName + yym60 := z.DecBinary() + _ = yym60 if false { } else { - *((*string)(yyv55)) = r.DecodeString() + *((*string)(yyv59)) = r.DecodeString() } } for { - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj30-1, "") + z.DecStructFieldNotFound(yyj32-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -11088,13 +11484,14 @@ func (x *EmptyDirVolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [1]bool + var yyq2 [2]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[0] = x.Medium != "" + yyq2[1] = true var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(1) + r.EncodeArrayStart(2) } else { yynn2 = 0 for _, b := range yyq2 { @@ -11120,6 +11517,39 @@ func (x *EmptyDirVolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { x.Medium.CodecEncodeSelf(e) } } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + yy7 := &x.SizeLimit + yym8 := z.EncBinary() + _ = yym8 + if false { + } else if z.HasExtensions() && z.EncExt(yy7) { + } else if !yym8 && z.IsJSONHandle() { + z.EncJSONMarshal(yy7) + } else { + z.EncFallback(yy7) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("sizeLimit")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy9 := &x.SizeLimit + yym10 := z.EncBinary() + _ = yym10 + if false { + } else if z.HasExtensions() && z.EncExt(yy9) { + } else if !yym10 && z.IsJSONHandle() { + z.EncJSONMarshal(yy9) + } else { + z.EncFallback(yy9) + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -11188,6 +11618,21 @@ func (x *EmptyDirVolumeSource) codecDecodeSelfFromMap(l int, d *codec1978.Decode yyv4 := &x.Medium yyv4.CodecDecodeSelf(d) } + case "sizeLimit": + if r.TryDecodeAsNil() { + x.SizeLimit = pkg3_resource.Quantity{} + } else { + yyv5 := &x.SizeLimit + yym6 := z.DecBinary() + _ = yym6 + if false { + } else if z.HasExtensions() && z.DecExt(yyv5) { + } else if !yym6 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv5) + } else { + z.DecFallback(yyv5, false) + } + } default: z.DecStructFieldNotFound(-1, yys3) } // end switch yys3 @@ -11199,16 +11644,16 @@ func (x *EmptyDirVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Deco var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj5 int - var yyb5 bool - var yyhl5 bool = l >= 0 - yyj5++ - if yyhl5 { - yyb5 = yyj5 > l + var yyj7 int + var yyb7 bool + var yyhl7 bool = l >= 0 + yyj7++ + if yyhl7 { + yyb7 = yyj7 > l } else { - yyb5 = r.CheckBreak() + yyb7 = r.CheckBreak() } - if yyb5 { + if yyb7 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11216,21 +11661,46 @@ func (x *EmptyDirVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Deco if r.TryDecodeAsNil() { x.Medium = "" } else { - yyv6 := &x.Medium - yyv6.CodecDecodeSelf(d) + yyv8 := &x.Medium + yyv8.CodecDecodeSelf(d) + } + yyj7++ + if yyhl7 { + yyb7 = yyj7 > l + } else { + yyb7 = r.CheckBreak() + } + if yyb7 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.SizeLimit = pkg3_resource.Quantity{} + } else { + yyv9 := &x.SizeLimit + yym10 := z.DecBinary() + _ = yym10 + if false { + } else if z.HasExtensions() && z.DecExt(yyv9) { + } else if !yym10 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv9) + } else { + z.DecFallback(yyv9, false) + } } for { - yyj5++ - if yyhl5 { - yyb5 = yyj5 > l + yyj7++ + if yyhl7 { + yyb7 = yyj7 > l } else { - yyb5 = r.CheckBreak() + yyb7 = r.CheckBreak() } - if yyb5 { + if yyb7 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj5-1, "") + z.DecStructFieldNotFound(yyj7-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -17402,13 +17872,15 @@ func (x *VsphereVirtualDiskVolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [2]bool + var yyq2 [4]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[1] = x.FSType != "" + yyq2[2] = x.StoragePolicyName != "" + yyq2[3] = x.StoragePolicyID != "" var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(2) + r.EncodeArrayStart(4) } else { yynn2 = 1 for _, b := range yyq2 { @@ -17463,6 +17935,56 @@ func (x *VsphereVirtualDiskVolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { } } } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yym10 := z.EncBinary() + _ = yym10 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.StoragePolicyName)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("storagePolicyName")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym11 := z.EncBinary() + _ = yym11 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.StoragePolicyName)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[3] { + yym13 := z.EncBinary() + _ = yym13 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.StoragePolicyID)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[3] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("storagePolicyID")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym14 := z.EncBinary() + _ = yym14 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.StoragePolicyID)) + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -17548,6 +18070,30 @@ func (x *VsphereVirtualDiskVolumeSource) codecDecodeSelfFromMap(l int, d *codec1 *((*string)(yyv6)) = r.DecodeString() } } + case "storagePolicyName": + if r.TryDecodeAsNil() { + x.StoragePolicyName = "" + } else { + yyv8 := &x.StoragePolicyName + yym9 := z.DecBinary() + _ = yym9 + if false { + } else { + *((*string)(yyv8)) = r.DecodeString() + } + } + case "storagePolicyID": + if r.TryDecodeAsNil() { + x.StoragePolicyID = "" + } else { + yyv10 := &x.StoragePolicyID + yym11 := z.DecBinary() + _ = yym11 + if false { + } else { + *((*string)(yyv10)) = r.DecodeString() + } + } default: z.DecStructFieldNotFound(-1, yys3) } // end switch yys3 @@ -17559,16 +18105,16 @@ func (x *VsphereVirtualDiskVolumeSource) codecDecodeSelfFromArray(l int, d *code var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj8 int - var yyb8 bool - var yyhl8 bool = l >= 0 - yyj8++ - if yyhl8 { - yyb8 = yyj8 > l + var yyj12 int + var yyb12 bool + var yyhl12 bool = l >= 0 + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l } else { - yyb8 = r.CheckBreak() + yyb12 = r.CheckBreak() } - if yyb8 { + if yyb12 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -17576,21 +18122,21 @@ func (x *VsphereVirtualDiskVolumeSource) codecDecodeSelfFromArray(l int, d *code if r.TryDecodeAsNil() { x.VolumePath = "" } else { - yyv9 := &x.VolumePath - yym10 := z.DecBinary() - _ = yym10 + yyv13 := &x.VolumePath + yym14 := z.DecBinary() + _ = yym14 if false { } else { - *((*string)(yyv9)) = r.DecodeString() + *((*string)(yyv13)) = r.DecodeString() } } - yyj8++ - if yyhl8 { - yyb8 = yyj8 > l + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l } else { - yyb8 = r.CheckBreak() + yyb12 = r.CheckBreak() } - if yyb8 { + if yyb12 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -17598,26 +18144,70 @@ func (x *VsphereVirtualDiskVolumeSource) codecDecodeSelfFromArray(l int, d *code if r.TryDecodeAsNil() { x.FSType = "" } else { - yyv11 := &x.FSType - yym12 := z.DecBinary() - _ = yym12 + yyv15 := &x.FSType + yym16 := z.DecBinary() + _ = yym16 if false { } else { - *((*string)(yyv11)) = r.DecodeString() + *((*string)(yyv15)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.StoragePolicyName = "" + } else { + yyv17 := &x.StoragePolicyName + yym18 := z.DecBinary() + _ = yym18 + if false { + } else { + *((*string)(yyv17)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.StoragePolicyID = "" + } else { + yyv19 := &x.StoragePolicyID + yym20 := z.DecBinary() + _ = yym20 + if false { + } else { + *((*string)(yyv19)) = r.DecodeString() } } for { - yyj8++ - if yyhl8 { - yyb8 = yyj8 > l + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l } else { - yyb8 = r.CheckBreak() + yyb12 = r.CheckBreak() } - if yyb8 { + if yyb12 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj8-1, "") + z.DecStructFieldNotFound(yyj12-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -19397,6 +19987,840 @@ func (x *ScaleIOVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decod z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } +func (x *StorageOSVolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [5]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.VolumeName != "" + yyq2[1] = x.VolumeNamespace != "" + yyq2[2] = x.FSType != "" + yyq2[3] = x.ReadOnly != false + yyq2[4] = x.SecretRef != nil + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(5) + } else { + yynn2 = 0 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.VolumeName)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("volumeName")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.VolumeName)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.VolumeNamespace)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("volumeNamespace")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.VolumeNamespace)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yym10 := z.EncBinary() + _ = yym10 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.FSType)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("fsType")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym11 := z.EncBinary() + _ = yym11 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.FSType)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[3] { + yym13 := z.EncBinary() + _ = yym13 + if false { + } else { + r.EncodeBool(bool(x.ReadOnly)) + } + } else { + r.EncodeBool(false) + } + } else { + if yyq2[3] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("readOnly")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym14 := z.EncBinary() + _ = yym14 + if false { + } else { + r.EncodeBool(bool(x.ReadOnly)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[4] { + if x.SecretRef == nil { + r.EncodeNil() + } else { + x.SecretRef.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[4] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("secretRef")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.SecretRef == nil { + r.EncodeNil() + } else { + x.SecretRef.CodecEncodeSelf(e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *StorageOSVolumeSource) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *StorageOSVolumeSource) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "volumeName": + if r.TryDecodeAsNil() { + x.VolumeName = "" + } else { + yyv4 := &x.VolumeName + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "volumeNamespace": + if r.TryDecodeAsNil() { + x.VolumeNamespace = "" + } else { + yyv6 := &x.VolumeNamespace + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + case "fsType": + if r.TryDecodeAsNil() { + x.FSType = "" + } else { + yyv8 := &x.FSType + yym9 := z.DecBinary() + _ = yym9 + if false { + } else { + *((*string)(yyv8)) = r.DecodeString() + } + } + case "readOnly": + if r.TryDecodeAsNil() { + x.ReadOnly = false + } else { + yyv10 := &x.ReadOnly + yym11 := z.DecBinary() + _ = yym11 + if false { + } else { + *((*bool)(yyv10)) = r.DecodeBool() + } + } + case "secretRef": + if r.TryDecodeAsNil() { + if x.SecretRef != nil { + x.SecretRef = nil + } + } else { + if x.SecretRef == nil { + x.SecretRef = new(LocalObjectReference) + } + x.SecretRef.CodecDecodeSelf(d) + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *StorageOSVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj13 int + var yyb13 bool + var yyhl13 bool = l >= 0 + yyj13++ + if yyhl13 { + yyb13 = yyj13 > l + } else { + yyb13 = r.CheckBreak() + } + if yyb13 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.VolumeName = "" + } else { + yyv14 := &x.VolumeName + yym15 := z.DecBinary() + _ = yym15 + if false { + } else { + *((*string)(yyv14)) = r.DecodeString() + } + } + yyj13++ + if yyhl13 { + yyb13 = yyj13 > l + } else { + yyb13 = r.CheckBreak() + } + if yyb13 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.VolumeNamespace = "" + } else { + yyv16 := &x.VolumeNamespace + yym17 := z.DecBinary() + _ = yym17 + if false { + } else { + *((*string)(yyv16)) = r.DecodeString() + } + } + yyj13++ + if yyhl13 { + yyb13 = yyj13 > l + } else { + yyb13 = r.CheckBreak() + } + if yyb13 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.FSType = "" + } else { + yyv18 := &x.FSType + yym19 := z.DecBinary() + _ = yym19 + if false { + } else { + *((*string)(yyv18)) = r.DecodeString() + } + } + yyj13++ + if yyhl13 { + yyb13 = yyj13 > l + } else { + yyb13 = r.CheckBreak() + } + if yyb13 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ReadOnly = false + } else { + yyv20 := &x.ReadOnly + yym21 := z.DecBinary() + _ = yym21 + if false { + } else { + *((*bool)(yyv20)) = r.DecodeBool() + } + } + yyj13++ + if yyhl13 { + yyb13 = yyj13 > l + } else { + yyb13 = r.CheckBreak() + } + if yyb13 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.SecretRef != nil { + x.SecretRef = nil + } + } else { + if x.SecretRef == nil { + x.SecretRef = new(LocalObjectReference) + } + x.SecretRef.CodecDecodeSelf(d) + } + for { + yyj13++ + if yyhl13 { + yyb13 = yyj13 > l + } else { + yyb13 = r.CheckBreak() + } + if yyb13 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj13-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *StorageOSPersistentVolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [5]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.VolumeName != "" + yyq2[1] = x.VolumeNamespace != "" + yyq2[2] = x.FSType != "" + yyq2[3] = x.ReadOnly != false + yyq2[4] = x.SecretRef != nil + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(5) + } else { + yynn2 = 0 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.VolumeName)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("volumeName")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.VolumeName)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.VolumeNamespace)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("volumeNamespace")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.VolumeNamespace)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yym10 := z.EncBinary() + _ = yym10 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.FSType)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("fsType")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym11 := z.EncBinary() + _ = yym11 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.FSType)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[3] { + yym13 := z.EncBinary() + _ = yym13 + if false { + } else { + r.EncodeBool(bool(x.ReadOnly)) + } + } else { + r.EncodeBool(false) + } + } else { + if yyq2[3] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("readOnly")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym14 := z.EncBinary() + _ = yym14 + if false { + } else { + r.EncodeBool(bool(x.ReadOnly)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[4] { + if x.SecretRef == nil { + r.EncodeNil() + } else { + x.SecretRef.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[4] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("secretRef")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.SecretRef == nil { + r.EncodeNil() + } else { + x.SecretRef.CodecEncodeSelf(e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *StorageOSPersistentVolumeSource) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *StorageOSPersistentVolumeSource) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "volumeName": + if r.TryDecodeAsNil() { + x.VolumeName = "" + } else { + yyv4 := &x.VolumeName + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "volumeNamespace": + if r.TryDecodeAsNil() { + x.VolumeNamespace = "" + } else { + yyv6 := &x.VolumeNamespace + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + case "fsType": + if r.TryDecodeAsNil() { + x.FSType = "" + } else { + yyv8 := &x.FSType + yym9 := z.DecBinary() + _ = yym9 + if false { + } else { + *((*string)(yyv8)) = r.DecodeString() + } + } + case "readOnly": + if r.TryDecodeAsNil() { + x.ReadOnly = false + } else { + yyv10 := &x.ReadOnly + yym11 := z.DecBinary() + _ = yym11 + if false { + } else { + *((*bool)(yyv10)) = r.DecodeBool() + } + } + case "secretRef": + if r.TryDecodeAsNil() { + if x.SecretRef != nil { + x.SecretRef = nil + } + } else { + if x.SecretRef == nil { + x.SecretRef = new(ObjectReference) + } + x.SecretRef.CodecDecodeSelf(d) + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *StorageOSPersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj13 int + var yyb13 bool + var yyhl13 bool = l >= 0 + yyj13++ + if yyhl13 { + yyb13 = yyj13 > l + } else { + yyb13 = r.CheckBreak() + } + if yyb13 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.VolumeName = "" + } else { + yyv14 := &x.VolumeName + yym15 := z.DecBinary() + _ = yym15 + if false { + } else { + *((*string)(yyv14)) = r.DecodeString() + } + } + yyj13++ + if yyhl13 { + yyb13 = yyj13 > l + } else { + yyb13 = r.CheckBreak() + } + if yyb13 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.VolumeNamespace = "" + } else { + yyv16 := &x.VolumeNamespace + yym17 := z.DecBinary() + _ = yym17 + if false { + } else { + *((*string)(yyv16)) = r.DecodeString() + } + } + yyj13++ + if yyhl13 { + yyb13 = yyj13 > l + } else { + yyb13 = r.CheckBreak() + } + if yyb13 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.FSType = "" + } else { + yyv18 := &x.FSType + yym19 := z.DecBinary() + _ = yym19 + if false { + } else { + *((*string)(yyv18)) = r.DecodeString() + } + } + yyj13++ + if yyhl13 { + yyb13 = yyj13 > l + } else { + yyb13 = r.CheckBreak() + } + if yyb13 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ReadOnly = false + } else { + yyv20 := &x.ReadOnly + yym21 := z.DecBinary() + _ = yym21 + if false { + } else { + *((*bool)(yyv20)) = r.DecodeBool() + } + } + yyj13++ + if yyhl13 { + yyb13 = yyj13 > l + } else { + yyb13 = r.CheckBreak() + } + if yyb13 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.SecretRef != nil { + x.SecretRef = nil + } + } else { + if x.SecretRef == nil { + x.SecretRef = new(ObjectReference) + } + x.SecretRef.CodecDecodeSelf(d) + } + for { + yyj13++ + if yyhl13 { + yyb13 = yyj13 > l + } else { + yyb13 = r.CheckBreak() + } + if yyb13 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj13-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + func (x *ConfigMapVolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { var h codecSelfer1234 z, r := codec1978.GenHelperEncoder(e) @@ -20983,6 +22407,180 @@ func (x *KeyToPath) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } +func (x *LocalVolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [1]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(1) + } else { + yynn2 = 1 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Path)) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("path")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Path)) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *LocalVolumeSource) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *LocalVolumeSource) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "path": + if r.TryDecodeAsNil() { + x.Path = "" + } else { + yyv4 := &x.Path + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *LocalVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj6 int + var yyb6 bool + var yyhl6 bool = l >= 0 + yyj6++ + if yyhl6 { + yyb6 = yyj6 > l + } else { + yyb6 = r.CheckBreak() + } + if yyb6 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Path = "" + } else { + yyv7 := &x.Path + yym8 := z.DecBinary() + _ = yym8 + if false { + } else { + *((*string)(yyv7)) = r.DecodeString() + } + } + for { + yyj6++ + if yyhl6 { + yyb6 = yyj6 > l + } else { + yyb6 = r.CheckBreak() + } + if yyb6 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj6-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + func (x *ContainerPort) CodecEncodeSelf(e *codec1978.Encoder) { var h codecSelfer1234 z, r := codec1978.GenHelperEncoder(e) @@ -26660,7 +28258,6 @@ func (x *Container) CodecEncodeSelf(e *codec1978.Encoder) { var yyq2 [20]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false - yyq2[1] = x.Image != "" yyq2[2] = len(x.Command) != 0 yyq2[3] = len(x.Args) != 0 yyq2[4] = x.WorkingDir != "" @@ -26683,7 +28280,7 @@ func (x *Container) CodecEncodeSelf(e *codec1978.Encoder) { if yyr2 || yy2arr2 { r.EncodeArrayStart(20) } else { - yynn2 = 1 + yynn2 = 2 for _, b := range yyq2 { if b { yynn2++ @@ -26713,27 +28310,21 @@ func (x *Container) CodecEncodeSelf(e *codec1978.Encoder) { } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[1] { - yym7 := z.EncBinary() - _ = yym7 - if false { - } else { - r.EncodeString(codecSelferC_UTF81234, string(x.Image)) - } + yym7 := z.EncBinary() + _ = yym7 + if false { } else { - r.EncodeString(codecSelferC_UTF81234, "") + r.EncodeString(codecSelferC_UTF81234, string(x.Image)) } } else { - if yyq2[1] { - z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("image")) - z.EncSendContainerState(codecSelfer_containerMapValue1234) - yym8 := z.EncBinary() - _ = yym8 - if false { - } else { - r.EncodeString(codecSelferC_UTF81234, string(x.Image)) - } + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("image")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Image)) } } if yyr2 || yy2arr2 { @@ -68266,7 +69857,7 @@ func (x codecSelfer1234) decSlicePersistentVolume(v *[]PersistentVolume, d *code yyrg1 := len(yyv1) > 0 yyv21 := yyv1 - yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 536) + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 552) if yyrt1 { if yyrl1 <= cap(yyv1) { yyv1 = yyv1[:yyrl1] @@ -70045,7 +71636,7 @@ func (x codecSelfer1234) decSliceVolume(v *[]Volume, d *codec1978.Decoder) { yyrg1 := len(yyv1) > 0 yyv21 := yyv1 - yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 224) + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 232) if yyrt1 { if yyrl1 <= cap(yyv1) { yyv1 = yyv1[:yyrl1] diff --git a/vendor/k8s.io/client-go/pkg/api/v1/types.go b/vendor/k8s.io/client-go/pkg/api/v1/types.go index 0e9dfed4..ba772329 100644 --- a/vendor/k8s.io/client-go/pkg/api/v1/types.go +++ b/vendor/k8s.io/client-go/pkg/api/v1/types.go @@ -91,7 +91,7 @@ type ObjectMeta struct { // should retry (optionally after the time indicated in the Retry-After header). // // Applied only if Name is not specified. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#idempotency + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency // +optional GenerateName string `json:"generateName,omitempty" protobuf:"bytes,2,opt,name=generateName"` @@ -131,7 +131,7 @@ type ObjectMeta struct { // Populated by the system. // Read-only. // Value must be treated as opaque by clients and . - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#concurrency-control-and-consistency + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency // +optional ResourceVersion string `json:"resourceVersion,omitempty" protobuf:"bytes,6,opt,name=resourceVersion"` @@ -147,7 +147,7 @@ type ObjectMeta struct { // Populated by the system. // Read-only. // Null for lists. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional CreationTimestamp metav1.Time `json:"creationTimestamp,omitempty" protobuf:"bytes,8,opt,name=creationTimestamp"` @@ -167,7 +167,7 @@ type ObjectMeta struct { // // Populated by the system when a graceful deletion is requested. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional DeletionTimestamp *metav1.Time `json:"deletionTimestamp,omitempty" protobuf:"bytes,9,opt,name=deletionTimestamp"` @@ -348,6 +348,9 @@ type VolumeSource struct { // ScaleIO represents a ScaleIO persistent volume attached and mounted on Kubernetes nodes. // +optional ScaleIO *ScaleIOVolumeSource `json:"scaleIO,omitempty" protobuf:"bytes,25,opt,name=scaleIO"` + // StorageOS represents a StorageOS volume attached and mounted on Kubernetes nodes. + // +optional + StorageOS *StorageOSVolumeSource `json:"storageos,omitempty" protobuf:"bytes,27,opt,name=storageos"` } // PersistentVolumeClaimVolumeSource references the user's PVC in the same namespace. @@ -439,6 +442,13 @@ type PersistentVolumeSource struct { // ScaleIO represents a ScaleIO persistent volume attached and mounted on Kubernetes nodes. // +optional ScaleIO *ScaleIOVolumeSource `json:"scaleIO,omitempty" protobuf:"bytes,19,opt,name=scaleIO"` + // Local represents directly-attached storage with node affinity + // +optional + Local *LocalVolumeSource `json:"local,omitempty" protobuf:"bytes,20,opt,name=local"` + // StorageOS represents a StorageOS volume that is attached to the kubelet's host machine and mounted into the pod + // More info: https://releases.k8s.io/HEAD/examples/volumes/storageos/README.md + // +optional + StorageOS *StorageOSPersistentVolumeSource `json:"storageos,omitempty" protobuf:"bytes,21,opt,name=storageos"` } const ( @@ -448,6 +458,10 @@ const ( // MountOptionAnnotation defines mount option annotation used in PVs MountOptionAnnotation = "volume.beta.kubernetes.io/mount-options" + + // AlphaStorageNodeAffinityAnnotation defines node affinity policies for a PersistentVolume. + // Value is a string of the json representation of type NodeAffinity + AlphaStorageNodeAffinityAnnotation = "volume.alpha.kubernetes.io/node-affinity" ) // +genclient=true @@ -459,7 +473,7 @@ const ( type PersistentVolume struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -541,7 +555,7 @@ type PersistentVolumeStatus struct { type PersistentVolumeList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // List of persistent volumes. @@ -555,7 +569,7 @@ type PersistentVolumeList struct { type PersistentVolumeClaim struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -575,7 +589,7 @@ type PersistentVolumeClaim struct { type PersistentVolumeClaimList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // A list of persistent volume claims. @@ -679,6 +693,14 @@ type EmptyDirVolumeSource struct { // More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir // +optional Medium StorageMedium `json:"medium,omitempty" protobuf:"bytes,1,opt,name=medium,casttype=StorageMedium"` + // Total amount of local storage required for this EmptyDir volume. + // The size limit is also applicable for memory medium. + // The maximum usage on memory medium EmptyDir would be the minimum value between + // the SizeLimit specified here and the sum of memory limits of all containers in a pod. + // The default is nil which means that the limit is undefined. + // More info: http://kubernetes.io/docs/user-guide/volumes#emptydir + // +optional + SizeLimit resource.Quantity `json:"sizeLimit,omitempty" protobuf:"bytes,2,opt,name=sizeLimit"` } // Represents a Glusterfs mount that lasts the lifetime of a pod. @@ -1111,6 +1133,12 @@ type VsphereVirtualDiskVolumeSource struct { // Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. // +optional FSType string `json:"fsType,omitempty" protobuf:"bytes,2,opt,name=fsType"` + // Storage Policy Based Management (SPBM) profile name. + // +optional + StoragePolicyName string `json:"storagePolicyName,omitempty" protobuf:"bytes,3,opt,name=storagePolicyName"` + // Storage Policy Based Management (SPBM) profile ID associated with the StoragePolicyName. + // +optional + StoragePolicyID string `json:"storagePolicyID,omitempty" protobuf:"bytes,4,opt,name=storagePolicyID"` } // Represents a Photon Controller persistent disk resource. @@ -1207,6 +1235,62 @@ type ScaleIOVolumeSource struct { ReadOnly bool `json:"readOnly,omitempty" protobuf:"varint,10,opt,name=readOnly"` } +// Represents a StorageOS persistent volume resource. +type StorageOSVolumeSource struct { + // VolumeName is the human-readable name of the StorageOS volume. Volume + // names are only unique within a namespace. + VolumeName string `json:"volumeName,omitempty" protobuf:"bytes,1,opt,name=volumeName"` + // VolumeNamespace specifies the scope of the volume within StorageOS. If no + // namespace is specified then the Pod's namespace will be used. This allows the + // Kubernetes name scoping to be mirrored within StorageOS for tighter integration. + // Set VolumeName to any name to override the default behaviour. + // Set to "default" if you are not using namespaces within StorageOS. + // Namespaces that do not pre-exist within StorageOS will be created. + // +optional + VolumeNamespace string `json:"volumeNamespace,omitempty" protobuf:"bytes,2,opt,name=volumeNamespace"` + // Filesystem type to mount. + // Must be a filesystem type supported by the host operating system. + // Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. + // +optional + FSType string `json:"fsType,omitempty" protobuf:"bytes,3,opt,name=fsType"` + // Defaults to false (read/write). ReadOnly here will force + // the ReadOnly setting in VolumeMounts. + // +optional + ReadOnly bool `json:"readOnly,omitempty" protobuf:"varint,4,opt,name=readOnly"` + // SecretRef specifies the secret to use for obtaining the StorageOS API + // credentials. If not specified, default values will be attempted. + // +optional + SecretRef *LocalObjectReference `json:"secretRef,omitempty" protobuf:"bytes,5,opt,name=secretRef"` +} + +// Represents a StorageOS persistent volume resource. +type StorageOSPersistentVolumeSource struct { + // VolumeName is the human-readable name of the StorageOS volume. Volume + // names are only unique within a namespace. + VolumeName string `json:"volumeName,omitempty" protobuf:"bytes,1,opt,name=volumeName"` + // VolumeNamespace specifies the scope of the volume within StorageOS. If no + // namespace is specified then the Pod's namespace will be used. This allows the + // Kubernetes name scoping to be mirrored within StorageOS for tighter integration. + // Set VolumeName to any name to override the default behaviour. + // Set to "default" if you are not using namespaces within StorageOS. + // Namespaces that do not pre-exist within StorageOS will be created. + // +optional + VolumeNamespace string `json:"volumeNamespace,omitempty" protobuf:"bytes,2,opt,name=volumeNamespace"` + // Filesystem type to mount. + // Must be a filesystem type supported by the host operating system. + // Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. + // +optional + FSType string `json:"fsType,omitempty" protobuf:"bytes,3,opt,name=fsType"` + // Defaults to false (read/write). ReadOnly here will force + // the ReadOnly setting in VolumeMounts. + // +optional + ReadOnly bool `json:"readOnly,omitempty" protobuf:"varint,4,opt,name=readOnly"` + // SecretRef specifies the secret to use for obtaining the StorageOS API + // credentials. If not specified, default values will be attempted. + // +optional + SecretRef *ObjectReference `json:"secretRef,omitempty" protobuf:"bytes,5,opt,name=secretRef"` +} + // Adapts a ConfigMap into a volume. // // The contents of the target ConfigMap's Data field will be presented in a @@ -1310,6 +1394,14 @@ type KeyToPath struct { Mode *int32 `json:"mode,omitempty" protobuf:"varint,3,opt,name=mode"` } +// Local represents directly-attached storage with node affinity +type LocalVolumeSource struct { + // The full path to the volume on the node + // For alpha, this path must be a directory + // Once block as a source is supported, then this path can point to a block device + Path string `json:"path" protobuf:"bytes,1,opt,name=path"` +} + // ContainerPort represents a network port in a single container. type ContainerPort struct { // If specified, this must be an IANA_SVC_NAME and unique within the pod. Each @@ -1629,8 +1721,7 @@ type Container struct { Name string `json:"name" protobuf:"bytes,1,opt,name=name"` // Docker image name. // More info: https://kubernetes.io/docs/concepts/containers/images - // +optional - Image string `json:"image,omitempty" protobuf:"bytes,2,opt,name=image"` + Image string `json:"image" protobuf:"bytes,2,opt,name=image"` // Entrypoint array. Not executed within a shell. // The docker image's ENTRYPOINT is used if this is not provided. // Variable references $(VAR_NAME) are expanded using the container's environment. If a variable @@ -1736,7 +1827,7 @@ type Container struct { ImagePullPolicy PullPolicy `json:"imagePullPolicy,omitempty" protobuf:"bytes,14,opt,name=imagePullPolicy,casttype=PullPolicy"` // Security options the pod should run with. // More info: https://kubernetes.io/docs/concepts/policy/security-context/ - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/security_context.md + // More info: https://git.k8s.io/community/contributors/design-proposals/security_context.md // +optional SecurityContext *SecurityContext `json:"securityContext,omitempty" protobuf:"bytes,15,opt,name=securityContext"` @@ -2436,7 +2527,7 @@ type PodSpec struct { type HostAlias struct { // IP address of the host file entry. IP string `json:"ip,omitempty" protobuf:"bytes,1,opt,name=ip"` - // Hostnames for the the above IP address. + // Hostnames for the above IP address. Hostnames []string `json:"hostnames,omitempty" protobuf:"bytes,2,rep,name=hostnames"` } @@ -2552,14 +2643,14 @@ type PodStatus struct { type PodStatusResult struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Most recently observed status of the pod. // This data may not be up to date. // Populated by the system. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status PodStatus `json:"status,omitempty" protobuf:"bytes,2,opt,name=status"` } @@ -2571,12 +2662,12 @@ type PodStatusResult struct { type Pod struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Specification of the desired behavior of the pod. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec PodSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` @@ -2584,7 +2675,7 @@ type Pod struct { // This data may not be up to date. // Populated by the system. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status PodStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } @@ -2593,24 +2684,24 @@ type Pod struct { type PodList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // List of pods. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md Items []Pod `json:"items" protobuf:"bytes,2,rep,name=items"` } // PodTemplateSpec describes the data a pod should have when created from a template type PodTemplateSpec struct { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Specification of the desired behavior of the pod. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec PodSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` } @@ -2621,12 +2712,12 @@ type PodTemplateSpec struct { type PodTemplate struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Template defines the pods that will be created from this pod template. - // https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Template PodTemplateSpec `json:"template,omitempty" protobuf:"bytes,2,opt,name=template"` } @@ -2635,7 +2726,7 @@ type PodTemplate struct { type PodTemplateList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -2744,12 +2835,12 @@ type ReplicationController struct { // If the Labels of a ReplicationController are empty, they are defaulted to // be the same as the Pod(s) that the replication controller manages. - // Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Spec defines the specification of the desired behavior of the replication controller. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec ReplicationControllerSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` @@ -2757,7 +2848,7 @@ type ReplicationController struct { // This data may be out of date by some window of time. // Populated by the system. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status ReplicationControllerStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } @@ -2766,7 +2857,7 @@ type ReplicationController struct { type ReplicationControllerList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -2813,10 +2904,10 @@ const ( type ServiceExternalTrafficPolicyType string const ( - // ServiceExternalTrafficPolicyTypeLocal specifies local endpoints behavior. + // ServiceExternalTrafficPolicyTypeLocal specifies node-local endpoints behavior. ServiceExternalTrafficPolicyTypeLocal ServiceExternalTrafficPolicyType = "Local" - // ServiceExternalTrafficPolicyTypeGlobal specifies global (legacy) behavior. - ServiceExternalTrafficPolicyTypeGlobal ServiceExternalTrafficPolicyType = "Global" + // ServiceExternalTrafficPolicyTypeCluster specifies node-global (legacy) behavior. + ServiceExternalTrafficPolicyTypeCluster ServiceExternalTrafficPolicyType = "Cluster" ) // ServiceStatus represents the current status of a service. @@ -2932,9 +3023,12 @@ type ServiceSpec struct { // +optional ExternalName string `json:"externalName,omitempty" protobuf:"bytes,10,opt,name=externalName"` - // externalTrafficPolicy denotes if this Service desires to route external traffic to - // local endpoints only. This preserves Source IP and avoids a second hop for - // LoadBalancer and Nodeport type services. + // externalTrafficPolicy denotes if this Service desires to route external + // traffic to node-local or cluster-wide endpoints. "Local" preserves the + // client source IP and avoids a second hop for LoadBalancer and Nodeport + // type services, but risks potentially imbalanced traffic spreading. + // "Cluster" obscures the client source IP and may cause a second hop to + // another node, but should have good overall load-spreading. // +optional ExternalTrafficPolicy ServiceExternalTrafficPolicyType `json:"externalTrafficPolicy,omitempty" protobuf:"bytes,11,opt,name=externalTrafficPolicy"` @@ -2992,19 +3086,19 @@ type ServicePort struct { type Service struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Spec defines the behavior of a service. - // https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec ServiceSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` // Most recently observed status of the service. // Populated by the system. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status ServiceStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } @@ -3019,7 +3113,7 @@ const ( type ServiceList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -3036,7 +3130,7 @@ type ServiceList struct { type ServiceAccount struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -3064,7 +3158,7 @@ type ServiceAccount struct { type ServiceAccountList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -3090,7 +3184,7 @@ type ServiceAccountList struct { type Endpoints struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -3171,7 +3265,7 @@ type EndpointPort struct { type EndpointsList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -3222,11 +3316,11 @@ type NodeDaemonEndpoints struct { // NodeSystemInfo is a set of ids/uuids to uniquely identify the node. type NodeSystemInfo struct { // MachineID reported by the node. For unique machine identification - // in the cluster this field is prefered. Learn more from man(5) + // in the cluster this field is preferred. Learn more from man(5) // machine-id: http://man7.org/linux/man-pages/man5/machine-id.5.html MachineID string `json:"machineID" protobuf:"bytes,1,opt,name=machineID"` // SystemUUID reported by the node. For unique machine identification - // MachineID is prefered. This field is specific to Red Hat hosts + // MachineID is preferred. This field is specific to Red Hat hosts // https://access.redhat.com/documentation/en-US/Red_Hat_Subscription_Management/1/html/RHSM/getting-system-uuid.html SystemUUID string `json:"systemUUID" protobuf:"bytes,2,opt,name=systemUUID"` // Boot ID reported by the node. @@ -3434,6 +3528,12 @@ const ( ResourceMemory ResourceName = "memory" // Volume size, in bytes (e,g. 5Gi = 5GiB = 5 * 1024 * 1024 * 1024) ResourceStorage ResourceName = "storage" + // Local Storage for container overlay filesystem, in bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024) + // The resource name for ResourceStorageOverlay is alpha and it can change across releases. + ResourceStorageOverlay ResourceName = "storage.kubernetes.io/overlay" + // Local Storage for scratch space, in bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024) + // The resource name for ResourceStorageScratch is alpha and it can change across releases. + ResourceStorageScratch ResourceName = "storage.kubernetes.io/scratch" // NVIDIA GPU, in devices. Alpha, might change: although fractional and allowing values >1, only one whole device per node is assigned. ResourceNvidiaGPU ResourceName = "alpha.kubernetes.io/nvidia-gpu" // Number of Pods that may be running on this Node: see ResourcePods @@ -3455,19 +3555,19 @@ type ResourceList map[ResourceName]resource.Quantity type Node struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Spec defines the behavior of a node. - // https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec NodeSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` // Most recently observed status of the node. // Populated by the system. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status NodeStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } @@ -3476,7 +3576,7 @@ type Node struct { type NodeList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -3496,7 +3596,7 @@ const ( // NamespaceSpec describes the attributes on a Namespace. type NamespaceSpec struct { // Finalizers is an opaque list of values that must be empty to permanently remove object from storage. - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/namespaces.md#finalizers + // More info: https://git.k8s.io/community/contributors/design-proposals/namespaces.md#finalizers // +optional Finalizers []FinalizerName `json:"finalizers,omitempty" protobuf:"bytes,1,rep,name=finalizers,casttype=FinalizerName"` } @@ -3504,7 +3604,7 @@ type NamespaceSpec struct { // NamespaceStatus is information about the current status of a Namespace. type NamespaceStatus struct { // Phase is the current lifecycle phase of the namespace. - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/namespaces.md#phases + // More info: https://git.k8s.io/community/contributors/design-proposals/namespaces.md#phases // +optional Phase NamespacePhase `json:"phase,omitempty" protobuf:"bytes,1,opt,name=phase,casttype=NamespacePhase"` } @@ -3527,17 +3627,17 @@ const ( type Namespace struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Spec defines the behavior of the Namespace. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec NamespaceSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` // Status describes the current status of a Namespace. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status NamespaceStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } @@ -3546,7 +3646,7 @@ type Namespace struct { type NamespaceList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -3555,12 +3655,12 @@ type NamespaceList struct { Items []Namespace `json:"items" protobuf:"bytes,2,rep,name=items"` } -// Binding ties one object to another. -// For example, a pod is bound to a node by a scheduler. +// Binding ties one object to another; for example, a pod is bound to a node by a scheduler. +// Deprecated in 1.7, please use the bindings subresource of pods instead. type Binding struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -3817,7 +3917,7 @@ type ServiceProxyOptions struct { // ObjectReference contains enough information to let you inspect or modify the referred object. type ObjectReference struct { // Kind of the referent. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional Kind string `json:"kind,omitempty" protobuf:"bytes,1,opt,name=kind"` // Namespace of the referent. @@ -3836,7 +3936,7 @@ type ObjectReference struct { // +optional APIVersion string `json:"apiVersion,omitempty" protobuf:"bytes,5,opt,name=apiVersion"` // Specific resourceVersion to which this reference is made, if any. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#concurrency-control-and-consistency + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency // +optional ResourceVersion string `json:"resourceVersion,omitempty" protobuf:"bytes,6,opt,name=resourceVersion"` @@ -3895,7 +3995,7 @@ const ( type Event struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata metav1.ObjectMeta `json:"metadata" protobuf:"bytes,1,opt,name=metadata"` // The object that this event is about. @@ -3937,7 +4037,7 @@ type Event struct { type EventList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -3949,7 +4049,7 @@ type EventList struct { type List struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -4003,12 +4103,12 @@ type LimitRangeSpec struct { type LimitRange struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Spec defines the limits enforced. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec LimitRangeSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` } @@ -4017,12 +4117,12 @@ type LimitRange struct { type LimitRangeList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Items is a list of LimitRange objects. - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/admission_control_limit_range.md + // More info: https://git.k8s.io/community/contributors/design-proposals/admission_control_limit_range.md Items []LimitRange `json:"items" protobuf:"bytes,2,rep,name=items"` } @@ -4075,7 +4175,7 @@ const ( // ResourceQuotaSpec defines the desired hard limits to enforce for Quota. type ResourceQuotaSpec struct { // Hard is the set of desired hard limits for each named resource. - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/admission_control_resource_quota.md + // More info: https://git.k8s.io/community/contributors/design-proposals/admission_control_resource_quota.md // +optional Hard ResourceList `json:"hard,omitempty" protobuf:"bytes,1,rep,name=hard,casttype=ResourceList,castkey=ResourceName"` // A collection of filters that must match each object tracked by a quota. @@ -4087,7 +4187,7 @@ type ResourceQuotaSpec struct { // ResourceQuotaStatus defines the enforced hard limits and observed use. type ResourceQuotaStatus struct { // Hard is the set of enforced hard limits for each named resource. - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/admission_control_resource_quota.md + // More info: https://git.k8s.io/community/contributors/design-proposals/admission_control_resource_quota.md // +optional Hard ResourceList `json:"hard,omitempty" protobuf:"bytes,1,rep,name=hard,casttype=ResourceList,castkey=ResourceName"` // Used is the current observed total usage of the resource in the namespace. @@ -4101,17 +4201,17 @@ type ResourceQuotaStatus struct { type ResourceQuota struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Spec defines the desired quota. - // https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec ResourceQuotaSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` // Status defines the actual enforced quota and its current usage. - // https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status ResourceQuotaStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } @@ -4120,12 +4220,12 @@ type ResourceQuota struct { type ResourceQuotaList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Items is a list of ResourceQuota objects. - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/admission_control_resource_quota.md + // More info: https://git.k8s.io/community/contributors/design-proposals/admission_control_resource_quota.md Items []ResourceQuota `json:"items" protobuf:"bytes,2,rep,name=items"` } @@ -4136,7 +4236,7 @@ type ResourceQuotaList struct { type Secret struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -4247,7 +4347,7 @@ const ( type SecretList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -4262,7 +4362,7 @@ type SecretList struct { type ConfigMap struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -4276,7 +4376,7 @@ type ConfigMap struct { type ConfigMapList struct { metav1.TypeMeta `json:",inline"` - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -4317,7 +4417,7 @@ type ComponentCondition struct { type ComponentStatus struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -4332,7 +4432,7 @@ type ComponentStatus struct { type ComponentStatusList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -4446,7 +4546,7 @@ type SELinuxOptions struct { type RangeAllocation struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -4465,10 +4565,6 @@ const ( // When the --hard-pod-affinity-weight scheduler flag is not specified, // DefaultHardPodAffinityWeight defines the weight of the implicit PreferredDuringScheduling affinity rule. DefaultHardPodAffinitySymmetricWeight int = 1 - - // When the --failure-domains scheduler flag is not specified, - // DefaultFailureDomains defines the set of label keys used when TopologyKey is empty in PreferredDuringScheduling anti-affinity. - DefaultFailureDomains string = metav1.LabelHostname + "," + metav1.LabelZoneFailureDomain + "," + metav1.LabelZoneRegion ) // Sysctl defines a kernel parameter to be set diff --git a/vendor/k8s.io/client-go/pkg/api/v1/types_swagger_doc_generated.go b/vendor/k8s.io/client-go/pkg/api/v1/types_swagger_doc_generated.go index 16cb5d51..73bcc619 100644 --- a/vendor/k8s.io/client-go/pkg/api/v1/types_swagger_doc_generated.go +++ b/vendor/k8s.io/client-go/pkg/api/v1/types_swagger_doc_generated.go @@ -95,8 +95,8 @@ func (AzureFileVolumeSource) SwaggerDoc() map[string]string { } var map_Binding = map[string]string{ - "": "Binding ties one object to another. For example, a pod is bound to a node by a scheduler.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "": "Binding ties one object to another; for example, a pod is bound to a node by a scheduler. Deprecated in 1.7, please use the bindings subresource of pods instead.", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "target": "The target object that you want to bind to the standard object.", } @@ -153,7 +153,7 @@ func (ComponentCondition) SwaggerDoc() map[string]string { var map_ComponentStatus = map[string]string{ "": "ComponentStatus (and ComponentStatusList) holds the cluster validation info.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "conditions": "List of component conditions observed", } @@ -163,7 +163,7 @@ func (ComponentStatus) SwaggerDoc() map[string]string { var map_ComponentStatusList = map[string]string{ "": "Status of all the conditions for the component as a list of ComponentStatus objects.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", "items": "List of ComponentStatus objects.", } @@ -173,7 +173,7 @@ func (ComponentStatusList) SwaggerDoc() map[string]string { var map_ConfigMap = map[string]string{ "": "ConfigMap holds configuration data for pods to consume.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "data": "Data contains the configuration data. Each key must consist of alphanumeric characters, '-', '_' or '.'.", } @@ -202,7 +202,7 @@ func (ConfigMapKeySelector) SwaggerDoc() map[string]string { var map_ConfigMapList = map[string]string{ "": "ConfigMapList is a resource containing a list of ConfigMap objects.", - "metadata": "More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "items": "Items is the list of ConfigMaps.", } @@ -249,7 +249,7 @@ var map_Container = map[string]string{ "terminationMessagePath": "Optional: Path at which the file to which the container's termination message will be written is mounted into the container's filesystem. Message written is intended to be brief final status, such as an assertion failure message. Will be truncated by the node if greater than 4096 bytes. The total message length across all containers will be limited to 12kb. Defaults to /dev/termination-log. Cannot be updated.", "terminationMessagePolicy": "Indicate how the termination message should be populated. File will use the contents of terminationMessagePath to populate the container status message on both success and failure. FallbackToLogsOnError will use the last chunk of container log output if the termination message file is empty and the container exited with an error. The log output is limited to 2048 bytes or 80 lines, whichever is smaller. Defaults to File. Cannot be updated.", "imagePullPolicy": "Image pull policy. One of Always, Never, IfNotPresent. Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images", - "securityContext": "Security options the pod should run with. More info: https://kubernetes.io/docs/concepts/policy/security-context/ More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/security_context.md", + "securityContext": "Security options the pod should run with. More info: https://kubernetes.io/docs/concepts/policy/security-context/ More info: https://git.k8s.io/community/contributors/design-proposals/security_context.md", "stdin": "Whether this container should allocate a buffer for stdin in the container runtime. If this is not set, reads from stdin in the container will always result in EOF. Default is false.", "stdinOnce": "Whether the container runtime should close the stdin channel after it has been opened by a single attach. When stdin is true the stdin stream will remain open across multiple attach sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the first client attaches to stdin, and then remains open and accepts data until the client disconnects, at which time stdin is closed and remains closed until the container is restarted. If this flag is false, a container processes that reads from stdin will never receive an EOF. Default is false", "tty": "Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. Default is false.", @@ -396,8 +396,9 @@ func (DownwardAPIVolumeSource) SwaggerDoc() map[string]string { } var map_EmptyDirVolumeSource = map[string]string{ - "": "Represents an empty directory for a pod. Empty directory volumes support ownership management and SELinux relabeling.", - "medium": "What type of storage medium should back this directory. The default is \"\" which means to use the node's default medium. Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir", + "": "Represents an empty directory for a pod. Empty directory volumes support ownership management and SELinux relabeling.", + "medium": "What type of storage medium should back this directory. The default is \"\" which means to use the node's default medium. Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir", + "sizeLimit": "Total amount of local storage required for this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. The default is nil which means that the limit is undefined. More info: http://kubernetes.io/docs/user-guide/volumes#emptydir", } func (EmptyDirVolumeSource) SwaggerDoc() map[string]string { @@ -440,7 +441,7 @@ func (EndpointSubset) SwaggerDoc() map[string]string { var map_Endpoints = map[string]string{ "": "Endpoints is a collection of endpoints that implement the actual service. Example:\n Name: \"mysvc\",\n Subsets: [\n {\n Addresses: [{\"ip\": \"10.10.1.1\"}, {\"ip\": \"10.10.2.2\"}],\n Ports: [{\"name\": \"a\", \"port\": 8675}, {\"name\": \"b\", \"port\": 309}]\n },\n {\n Addresses: [{\"ip\": \"10.10.3.3\"}],\n Ports: [{\"name\": \"a\", \"port\": 93}, {\"name\": \"b\", \"port\": 76}]\n },\n ]", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "subsets": "The set of all endpoints is the union of all subsets. Addresses are placed into subsets according to the IPs they share. A single address with multiple ports, some of which are ready and some of which are not (because they come from different containers) will result in the address being displayed in different subsets for the different ports. No address will appear in both Addresses and NotReadyAddresses in the same subset. Sets of addresses and ports that comprise a service.", } @@ -450,7 +451,7 @@ func (Endpoints) SwaggerDoc() map[string]string { var map_EndpointsList = map[string]string{ "": "EndpointsList is a list of endpoints.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", "items": "List of endpoints.", } @@ -494,7 +495,7 @@ func (EnvVarSource) SwaggerDoc() map[string]string { var map_Event = map[string]string{ "": "Event is a report of an event somewhere in the cluster.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "involvedObject": "The object that this event is about.", "reason": "This should be a short, machine understandable string that gives the reason for the transition into the object's current status.", "message": "A human-readable description of the status of this operation.", @@ -511,7 +512,7 @@ func (Event) SwaggerDoc() map[string]string { var map_EventList = map[string]string{ "": "EventList is a list of events.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", "items": "List of events", } @@ -644,7 +645,7 @@ func (Handler) SwaggerDoc() map[string]string { var map_HostAlias = map[string]string{ "": "HostAlias holds the mapping between IP and hostnames that will be injected as an entry in the pod's hosts file.", "ip": "IP address of the host file entry.", - "hostnames": "Hostnames for the the above IP address.", + "hostnames": "Hostnames for the above IP address.", } func (HostAlias) SwaggerDoc() map[string]string { @@ -701,8 +702,8 @@ func (Lifecycle) SwaggerDoc() map[string]string { var map_LimitRange = map[string]string{ "": "LimitRange sets resource usage limits for each kind of resource in a Namespace.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "spec": "Spec defines the limits enforced. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "Spec defines the limits enforced. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (LimitRange) SwaggerDoc() map[string]string { @@ -725,8 +726,8 @@ func (LimitRangeItem) SwaggerDoc() map[string]string { var map_LimitRangeList = map[string]string{ "": "LimitRangeList is a list of LimitRange items.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", - "items": "Items is a list of LimitRange objects. More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/admission_control_limit_range.md", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", + "items": "Items is a list of LimitRange objects. More info: https://git.k8s.io/community/contributors/design-proposals/admission_control_limit_range.md", } func (LimitRangeList) SwaggerDoc() map[string]string { @@ -744,7 +745,7 @@ func (LimitRangeSpec) SwaggerDoc() map[string]string { var map_List = map[string]string{ "": "List holds a list of objects, which may not be known by the server.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", "items": "List of objects", } @@ -794,6 +795,15 @@ func (LocalObjectReference) SwaggerDoc() map[string]string { return map_LocalObjectReference } +var map_LocalVolumeSource = map[string]string{ + "": "Local represents directly-attached storage with node affinity", + "path": "The full path to the volume on the node For alpha, this path must be a directory Once block as a source is supported, then this path can point to a block device", +} + +func (LocalVolumeSource) SwaggerDoc() map[string]string { + return map_LocalVolumeSource +} + var map_NFSVolumeSource = map[string]string{ "": "Represents an NFS mount that lasts the lifetime of a pod. NFS volumes do not support ownership management or SELinux relabeling.", "server": "Server is the hostname or IP address of the NFS server. More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs", @@ -807,9 +817,9 @@ func (NFSVolumeSource) SwaggerDoc() map[string]string { var map_Namespace = map[string]string{ "": "Namespace provides a scope for Names. Use of multiple namespaces is optional.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "spec": "Spec defines the behavior of the Namespace. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", - "status": "Status describes the current status of a Namespace. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "Spec defines the behavior of the Namespace. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", + "status": "Status describes the current status of a Namespace. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (Namespace) SwaggerDoc() map[string]string { @@ -818,7 +828,7 @@ func (Namespace) SwaggerDoc() map[string]string { var map_NamespaceList = map[string]string{ "": "NamespaceList is a list of Namespaces.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", "items": "Items is the list of Namespace objects in the list. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", } @@ -828,7 +838,7 @@ func (NamespaceList) SwaggerDoc() map[string]string { var map_NamespaceSpec = map[string]string{ "": "NamespaceSpec describes the attributes on a Namespace.", - "finalizers": "Finalizers is an opaque list of values that must be empty to permanently remove object from storage. More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/namespaces.md#finalizers", + "finalizers": "Finalizers is an opaque list of values that must be empty to permanently remove object from storage. More info: https://git.k8s.io/community/contributors/design-proposals/namespaces.md#finalizers", } func (NamespaceSpec) SwaggerDoc() map[string]string { @@ -837,7 +847,7 @@ func (NamespaceSpec) SwaggerDoc() map[string]string { var map_NamespaceStatus = map[string]string{ "": "NamespaceStatus is information about the current status of a Namespace.", - "phase": "Phase is the current lifecycle phase of the namespace. More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/namespaces.md#phases", + "phase": "Phase is the current lifecycle phase of the namespace. More info: https://git.k8s.io/community/contributors/design-proposals/namespaces.md#phases", } func (NamespaceStatus) SwaggerDoc() map[string]string { @@ -846,9 +856,9 @@ func (NamespaceStatus) SwaggerDoc() map[string]string { var map_Node = map[string]string{ "": "Node is a worker node in Kubernetes. Each node will have a unique identifier in the cache (i.e. in etcd).", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "spec": "Spec defines the behavior of a node. https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", - "status": "Most recently observed status of the node. Populated by the system. Read-only. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "Spec defines the behavior of a node. https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", + "status": "Most recently observed status of the node. Populated by the system. Read-only. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (Node) SwaggerDoc() map[string]string { @@ -900,7 +910,7 @@ func (NodeDaemonEndpoints) SwaggerDoc() map[string]string { var map_NodeList = map[string]string{ "": "NodeList is the whole list of all Nodes which have been registered with master.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", "items": "List of nodes", } @@ -988,8 +998,8 @@ func (NodeStatus) SwaggerDoc() map[string]string { var map_NodeSystemInfo = map[string]string{ "": "NodeSystemInfo is a set of ids/uuids to uniquely identify the node.", - "machineID": "MachineID reported by the node. For unique machine identification in the cluster this field is prefered. Learn more from man(5) machine-id: http://man7.org/linux/man-pages/man5/machine-id.5.html", - "systemUUID": "SystemUUID reported by the node. For unique machine identification MachineID is prefered. This field is specific to Red Hat hosts https://access.redhat.com/documentation/en-US/Red_Hat_Subscription_Management/1/html/RHSM/getting-system-uuid.html", + "machineID": "MachineID reported by the node. For unique machine identification in the cluster this field is preferred. Learn more from man(5) machine-id: http://man7.org/linux/man-pages/man5/machine-id.5.html", + "systemUUID": "SystemUUID reported by the node. For unique machine identification MachineID is preferred. This field is specific to Red Hat hosts https://access.redhat.com/documentation/en-US/Red_Hat_Subscription_Management/1/html/RHSM/getting-system-uuid.html", "bootID": "Boot ID reported by the node.", "kernelVersion": "Kernel Version reported by the node from 'uname -r' (e.g. 3.16.0-0.bpo.4-amd64).", "osImage": "OS Image reported by the node from /etc/os-release (e.g. Debian GNU/Linux 7 (wheezy)).", @@ -1017,14 +1027,14 @@ func (ObjectFieldSelector) SwaggerDoc() map[string]string { var map_ObjectMeta = map[string]string{ "": "ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. DEPRECATED: Use k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta instead - this type will be removed soon.", "name": "Name must be unique within a namespace. Is required when creating resources, although some resources may allow a client to request the generation of an appropriate name automatically. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", - "generateName": "GenerateName is an optional prefix, used by the server, to generate a unique name ONLY IF the Name field has not been provided. If this field is used, the name returned to the client will be different than the name passed. This value will also be combined with a unique suffix. The provided value has the same validation rules as the Name field, and may be truncated by the length of the suffix required to make the value unique on the server.\n\nIf this field is specified and the generated name exists, the server will NOT return a 409 - instead, it will either return 201 Created or 500 with Reason ServerTimeout indicating a unique name could not be found in the time allotted, and the client should retry (optionally after the time indicated in the Retry-After header).\n\nApplied only if Name is not specified. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#idempotency", + "generateName": "GenerateName is an optional prefix, used by the server, to generate a unique name ONLY IF the Name field has not been provided. If this field is used, the name returned to the client will be different than the name passed. This value will also be combined with a unique suffix. The provided value has the same validation rules as the Name field, and may be truncated by the length of the suffix required to make the value unique on the server.\n\nIf this field is specified and the generated name exists, the server will NOT return a 409 - instead, it will either return 201 Created or 500 with Reason ServerTimeout indicating a unique name could not be found in the time allotted, and the client should retry (optionally after the time indicated in the Retry-After header).\n\nApplied only if Name is not specified. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency", "namespace": "Namespace defines the space within each name must be unique. An empty namespace is equivalent to the \"default\" namespace, but \"default\" is the canonical representation. Not all objects are required to be scoped to a namespace - the value of this field for those objects will be empty.\n\nMust be a DNS_LABEL. Cannot be updated. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", "selfLink": "SelfLink is a URL representing this object. Populated by the system. Read-only.", "uid": "UID is the unique in time and space value for this object. It is typically generated by the server on successful creation of a resource and is not allowed to change on PUT operations.\n\nPopulated by the system. Read-only. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids", - "resourceVersion": "An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. Clients must treat these values as opaque and passed unmodified back to the server. They may only be valid for a particular resource or set of resources.\n\nPopulated by the system. Read-only. Value must be treated as opaque by clients and . More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#concurrency-control-and-consistency", + "resourceVersion": "An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. Clients must treat these values as opaque and passed unmodified back to the server. They may only be valid for a particular resource or set of resources.\n\nPopulated by the system. Read-only. Value must be treated as opaque by clients and . More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency", "generation": "A sequence number representing a specific generation of the desired state. Populated by the system. Read-only.", - "creationTimestamp": "CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.\n\nPopulated by the system. Read-only. Null for lists. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "deletionTimestamp": "DeletionTimestamp is RFC 3339 date and time at which this resource will be deleted. This field is set by the server when a graceful deletion is requested by the user, and is not directly settable by a client. The resource is expected to be deleted (no longer visible from resource lists, and not reachable by name) after the time in this field. Once set, this value may not be unset or be set further into the future, although it may be shortened or the resource may be deleted prior to this time. For example, a user may request that a pod is deleted in 30 seconds. The Kubelet will react by sending a graceful termination signal to the containers in the pod. After that 30 seconds, the Kubelet will send a hard termination signal (SIGKILL) to the container and after cleanup, remove the pod from the API. In the presence of network partitions, this object may still exist after this timestamp, until an administrator or automated process can determine the resource is fully terminated. If not set, graceful deletion of the object has not been requested.\n\nPopulated by the system when a graceful deletion is requested. Read-only. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "creationTimestamp": "CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.\n\nPopulated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "deletionTimestamp": "DeletionTimestamp is RFC 3339 date and time at which this resource will be deleted. This field is set by the server when a graceful deletion is requested by the user, and is not directly settable by a client. The resource is expected to be deleted (no longer visible from resource lists, and not reachable by name) after the time in this field. Once set, this value may not be unset or be set further into the future, although it may be shortened or the resource may be deleted prior to this time. For example, a user may request that a pod is deleted in 30 seconds. The Kubelet will react by sending a graceful termination signal to the containers in the pod. After that 30 seconds, the Kubelet will send a hard termination signal (SIGKILL) to the container and after cleanup, remove the pod from the API. In the presence of network partitions, this object may still exist after this timestamp, until an administrator or automated process can determine the resource is fully terminated. If not set, graceful deletion of the object has not been requested.\n\nPopulated by the system when a graceful deletion is requested. Read-only. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "deletionGracePeriodSeconds": "Number of seconds allowed for this object to gracefully terminate before it will be removed from the system. Only set when deletionTimestamp is also set. May only be shortened. Read-only.", "labels": "Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/", "annotations": "Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/", @@ -1040,12 +1050,12 @@ func (ObjectMeta) SwaggerDoc() map[string]string { var map_ObjectReference = map[string]string{ "": "ObjectReference contains enough information to let you inspect or modify the referred object.", - "kind": "Kind of the referent. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", + "kind": "Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", "namespace": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", "name": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", "uid": "UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids", "apiVersion": "API version of the referent.", - "resourceVersion": "Specific resourceVersion to which this reference is made, if any. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#concurrency-control-and-consistency", + "resourceVersion": "Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency", "fieldPath": "If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: \"spec.containers{name}\" (where \"name\" refers to the name of the container that triggered the event) or if no container name is specified \"spec.containers[2]\" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object.", } @@ -1055,7 +1065,7 @@ func (ObjectReference) SwaggerDoc() map[string]string { var map_PersistentVolume = map[string]string{ "": "PersistentVolume (PV) is a storage resource provisioned by an administrator. It is analogous to a node. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "spec": "Spec defines a specification of a persistent volume owned by the cluster. Provisioned by an administrator. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistent-volumes", "status": "Status represents the current information/status for the persistent volume. Populated by the system. Read-only. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistent-volumes", } @@ -1066,7 +1076,7 @@ func (PersistentVolume) SwaggerDoc() map[string]string { var map_PersistentVolumeClaim = map[string]string{ "": "PersistentVolumeClaim is a user's request for and claim to a persistent volume", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "spec": "Spec defines the desired characteristics of a volume requested by a pod author. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims", "status": "Status represents the current information/status of a persistent volume claim. Read-only. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims", } @@ -1077,7 +1087,7 @@ func (PersistentVolumeClaim) SwaggerDoc() map[string]string { var map_PersistentVolumeClaimList = map[string]string{ "": "PersistentVolumeClaimList is a list of PersistentVolumeClaim items.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", "items": "A list of persistent volume claims. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims", } @@ -1121,7 +1131,7 @@ func (PersistentVolumeClaimVolumeSource) SwaggerDoc() map[string]string { var map_PersistentVolumeList = map[string]string{ "": "PersistentVolumeList is a list of PersistentVolume items.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", "items": "List of persistent volumes. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes", } @@ -1150,6 +1160,8 @@ var map_PersistentVolumeSource = map[string]string{ "photonPersistentDisk": "PhotonPersistentDisk represents a PhotonController persistent disk attached and mounted on kubelets host machine", "portworxVolume": "PortworxVolume represents a portworx volume attached and mounted on kubelets host machine", "scaleIO": "ScaleIO represents a ScaleIO persistent volume attached and mounted on Kubernetes nodes.", + "local": "Local represents directly-attached storage with node affinity", + "storageos": "StorageOS represents a StorageOS volume that is attached to the kubelet's host machine and mounted into the pod More info: https://releases.k8s.io/HEAD/examples/volumes/storageos/README.md", } func (PersistentVolumeSource) SwaggerDoc() map[string]string { @@ -1192,9 +1204,9 @@ func (PhotonPersistentDiskVolumeSource) SwaggerDoc() map[string]string { var map_Pod = map[string]string{ "": "Pod is a collection of containers that can run on a host. This resource is created by clients and scheduled onto hosts.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "spec": "Specification of the desired behavior of the pod. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", - "status": "Most recently observed status of the pod. This data may not be up to date. Populated by the system. Read-only. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "Specification of the desired behavior of the pod. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", + "status": "Most recently observed status of the pod. This data may not be up to date. Populated by the system. Read-only. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (Pod) SwaggerDoc() map[string]string { @@ -1275,8 +1287,8 @@ func (PodExecOptions) SwaggerDoc() map[string]string { var map_PodList = map[string]string{ "": "PodList is a list of Pods.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", - "items": "List of pods. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", + "items": "List of pods. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md", } func (PodList) SwaggerDoc() map[string]string { @@ -1390,8 +1402,8 @@ func (PodStatus) SwaggerDoc() map[string]string { var map_PodStatusResult = map[string]string{ "": "PodStatusResult is a wrapper for PodStatus returned by kubelet that can be encode/decoded", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "status": "Most recently observed status of the pod. This data may not be up to date. Populated by the system. Read-only. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "status": "Most recently observed status of the pod. This data may not be up to date. Populated by the system. Read-only. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (PodStatusResult) SwaggerDoc() map[string]string { @@ -1400,8 +1412,8 @@ func (PodStatusResult) SwaggerDoc() map[string]string { var map_PodTemplate = map[string]string{ "": "PodTemplate describes a template for creating copies of a predefined pod.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "template": "Template defines the pods that will be created from this pod template. https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "template": "Template defines the pods that will be created from this pod template. https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (PodTemplate) SwaggerDoc() map[string]string { @@ -1410,7 +1422,7 @@ func (PodTemplate) SwaggerDoc() map[string]string { var map_PodTemplateList = map[string]string{ "": "PodTemplateList is a list of PodTemplates.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", "items": "List of pod templates", } @@ -1420,8 +1432,8 @@ func (PodTemplateList) SwaggerDoc() map[string]string { var map_PodTemplateSpec = map[string]string{ "": "PodTemplateSpec describes the data a pod should have when created from a template", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "spec": "Specification of the desired behavior of the pod. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "Specification of the desired behavior of the pod. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (PodTemplateSpec) SwaggerDoc() map[string]string { @@ -1524,7 +1536,7 @@ func (RBDVolumeSource) SwaggerDoc() map[string]string { var map_RangeAllocation = map[string]string{ "": "RangeAllocation is not a public type.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "range": "Range is string that identifies the range represented by 'data'.", "data": "Data is a bit array containing all allocated addresses in the previous segment.", } @@ -1535,9 +1547,9 @@ func (RangeAllocation) SwaggerDoc() map[string]string { var map_ReplicationController = map[string]string{ "": "ReplicationController represents the configuration of a replication controller.", - "metadata": "If the Labels of a ReplicationController are empty, they are defaulted to be the same as the Pod(s) that the replication controller manages. Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "spec": "Spec defines the specification of the desired behavior of the replication controller. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", - "status": "Status is the most recently observed status of the replication controller. This data may be out of date by some window of time. Populated by the system. Read-only. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", + "metadata": "If the Labels of a ReplicationController are empty, they are defaulted to be the same as the Pod(s) that the replication controller manages. Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "Spec defines the specification of the desired behavior of the replication controller. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", + "status": "Status is the most recently observed status of the replication controller. This data may be out of date by some window of time. Populated by the system. Read-only. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (ReplicationController) SwaggerDoc() map[string]string { @@ -1559,7 +1571,7 @@ func (ReplicationControllerCondition) SwaggerDoc() map[string]string { var map_ReplicationControllerList = map[string]string{ "": "ReplicationControllerList is a collection of replication controllers.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", "items": "List of replication controllers. More info: https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller", } @@ -1606,9 +1618,9 @@ func (ResourceFieldSelector) SwaggerDoc() map[string]string { var map_ResourceQuota = map[string]string{ "": "ResourceQuota sets aggregate quota restrictions enforced per namespace", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "spec": "Spec defines the desired quota. https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", - "status": "Status defines the actual enforced quota and its current usage. https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "Spec defines the desired quota. https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", + "status": "Status defines the actual enforced quota and its current usage. https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (ResourceQuota) SwaggerDoc() map[string]string { @@ -1617,8 +1629,8 @@ func (ResourceQuota) SwaggerDoc() map[string]string { var map_ResourceQuotaList = map[string]string{ "": "ResourceQuotaList is a list of ResourceQuota items.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", - "items": "Items is a list of ResourceQuota objects. More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/admission_control_resource_quota.md", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", + "items": "Items is a list of ResourceQuota objects. More info: https://git.k8s.io/community/contributors/design-proposals/admission_control_resource_quota.md", } func (ResourceQuotaList) SwaggerDoc() map[string]string { @@ -1627,7 +1639,7 @@ func (ResourceQuotaList) SwaggerDoc() map[string]string { var map_ResourceQuotaSpec = map[string]string{ "": "ResourceQuotaSpec defines the desired hard limits to enforce for Quota.", - "hard": "Hard is the set of desired hard limits for each named resource. More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/admission_control_resource_quota.md", + "hard": "Hard is the set of desired hard limits for each named resource. More info: https://git.k8s.io/community/contributors/design-proposals/admission_control_resource_quota.md", "scopes": "A collection of filters that must match each object tracked by a quota. If not specified, the quota matches all objects.", } @@ -1637,7 +1649,7 @@ func (ResourceQuotaSpec) SwaggerDoc() map[string]string { var map_ResourceQuotaStatus = map[string]string{ "": "ResourceQuotaStatus defines the enforced hard limits and observed use.", - "hard": "Hard is the set of enforced hard limits for each named resource. More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/admission_control_resource_quota.md", + "hard": "Hard is the set of enforced hard limits for each named resource. More info: https://git.k8s.io/community/contributors/design-proposals/admission_control_resource_quota.md", "used": "Used is the current observed total usage of the resource in the namespace.", } @@ -1687,7 +1699,7 @@ func (ScaleIOVolumeSource) SwaggerDoc() map[string]string { var map_Secret = map[string]string{ "": "Secret holds secret data of a certain type. The total bytes of the values in the Data field must be less than MaxSecretSize bytes.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "data": "Data contains the secret data. Each key must consist of alphanumeric characters, '-', '_' or '.'. The serialized form of the secret data is a base64 encoded string, representing the arbitrary (possibly non-string) data value here. Described in https://tools.ietf.org/html/rfc4648#section-4", "stringData": "stringData allows specifying non-binary secret data in string form. It is provided as a write-only convenience method. All keys and values are merged into the data field on write, overwriting any existing values. It is never output when reading from the API.", "type": "Used to facilitate programmatic handling of secret data.", @@ -1718,7 +1730,7 @@ func (SecretKeySelector) SwaggerDoc() map[string]string { var map_SecretList = map[string]string{ "": "SecretList is a list of Secret.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", "items": "Items is a list of secret objects. More info: https://kubernetes.io/docs/concepts/configuration/secret", } @@ -1773,9 +1785,9 @@ func (SerializedReference) SwaggerDoc() map[string]string { var map_Service = map[string]string{ "": "Service is a named abstraction of software service (for example, mysql) consisting of local port (for example 3306) that the proxy listens on, and the selector that determines which pods will answer requests sent through the proxy.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "spec": "Spec defines the behavior of a service. https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", - "status": "Most recently observed status of the service. Populated by the system. Read-only. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "Spec defines the behavior of a service. https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", + "status": "Most recently observed status of the service. Populated by the system. Read-only. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (Service) SwaggerDoc() map[string]string { @@ -1784,7 +1796,7 @@ func (Service) SwaggerDoc() map[string]string { var map_ServiceAccount = map[string]string{ "": "ServiceAccount binds together: * a name, understood by users, and perhaps by peripheral systems, for an identity * a principal that can be authenticated and authorized * a set of secrets", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "secrets": "Secrets is the list of secrets allowed to be used by pods running using this ServiceAccount. More info: https://kubernetes.io/docs/concepts/configuration/secret", "imagePullSecrets": "ImagePullSecrets is a list of references to secrets in the same namespace to use for pulling any images in pods that reference this ServiceAccount. ImagePullSecrets are distinct from Secrets because Secrets can be mounted in the pod, but ImagePullSecrets are only accessed by the kubelet. More info: https://kubernetes.io/docs/concepts/containers/images/#specifying-imagepullsecrets-on-a-pod", "automountServiceAccountToken": "AutomountServiceAccountToken indicates whether pods running as this service account should have an API token automatically mounted. Can be overridden at the pod level.", @@ -1796,7 +1808,7 @@ func (ServiceAccount) SwaggerDoc() map[string]string { var map_ServiceAccountList = map[string]string{ "": "ServiceAccountList is a list of ServiceAccount objects", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", "items": "List of ServiceAccounts. More info: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/", } @@ -1806,7 +1818,7 @@ func (ServiceAccountList) SwaggerDoc() map[string]string { var map_ServiceList = map[string]string{ "": "ServiceList holds a list of services.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", "items": "List of services", } @@ -1847,7 +1859,7 @@ var map_ServiceSpec = map[string]string{ "loadBalancerIP": "Only applies to Service Type: LoadBalancer LoadBalancer will get created with the IP specified in this field. This feature depends on whether the underlying cloud-provider supports specifying the loadBalancerIP when a load balancer is created. This field will be ignored if the cloud-provider does not support the feature.", "loadBalancerSourceRanges": "If specified and supported by the platform, this will restrict traffic through the cloud-provider load-balancer will be restricted to the specified client IPs. This field will be ignored if the cloud-provider does not support the feature.\" More info: https://kubernetes.io/docs/tasks/access-application-cluster/configure-cloud-provider-firewall/", "externalName": "externalName is the external reference that kubedns or equivalent will return as a CNAME record for this service. No proxying will be involved. Must be a valid DNS name and requires Type to be ExternalName.", - "externalTrafficPolicy": "externalTrafficPolicy denotes if this Service desires to route external traffic to local endpoints only. This preserves Source IP and avoids a second hop for LoadBalancer and Nodeport type services.", + "externalTrafficPolicy": "externalTrafficPolicy denotes if this Service desires to route external traffic to node-local or cluster-wide endpoints. \"Local\" preserves the client source IP and avoids a second hop for LoadBalancer and Nodeport type services, but risks potentially imbalanced traffic spreading. \"Cluster\" obscures the client source IP and may cause a second hop to another node, but should have good overall load-spreading.", "healthCheckNodePort": "healthCheckNodePort specifies the healthcheck nodePort for the service. If not specified, HealthCheckNodePort is created by the service api backend with the allocated nodePort. Will use user-specified nodePort value if specified by the client. Only effects when Type is set to LoadBalancer and ExternalTrafficPolicy is set to Local.", } @@ -1864,6 +1876,32 @@ func (ServiceStatus) SwaggerDoc() map[string]string { return map_ServiceStatus } +var map_StorageOSPersistentVolumeSource = map[string]string{ + "": "Represents a StorageOS persistent volume resource.", + "volumeName": "VolumeName is the human-readable name of the StorageOS volume. Volume names are only unique within a namespace.", + "volumeNamespace": "VolumeNamespace specifies the scope of the volume within StorageOS. If no namespace is specified then the Pod's namespace will be used. This allows the Kubernetes name scoping to be mirrored within StorageOS for tighter integration. Set VolumeName to any name to override the default behaviour. Set to \"default\" if you are not using namespaces within StorageOS. Namespaces that do not pre-exist within StorageOS will be created.", + "fsType": "Filesystem type to mount. Must be a filesystem type supported by the host operating system. Ex. \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified.", + "readOnly": "Defaults to false (read/write). ReadOnly here will force the ReadOnly setting in VolumeMounts.", + "secretRef": "SecretRef specifies the secret to use for obtaining the StorageOS API credentials. If not specified, default values will be attempted.", +} + +func (StorageOSPersistentVolumeSource) SwaggerDoc() map[string]string { + return map_StorageOSPersistentVolumeSource +} + +var map_StorageOSVolumeSource = map[string]string{ + "": "Represents a StorageOS persistent volume resource.", + "volumeName": "VolumeName is the human-readable name of the StorageOS volume. Volume names are only unique within a namespace.", + "volumeNamespace": "VolumeNamespace specifies the scope of the volume within StorageOS. If no namespace is specified then the Pod's namespace will be used. This allows the Kubernetes name scoping to be mirrored within StorageOS for tighter integration. Set VolumeName to any name to override the default behaviour. Set to \"default\" if you are not using namespaces within StorageOS. Namespaces that do not pre-exist within StorageOS will be created.", + "fsType": "Filesystem type to mount. Must be a filesystem type supported by the host operating system. Ex. \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified.", + "readOnly": "Defaults to false (read/write). ReadOnly here will force the ReadOnly setting in VolumeMounts.", + "secretRef": "SecretRef specifies the secret to use for obtaining the StorageOS API credentials. If not specified, default values will be attempted.", +} + +func (StorageOSVolumeSource) SwaggerDoc() map[string]string { + return map_StorageOSVolumeSource +} + var map_Sysctl = map[string]string{ "": "Sysctl defines a kernel parameter to be set", "Name": "Name of a property to set", @@ -1969,6 +2007,7 @@ var map_VolumeSource = map[string]string{ "projected": "Items for all in one resources secrets, configmaps, and downward API", "portworxVolume": "PortworxVolume represents a portworx volume attached and mounted on kubelets host machine", "scaleIO": "ScaleIO represents a ScaleIO persistent volume attached and mounted on Kubernetes nodes.", + "storageos": "StorageOS represents a StorageOS volume attached and mounted on Kubernetes nodes.", } func (VolumeSource) SwaggerDoc() map[string]string { @@ -1976,9 +2015,11 @@ func (VolumeSource) SwaggerDoc() map[string]string { } var map_VsphereVirtualDiskVolumeSource = map[string]string{ - "": "Represents a vSphere volume resource.", - "volumePath": "Path that identifies vSphere volume vmdk", - "fsType": "Filesystem type to mount. Must be a filesystem type supported by the host operating system. Ex. \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified.", + "": "Represents a vSphere volume resource.", + "volumePath": "Path that identifies vSphere volume vmdk", + "fsType": "Filesystem type to mount. Must be a filesystem type supported by the host operating system. Ex. \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified.", + "storagePolicyName": "Storage Policy Based Management (SPBM) profile name.", + "storagePolicyID": "Storage Policy Based Management (SPBM) profile ID associated with the StoragePolicyName.", } func (VsphereVirtualDiskVolumeSource) SwaggerDoc() map[string]string { diff --git a/vendor/k8s.io/client-go/pkg/api/v1/zz_generated.conversion.go b/vendor/k8s.io/client-go/pkg/api/v1/zz_generated.conversion.go index ac91aa79..2fdecd13 100644 --- a/vendor/k8s.io/client-go/pkg/api/v1/zz_generated.conversion.go +++ b/vendor/k8s.io/client-go/pkg/api/v1/zz_generated.conversion.go @@ -173,6 +173,8 @@ func RegisterConversions(scheme *runtime.Scheme) error { Convert_api_LoadBalancerStatus_To_v1_LoadBalancerStatus, Convert_v1_LocalObjectReference_To_api_LocalObjectReference, Convert_api_LocalObjectReference_To_v1_LocalObjectReference, + Convert_v1_LocalVolumeSource_To_api_LocalVolumeSource, + Convert_api_LocalVolumeSource_To_v1_LocalVolumeSource, Convert_v1_NFSVolumeSource_To_api_NFSVolumeSource, Convert_api_NFSVolumeSource_To_v1_NFSVolumeSource, Convert_v1_Namespace_To_api_Namespace, @@ -353,6 +355,10 @@ func RegisterConversions(scheme *runtime.Scheme) error { Convert_api_ServiceSpec_To_v1_ServiceSpec, Convert_v1_ServiceStatus_To_api_ServiceStatus, Convert_api_ServiceStatus_To_v1_ServiceStatus, + Convert_v1_StorageOSPersistentVolumeSource_To_api_StorageOSPersistentVolumeSource, + Convert_api_StorageOSPersistentVolumeSource_To_v1_StorageOSPersistentVolumeSource, + Convert_v1_StorageOSVolumeSource_To_api_StorageOSVolumeSource, + Convert_api_StorageOSVolumeSource_To_v1_StorageOSVolumeSource, Convert_v1_Sysctl_To_api_Sysctl, Convert_api_Sysctl_To_v1_Sysctl, Convert_v1_TCPSocketAction_To_api_TCPSocketAction, @@ -1234,6 +1240,7 @@ func Convert_api_DownwardAPIVolumeSource_To_v1_DownwardAPIVolumeSource(in *api.D func autoConvert_v1_EmptyDirVolumeSource_To_api_EmptyDirVolumeSource(in *EmptyDirVolumeSource, out *api.EmptyDirVolumeSource, s conversion.Scope) error { out.Medium = api.StorageMedium(in.Medium) + out.SizeLimit = in.SizeLimit return nil } @@ -1244,6 +1251,7 @@ func Convert_v1_EmptyDirVolumeSource_To_api_EmptyDirVolumeSource(in *EmptyDirVol func autoConvert_api_EmptyDirVolumeSource_To_v1_EmptyDirVolumeSource(in *api.EmptyDirVolumeSource, out *EmptyDirVolumeSource, s conversion.Scope) error { out.Medium = StorageMedium(in.Medium) + out.SizeLimit = in.SizeLimit return nil } @@ -2166,6 +2174,26 @@ func Convert_api_LocalObjectReference_To_v1_LocalObjectReference(in *api.LocalOb return autoConvert_api_LocalObjectReference_To_v1_LocalObjectReference(in, out, s) } +func autoConvert_v1_LocalVolumeSource_To_api_LocalVolumeSource(in *LocalVolumeSource, out *api.LocalVolumeSource, s conversion.Scope) error { + out.Path = in.Path + return nil +} + +// Convert_v1_LocalVolumeSource_To_api_LocalVolumeSource is an autogenerated conversion function. +func Convert_v1_LocalVolumeSource_To_api_LocalVolumeSource(in *LocalVolumeSource, out *api.LocalVolumeSource, s conversion.Scope) error { + return autoConvert_v1_LocalVolumeSource_To_api_LocalVolumeSource(in, out, s) +} + +func autoConvert_api_LocalVolumeSource_To_v1_LocalVolumeSource(in *api.LocalVolumeSource, out *LocalVolumeSource, s conversion.Scope) error { + out.Path = in.Path + return nil +} + +// Convert_api_LocalVolumeSource_To_v1_LocalVolumeSource is an autogenerated conversion function. +func Convert_api_LocalVolumeSource_To_v1_LocalVolumeSource(in *api.LocalVolumeSource, out *LocalVolumeSource, s conversion.Scope) error { + return autoConvert_api_LocalVolumeSource_To_v1_LocalVolumeSource(in, out, s) +} + func autoConvert_v1_NFSVolumeSource_To_api_NFSVolumeSource(in *NFSVolumeSource, out *api.NFSVolumeSource, s conversion.Scope) error { out.Server = in.Server out.Path = in.Path @@ -3002,6 +3030,8 @@ func autoConvert_v1_PersistentVolumeSource_To_api_PersistentVolumeSource(in *Per out.PhotonPersistentDisk = (*api.PhotonPersistentDiskVolumeSource)(unsafe.Pointer(in.PhotonPersistentDisk)) out.PortworxVolume = (*api.PortworxVolumeSource)(unsafe.Pointer(in.PortworxVolume)) out.ScaleIO = (*api.ScaleIOVolumeSource)(unsafe.Pointer(in.ScaleIO)) + out.Local = (*api.LocalVolumeSource)(unsafe.Pointer(in.Local)) + out.StorageOS = (*api.StorageOSPersistentVolumeSource)(unsafe.Pointer(in.StorageOS)) return nil } @@ -3030,6 +3060,8 @@ func autoConvert_api_PersistentVolumeSource_To_v1_PersistentVolumeSource(in *api out.PhotonPersistentDisk = (*PhotonPersistentDiskVolumeSource)(unsafe.Pointer(in.PhotonPersistentDisk)) out.PortworxVolume = (*PortworxVolumeSource)(unsafe.Pointer(in.PortworxVolume)) out.ScaleIO = (*ScaleIOVolumeSource)(unsafe.Pointer(in.ScaleIO)) + out.Local = (*LocalVolumeSource)(unsafe.Pointer(in.Local)) + out.StorageOS = (*StorageOSPersistentVolumeSource)(unsafe.Pointer(in.StorageOS)) return nil } @@ -4781,6 +4813,62 @@ func Convert_api_ServiceStatus_To_v1_ServiceStatus(in *api.ServiceStatus, out *S return autoConvert_api_ServiceStatus_To_v1_ServiceStatus(in, out, s) } +func autoConvert_v1_StorageOSPersistentVolumeSource_To_api_StorageOSPersistentVolumeSource(in *StorageOSPersistentVolumeSource, out *api.StorageOSPersistentVolumeSource, s conversion.Scope) error { + out.VolumeName = in.VolumeName + out.VolumeNamespace = in.VolumeNamespace + out.FSType = in.FSType + out.ReadOnly = in.ReadOnly + out.SecretRef = (*api.ObjectReference)(unsafe.Pointer(in.SecretRef)) + return nil +} + +// Convert_v1_StorageOSPersistentVolumeSource_To_api_StorageOSPersistentVolumeSource is an autogenerated conversion function. +func Convert_v1_StorageOSPersistentVolumeSource_To_api_StorageOSPersistentVolumeSource(in *StorageOSPersistentVolumeSource, out *api.StorageOSPersistentVolumeSource, s conversion.Scope) error { + return autoConvert_v1_StorageOSPersistentVolumeSource_To_api_StorageOSPersistentVolumeSource(in, out, s) +} + +func autoConvert_api_StorageOSPersistentVolumeSource_To_v1_StorageOSPersistentVolumeSource(in *api.StorageOSPersistentVolumeSource, out *StorageOSPersistentVolumeSource, s conversion.Scope) error { + out.VolumeName = in.VolumeName + out.VolumeNamespace = in.VolumeNamespace + out.FSType = in.FSType + out.ReadOnly = in.ReadOnly + out.SecretRef = (*ObjectReference)(unsafe.Pointer(in.SecretRef)) + return nil +} + +// Convert_api_StorageOSPersistentVolumeSource_To_v1_StorageOSPersistentVolumeSource is an autogenerated conversion function. +func Convert_api_StorageOSPersistentVolumeSource_To_v1_StorageOSPersistentVolumeSource(in *api.StorageOSPersistentVolumeSource, out *StorageOSPersistentVolumeSource, s conversion.Scope) error { + return autoConvert_api_StorageOSPersistentVolumeSource_To_v1_StorageOSPersistentVolumeSource(in, out, s) +} + +func autoConvert_v1_StorageOSVolumeSource_To_api_StorageOSVolumeSource(in *StorageOSVolumeSource, out *api.StorageOSVolumeSource, s conversion.Scope) error { + out.VolumeName = in.VolumeName + out.VolumeNamespace = in.VolumeNamespace + out.FSType = in.FSType + out.ReadOnly = in.ReadOnly + out.SecretRef = (*api.LocalObjectReference)(unsafe.Pointer(in.SecretRef)) + return nil +} + +// Convert_v1_StorageOSVolumeSource_To_api_StorageOSVolumeSource is an autogenerated conversion function. +func Convert_v1_StorageOSVolumeSource_To_api_StorageOSVolumeSource(in *StorageOSVolumeSource, out *api.StorageOSVolumeSource, s conversion.Scope) error { + return autoConvert_v1_StorageOSVolumeSource_To_api_StorageOSVolumeSource(in, out, s) +} + +func autoConvert_api_StorageOSVolumeSource_To_v1_StorageOSVolumeSource(in *api.StorageOSVolumeSource, out *StorageOSVolumeSource, s conversion.Scope) error { + out.VolumeName = in.VolumeName + out.VolumeNamespace = in.VolumeNamespace + out.FSType = in.FSType + out.ReadOnly = in.ReadOnly + out.SecretRef = (*LocalObjectReference)(unsafe.Pointer(in.SecretRef)) + return nil +} + +// Convert_api_StorageOSVolumeSource_To_v1_StorageOSVolumeSource is an autogenerated conversion function. +func Convert_api_StorageOSVolumeSource_To_v1_StorageOSVolumeSource(in *api.StorageOSVolumeSource, out *StorageOSVolumeSource, s conversion.Scope) error { + return autoConvert_api_StorageOSVolumeSource_To_v1_StorageOSVolumeSource(in, out, s) +} + func autoConvert_v1_Sysctl_To_api_Sysctl(in *Sysctl, out *api.Sysctl, s conversion.Scope) error { out.Name = in.Name out.Value = in.Value @@ -4982,6 +5070,7 @@ func autoConvert_v1_VolumeSource_To_api_VolumeSource(in *VolumeSource, out *api. out.Projected = (*api.ProjectedVolumeSource)(unsafe.Pointer(in.Projected)) out.PortworxVolume = (*api.PortworxVolumeSource)(unsafe.Pointer(in.PortworxVolume)) out.ScaleIO = (*api.ScaleIOVolumeSource)(unsafe.Pointer(in.ScaleIO)) + out.StorageOS = (*api.StorageOSVolumeSource)(unsafe.Pointer(in.StorageOS)) return nil } @@ -5017,6 +5106,7 @@ func autoConvert_api_VolumeSource_To_v1_VolumeSource(in *api.VolumeSource, out * out.Projected = (*ProjectedVolumeSource)(unsafe.Pointer(in.Projected)) out.PortworxVolume = (*PortworxVolumeSource)(unsafe.Pointer(in.PortworxVolume)) out.ScaleIO = (*ScaleIOVolumeSource)(unsafe.Pointer(in.ScaleIO)) + out.StorageOS = (*StorageOSVolumeSource)(unsafe.Pointer(in.StorageOS)) return nil } @@ -5028,6 +5118,8 @@ func Convert_api_VolumeSource_To_v1_VolumeSource(in *api.VolumeSource, out *Volu func autoConvert_v1_VsphereVirtualDiskVolumeSource_To_api_VsphereVirtualDiskVolumeSource(in *VsphereVirtualDiskVolumeSource, out *api.VsphereVirtualDiskVolumeSource, s conversion.Scope) error { out.VolumePath = in.VolumePath out.FSType = in.FSType + out.StoragePolicyName = in.StoragePolicyName + out.StoragePolicyID = in.StoragePolicyID return nil } @@ -5039,6 +5131,8 @@ func Convert_v1_VsphereVirtualDiskVolumeSource_To_api_VsphereVirtualDiskVolumeSo func autoConvert_api_VsphereVirtualDiskVolumeSource_To_v1_VsphereVirtualDiskVolumeSource(in *api.VsphereVirtualDiskVolumeSource, out *VsphereVirtualDiskVolumeSource, s conversion.Scope) error { out.VolumePath = in.VolumePath out.FSType = in.FSType + out.StoragePolicyName = in.StoragePolicyName + out.StoragePolicyID = in.StoragePolicyID return nil } diff --git a/vendor/k8s.io/client-go/pkg/api/v1/zz_generated.deepcopy.go b/vendor/k8s.io/client-go/pkg/api/v1/zz_generated.deepcopy.go index 08ec5ae8..38ee730e 100644 --- a/vendor/k8s.io/client-go/pkg/api/v1/zz_generated.deepcopy.go +++ b/vendor/k8s.io/client-go/pkg/api/v1/zz_generated.deepcopy.go @@ -104,6 +104,7 @@ func RegisterDeepCopies(scheme *runtime.Scheme) error { conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_LoadBalancerIngress, InType: reflect.TypeOf(&LoadBalancerIngress{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_LoadBalancerStatus, InType: reflect.TypeOf(&LoadBalancerStatus{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_LocalObjectReference, InType: reflect.TypeOf(&LocalObjectReference{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_LocalVolumeSource, InType: reflect.TypeOf(&LocalVolumeSource{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_NFSVolumeSource, InType: reflect.TypeOf(&NFSVolumeSource{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_Namespace, InType: reflect.TypeOf(&Namespace{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_NamespaceList, InType: reflect.TypeOf(&NamespaceList{})}, @@ -194,6 +195,8 @@ func RegisterDeepCopies(scheme *runtime.Scheme) error { conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ServiceProxyOptions, InType: reflect.TypeOf(&ServiceProxyOptions{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ServiceSpec, InType: reflect.TypeOf(&ServiceSpec{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ServiceStatus, InType: reflect.TypeOf(&ServiceStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_StorageOSPersistentVolumeSource, InType: reflect.TypeOf(&StorageOSPersistentVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_StorageOSVolumeSource, InType: reflect.TypeOf(&StorageOSVolumeSource{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_Sysctl, InType: reflect.TypeOf(&Sysctl{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_TCPSocketAction, InType: reflect.TypeOf(&TCPSocketAction{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_Taint, InType: reflect.TypeOf(&Taint{})}, @@ -855,6 +858,7 @@ func DeepCopy_v1_EmptyDirVolumeSource(in interface{}, out interface{}, c *conver in := in.(*EmptyDirVolumeSource) out := out.(*EmptyDirVolumeSource) *out = *in + out.SizeLimit = in.SizeLimit.DeepCopy() return nil } } @@ -1495,6 +1499,16 @@ func DeepCopy_v1_LocalObjectReference(in interface{}, out interface{}, c *conver } } +// DeepCopy_v1_LocalVolumeSource is an autogenerated deepcopy function. +func DeepCopy_v1_LocalVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*LocalVolumeSource) + out := out.(*LocalVolumeSource) + *out = *in + return nil + } +} + // DeepCopy_v1_NFSVolumeSource is an autogenerated deepcopy function. func DeepCopy_v1_NFSVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { { @@ -2165,6 +2179,18 @@ func DeepCopy_v1_PersistentVolumeSource(in interface{}, out interface{}, c *conv return err } } + if in.Local != nil { + in, out := &in.Local, &out.Local + *out = new(LocalVolumeSource) + **out = **in + } + if in.StorageOS != nil { + in, out := &in.StorageOS, &out.StorageOS + *out = new(StorageOSPersistentVolumeSource) + if err := DeepCopy_v1_StorageOSPersistentVolumeSource(*in, *out, c); err != nil { + return err + } + } return nil } } @@ -3419,6 +3445,36 @@ func DeepCopy_v1_ServiceStatus(in interface{}, out interface{}, c *conversion.Cl } } +// DeepCopy_v1_StorageOSPersistentVolumeSource is an autogenerated deepcopy function. +func DeepCopy_v1_StorageOSPersistentVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*StorageOSPersistentVolumeSource) + out := out.(*StorageOSPersistentVolumeSource) + *out = *in + if in.SecretRef != nil { + in, out := &in.SecretRef, &out.SecretRef + *out = new(ObjectReference) + **out = **in + } + return nil + } +} + +// DeepCopy_v1_StorageOSVolumeSource is an autogenerated deepcopy function. +func DeepCopy_v1_StorageOSVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*StorageOSVolumeSource) + out := out.(*StorageOSVolumeSource) + *out = *in + if in.SecretRef != nil { + in, out := &in.SecretRef, &out.SecretRef + *out = new(LocalObjectReference) + **out = **in + } + return nil + } +} + // DeepCopy_v1_Sysctl is an autogenerated deepcopy function. func DeepCopy_v1_Sysctl(in interface{}, out interface{}, c *conversion.Cloner) error { { @@ -3533,7 +3589,9 @@ func DeepCopy_v1_VolumeSource(in interface{}, out interface{}, c *conversion.Clo if in.EmptyDir != nil { in, out := &in.EmptyDir, &out.EmptyDir *out = new(EmptyDirVolumeSource) - **out = **in + if err := DeepCopy_v1_EmptyDirVolumeSource(*in, *out, c); err != nil { + return err + } } if in.GCEPersistentDisk != nil { in, out := &in.GCEPersistentDisk, &out.GCEPersistentDisk @@ -3677,6 +3735,13 @@ func DeepCopy_v1_VolumeSource(in interface{}, out interface{}, c *conversion.Clo return err } } + if in.StorageOS != nil { + in, out := &in.StorageOS, &out.StorageOS + *out = new(StorageOSVolumeSource) + if err := DeepCopy_v1_StorageOSVolumeSource(*in, *out, c); err != nil { + return err + } + } return nil } } diff --git a/vendor/k8s.io/client-go/pkg/api/zz_generated.deepcopy.go b/vendor/k8s.io/client-go/pkg/api/zz_generated.deepcopy.go index 20b0c64c..b9b24716 100644 --- a/vendor/k8s.io/client-go/pkg/api/zz_generated.deepcopy.go +++ b/vendor/k8s.io/client-go/pkg/api/zz_generated.deepcopy.go @@ -106,6 +106,7 @@ func RegisterDeepCopies(scheme *runtime.Scheme) error { conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_LoadBalancerIngress, InType: reflect.TypeOf(&LoadBalancerIngress{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_LoadBalancerStatus, InType: reflect.TypeOf(&LoadBalancerStatus{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_LocalObjectReference, InType: reflect.TypeOf(&LocalObjectReference{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_LocalVolumeSource, InType: reflect.TypeOf(&LocalVolumeSource{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NFSVolumeSource, InType: reflect.TypeOf(&NFSVolumeSource{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Namespace, InType: reflect.TypeOf(&Namespace{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NamespaceList, InType: reflect.TypeOf(&NamespaceList{})}, @@ -196,6 +197,8 @@ func RegisterDeepCopies(scheme *runtime.Scheme) error { conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ServiceProxyOptions, InType: reflect.TypeOf(&ServiceProxyOptions{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ServiceSpec, InType: reflect.TypeOf(&ServiceSpec{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ServiceStatus, InType: reflect.TypeOf(&ServiceStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_StorageOSPersistentVolumeSource, InType: reflect.TypeOf(&StorageOSPersistentVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_StorageOSVolumeSource, InType: reflect.TypeOf(&StorageOSVolumeSource{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Sysctl, InType: reflect.TypeOf(&Sysctl{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_TCPSocketAction, InType: reflect.TypeOf(&TCPSocketAction{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Taint, InType: reflect.TypeOf(&Taint{})}, @@ -857,6 +860,7 @@ func DeepCopy_api_EmptyDirVolumeSource(in interface{}, out interface{}, c *conve in := in.(*EmptyDirVolumeSource) out := out.(*EmptyDirVolumeSource) *out = *in + out.SizeLimit = in.SizeLimit.DeepCopy() return nil } } @@ -1513,6 +1517,16 @@ func DeepCopy_api_LocalObjectReference(in interface{}, out interface{}, c *conve } } +// DeepCopy_api_LocalVolumeSource is an autogenerated deepcopy function. +func DeepCopy_api_LocalVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*LocalVolumeSource) + out := out.(*LocalVolumeSource) + *out = *in + return nil + } +} + // DeepCopy_api_NFSVolumeSource is an autogenerated deepcopy function. func DeepCopy_api_NFSVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { { @@ -2183,6 +2197,18 @@ func DeepCopy_api_PersistentVolumeSource(in interface{}, out interface{}, c *con return err } } + if in.Local != nil { + in, out := &in.Local, &out.Local + *out = new(LocalVolumeSource) + **out = **in + } + if in.StorageOS != nil { + in, out := &in.StorageOS, &out.StorageOS + *out = new(StorageOSPersistentVolumeSource) + if err := DeepCopy_api_StorageOSPersistentVolumeSource(*in, *out, c); err != nil { + return err + } + } return nil } } @@ -3425,6 +3451,36 @@ func DeepCopy_api_ServiceStatus(in interface{}, out interface{}, c *conversion.C } } +// DeepCopy_api_StorageOSPersistentVolumeSource is an autogenerated deepcopy function. +func DeepCopy_api_StorageOSPersistentVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*StorageOSPersistentVolumeSource) + out := out.(*StorageOSPersistentVolumeSource) + *out = *in + if in.SecretRef != nil { + in, out := &in.SecretRef, &out.SecretRef + *out = new(ObjectReference) + **out = **in + } + return nil + } +} + +// DeepCopy_api_StorageOSVolumeSource is an autogenerated deepcopy function. +func DeepCopy_api_StorageOSVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*StorageOSVolumeSource) + out := out.(*StorageOSVolumeSource) + *out = *in + if in.SecretRef != nil { + in, out := &in.SecretRef, &out.SecretRef + *out = new(LocalObjectReference) + **out = **in + } + return nil + } +} + // DeepCopy_api_Sysctl is an autogenerated deepcopy function. func DeepCopy_api_Sysctl(in interface{}, out interface{}, c *conversion.Cloner) error { { @@ -3539,7 +3595,9 @@ func DeepCopy_api_VolumeSource(in interface{}, out interface{}, c *conversion.Cl if in.EmptyDir != nil { in, out := &in.EmptyDir, &out.EmptyDir *out = new(EmptyDirVolumeSource) - **out = **in + if err := DeepCopy_api_EmptyDirVolumeSource(*in, *out, c); err != nil { + return err + } } if in.GCEPersistentDisk != nil { in, out := &in.GCEPersistentDisk, &out.GCEPersistentDisk @@ -3683,6 +3741,13 @@ func DeepCopy_api_VolumeSource(in interface{}, out interface{}, c *conversion.Cl return err } } + if in.StorageOS != nil { + in, out := &in.StorageOS, &out.StorageOS + *out = new(StorageOSVolumeSource) + if err := DeepCopy_api_StorageOSVolumeSource(*in, *out, c); err != nil { + return err + } + } return nil } } diff --git a/vendor/k8s.io/client-go/pkg/apis/admissionregistration/doc.go b/vendor/k8s.io/client-go/pkg/apis/admissionregistration/doc.go new file mode 100644 index 00000000..492dad7b --- /dev/null +++ b/vendor/k8s.io/client-go/pkg/apis/admissionregistration/doc.go @@ -0,0 +1,22 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// Package admissionregistration is the internal version of the API. +// AdmissionConfiguration and AdmissionPluginConfiguration are legacy static admission plugin configuration +// InitializerConfiguration and ExternalAdmissionHookConfiguration is for the +// new dynamic admission controller configuration. +// +groupName=admissionregistration.k8s.io +package admissionregistration diff --git a/vendor/k8s.io/client-go/pkg/apis/admissionregistration/register.go b/vendor/k8s.io/client-go/pkg/apis/admissionregistration/register.go new file mode 100644 index 00000000..1fe291a8 --- /dev/null +++ b/vendor/k8s.io/client-go/pkg/apis/admissionregistration/register.go @@ -0,0 +1,53 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package admissionregistration + +import ( + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/apimachinery/pkg/runtime/schema" +) + +const GroupName = "admissionregistration.k8s.io" + +// SchemeGroupVersion is group version used to register these objects +var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: runtime.APIVersionInternal} + +// Kind takes an unqualified kind and returns back a Group qualified GroupKind +func Kind(kind string) schema.GroupKind { + return SchemeGroupVersion.WithKind(kind).GroupKind() +} + +// Resource takes an unqualified resource and returns back a Group qualified GroupResource +func Resource(resource string) schema.GroupResource { + return SchemeGroupVersion.WithResource(resource).GroupResource() +} + +var ( + SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) + AddToScheme = SchemeBuilder.AddToScheme +) + +// Adds the list of known types to scheme. +func addKnownTypes(scheme *runtime.Scheme) error { + scheme.AddKnownTypes(SchemeGroupVersion, + &InitializerConfiguration{}, + &InitializerConfigurationList{}, + &ExternalAdmissionHookConfiguration{}, + &ExternalAdmissionHookConfigurationList{}, + ) + return nil +} diff --git a/vendor/k8s.io/client-go/pkg/apis/admissionregistration/types.go b/vendor/k8s.io/client-go/pkg/apis/admissionregistration/types.go new file mode 100644 index 00000000..27b72072 --- /dev/null +++ b/vendor/k8s.io/client-go/pkg/apis/admissionregistration/types.go @@ -0,0 +1,216 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package admissionregistration + +import ( + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" +) + +// +genclient=true +// +nonNamespaced=true + +// InitializerConfiguration describes the configuration of initializers. +type InitializerConfiguration struct { + metav1.TypeMeta + // Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. + // +optional + metav1.ObjectMeta + + // Initializers is a list of resources and their default initializers + // Order-sensitive. + // When merging multiple InitializerConfigurations, we sort the initializers + // from different InitializerConfigurations by the name of the + // InitializerConfigurations; the order of the initializers from the same + // InitializerConfiguration is preserved. + // +optional + Initializers []Initializer +} + +// InitializerConfigurationList is a list of InitializerConfiguration. +type InitializerConfigurationList struct { + metav1.TypeMeta + // Standard list metadata. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + // +optional + metav1.ListMeta + + // List of InitializerConfiguration. + Items []InitializerConfiguration +} + +// Initializer describes the name and the failure policy of an initializer, and +// what resources it applies to. +type Initializer struct { + // 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 + Name string + + // 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. + 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 +// to make sure that all the tuple expansions are valid. +type Rule struct { + // APIGroups is the API groups the resources belong to. '*' is all groups. + // If '*' is present, the length of the slice must be one. + // Required. + APIGroups []string + + // APIVersions is the API versions the resources belong to. '*' is all versions. + // If '*' is present, the length of the slice must be one. + // Required. + APIVersions []string + + // Resources is a list of resources this rule applies to. + // + // For example: + // 'pods' means pods. + // 'pods/log' means the log subresource of pods. + // '*' means all resources, but not subresources. + // 'pods/*' means all subresources of pods. + // '*/scale' means all scale subresources. + // '*/*' means all resources and their subresources. + // + // If wildcard is present, the validation rule will ensure resources do not + // overlap with each other. + // + // Depending on the enclosing object, subresources might not be allowed. + // Required. + Resources []string +} + +type FailurePolicyType string + +const ( + // Ignore means the initilizer is removed from the initializers list of an + // object if the initializer is timed out. + Ignore FailurePolicyType = "Ignore" + // For 1.7, only "Ignore" is allowed. "Fail" will be allowed when the + // extensible admission feature is beta. + Fail FailurePolicyType = "Fail" +) + +// +genclient=true +// +nonNamespaced=true + +// ExternalAdmissionHookConfiguration describes the configuration of initializers. +type ExternalAdmissionHookConfiguration struct { + metav1.TypeMeta + // Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. + // +optional + metav1.ObjectMeta + // ExternalAdmissionHooks is a list of external admission webhooks and the + // affected resources and operations. + // +optional + ExternalAdmissionHooks []ExternalAdmissionHook +} + +// ExternalAdmissionHookConfigurationList is a list of ExternalAdmissionHookConfiguration. +type ExternalAdmissionHookConfigurationList struct { + metav1.TypeMeta + // Standard list metadata. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + // +optional + metav1.ListMeta + // List of ExternalAdmissionHookConfiguration. + Items []ExternalAdmissionHookConfiguration +} + +// ExternalAdmissionHook describes an external admission webhook and the +// resources and operations it applies to. +type ExternalAdmissionHook struct { + // The name of the external admission webhook. + // Name should be fully qualified, e.g., imagepolicy.kubernetes.io, where + // "imagepolicy" is the name of the webhook, and kubernetes.io is the name + // of the organization. + // Required. + Name string + + // ClientConfig defines how to communicate with the hook. + // Required + ClientConfig AdmissionHookClientConfig + + // Rules describes what operations on what resources/subresources the webhook cares about. + // The webhook cares about an operation if it matches _any_ Rule. + Rules []RuleWithOperations + + // FailurePolicy defines how unrecognized errors from the admission endpoint are handled - + // allowed values are Ignore or Fail. Defaults to Ignore. + // +optional + FailurePolicy *FailurePolicyType +} + +// RuleWithOperations is a tuple of Operations and Resources. It is recommended to make +// sure that all the tuple expansions are valid. +type RuleWithOperations struct { + // Operations is the operations the admission hook cares about - CREATE, UPDATE, or * + // for all operations. + // If '*' is present, the length of the slice must be one. + // Required. + Operations []OperationType + // Rule is embedded, it describes other criteria of the rule, like + // APIGroups, APIVersions, Resources, etc. + Rule +} + +type OperationType string + +// The constants should be kept in sync with those defined in k8s.io/kubernetes/pkg/admission/interface.go. +const ( + OperationAll OperationType = "*" + Create OperationType = "CREATE" + Update OperationType = "UPDATE" + Delete OperationType = "DELETE" + Connect OperationType = "CONNECT" +) + +// AdmissionHookClientConfig contains the information to make a TLS +// connection with the webhook +type AdmissionHookClientConfig struct { + // Service is a reference to the service for this webhook. If there is only + // one port open for the service, that port will be used. If there are multiple + // ports open, port 443 will be used if it is open, otherwise it is an error. + // Required + Service ServiceReference + // CABundle is a PEM encoded CA bundle which will be used to validate webhook's server certificate. + // Required + CABundle []byte +} + +// ServiceReference holds a reference to Service.legacy.k8s.io +type ServiceReference struct { + // Namespace is the namespace of the service + // Required + Namespace string + // Name is the name of the service + // Required + Name string +} diff --git a/vendor/k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/defaults.go b/vendor/k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/defaults.go new file mode 100644 index 00000000..5aed8f1d --- /dev/null +++ b/vendor/k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/defaults.go @@ -0,0 +1,39 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1alpha1 + +import ( + "k8s.io/apimachinery/pkg/runtime" +) + +func addDefaultingFuncs(scheme *runtime.Scheme) error { + return RegisterDefaults(scheme) +} + +func SetDefaults_Initializer(obj *Initializer) { + if obj.FailurePolicy == nil { + policy := Ignore + obj.FailurePolicy = &policy + } +} + +func SetDefaults_ExternalAdmissionHook(obj *ExternalAdmissionHook) { + if obj.FailurePolicy == nil { + policy := Ignore + obj.FailurePolicy = &policy + } +} diff --git a/vendor/k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/doc.go b/vendor/k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/doc.go new file mode 100644 index 00000000..a848f3e9 --- /dev/null +++ b/vendor/k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/doc.go @@ -0,0 +1,22 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// Package v1alpha1 is the v1alpha1 version of the API. +// AdmissionConfiguration and AdmissionPluginConfiguration are legacy static admission plugin configuration +// InitializerConfiguration and ExternalAdmissionHookConfiguration is for the +// new dynamic admission controller configuration. +// +groupName=admissionregistration.k8s.io +package v1alpha1 diff --git a/vendor/k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/generated.pb.go b/vendor/k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/generated.pb.go new file mode 100644 index 00000000..58abc1d2 --- /dev/null +++ b/vendor/k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/generated.pb.go @@ -0,0 +1,2228 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// Code generated by protoc-gen-gogo. +// source: k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/generated.proto +// DO NOT EDIT! + +/* + Package v1alpha1 is a generated protocol buffer package. + + It is generated from these files: + k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/generated.proto + + It has these top-level messages: + AdmissionHookClientConfig + ExternalAdmissionHook + ExternalAdmissionHookConfiguration + ExternalAdmissionHookConfigurationList + Initializer + InitializerConfiguration + InitializerConfigurationList + Rule + RuleWithOperations + ServiceReference +*/ +package v1alpha1 + +import proto "github.com/gogo/protobuf/proto" +import fmt "fmt" +import math "math" + +import strings "strings" +import reflect "reflect" + +import io "io" + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion2 // please upgrade the proto package + +func (m *AdmissionHookClientConfig) Reset() { *m = AdmissionHookClientConfig{} } +func (*AdmissionHookClientConfig) ProtoMessage() {} +func (*AdmissionHookClientConfig) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{0} +} + +func (m *ExternalAdmissionHook) Reset() { *m = ExternalAdmissionHook{} } +func (*ExternalAdmissionHook) ProtoMessage() {} +func (*ExternalAdmissionHook) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{1} } + +func (m *ExternalAdmissionHookConfiguration) Reset() { *m = ExternalAdmissionHookConfiguration{} } +func (*ExternalAdmissionHookConfiguration) ProtoMessage() {} +func (*ExternalAdmissionHookConfiguration) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{2} +} + +func (m *ExternalAdmissionHookConfigurationList) Reset() { + *m = ExternalAdmissionHookConfigurationList{} +} +func (*ExternalAdmissionHookConfigurationList) ProtoMessage() {} +func (*ExternalAdmissionHookConfigurationList) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{3} +} + +func (m *Initializer) Reset() { *m = Initializer{} } +func (*Initializer) ProtoMessage() {} +func (*Initializer) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{4} } + +func (m *InitializerConfiguration) Reset() { *m = InitializerConfiguration{} } +func (*InitializerConfiguration) ProtoMessage() {} +func (*InitializerConfiguration) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{5} +} + +func (m *InitializerConfigurationList) Reset() { *m = InitializerConfigurationList{} } +func (*InitializerConfigurationList) ProtoMessage() {} +func (*InitializerConfigurationList) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{6} +} + +func (m *Rule) Reset() { *m = Rule{} } +func (*Rule) ProtoMessage() {} +func (*Rule) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{7} } + +func (m *RuleWithOperations) Reset() { *m = RuleWithOperations{} } +func (*RuleWithOperations) ProtoMessage() {} +func (*RuleWithOperations) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{8} } + +func (m *ServiceReference) Reset() { *m = ServiceReference{} } +func (*ServiceReference) ProtoMessage() {} +func (*ServiceReference) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{9} } + +func init() { + proto.RegisterType((*AdmissionHookClientConfig)(nil), "k8s.io.client-go.pkg.apis.admissionregistration.v1alpha1.AdmissionHookClientConfig") + proto.RegisterType((*ExternalAdmissionHook)(nil), "k8s.io.client-go.pkg.apis.admissionregistration.v1alpha1.ExternalAdmissionHook") + proto.RegisterType((*ExternalAdmissionHookConfiguration)(nil), "k8s.io.client-go.pkg.apis.admissionregistration.v1alpha1.ExternalAdmissionHookConfiguration") + proto.RegisterType((*ExternalAdmissionHookConfigurationList)(nil), "k8s.io.client-go.pkg.apis.admissionregistration.v1alpha1.ExternalAdmissionHookConfigurationList") + proto.RegisterType((*Initializer)(nil), "k8s.io.client-go.pkg.apis.admissionregistration.v1alpha1.Initializer") + proto.RegisterType((*InitializerConfiguration)(nil), "k8s.io.client-go.pkg.apis.admissionregistration.v1alpha1.InitializerConfiguration") + proto.RegisterType((*InitializerConfigurationList)(nil), "k8s.io.client-go.pkg.apis.admissionregistration.v1alpha1.InitializerConfigurationList") + proto.RegisterType((*Rule)(nil), "k8s.io.client-go.pkg.apis.admissionregistration.v1alpha1.Rule") + proto.RegisterType((*RuleWithOperations)(nil), "k8s.io.client-go.pkg.apis.admissionregistration.v1alpha1.RuleWithOperations") + proto.RegisterType((*ServiceReference)(nil), "k8s.io.client-go.pkg.apis.admissionregistration.v1alpha1.ServiceReference") +} +func (m *AdmissionHookClientConfig) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *AdmissionHookClientConfig) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Service.Size())) + n1, err := m.Service.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n1 + if m.CABundle != nil { + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.CABundle))) + i += copy(dAtA[i:], m.CABundle) + } + return i, nil +} + +func (m *ExternalAdmissionHook) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ExternalAdmissionHook) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.Name))) + i += copy(dAtA[i:], m.Name) + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.ClientConfig.Size())) + n2, err := m.ClientConfig.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n2 + if len(m.Rules) > 0 { + for _, msg := range m.Rules { + dAtA[i] = 0x1a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(msg.Size())) + n, err := msg.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n + } + } + if m.FailurePolicy != nil { + dAtA[i] = 0x22 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(*m.FailurePolicy))) + i += copy(dAtA[i:], *m.FailurePolicy) + } + return i, nil +} + +func (m *ExternalAdmissionHookConfiguration) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ExternalAdmissionHookConfiguration) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) + n3, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n3 + if len(m.ExternalAdmissionHooks) > 0 { + for _, msg := range m.ExternalAdmissionHooks { + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(msg.Size())) + n, err := msg.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n + } + } + return i, nil +} + +func (m *ExternalAdmissionHookConfigurationList) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ExternalAdmissionHookConfigurationList) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) + n4, err := m.ListMeta.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n4 + if len(m.Items) > 0 { + for _, msg := range m.Items { + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(msg.Size())) + n, err := msg.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n + } + } + return i, nil +} + +func (m *Initializer) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *Initializer) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.Name))) + i += copy(dAtA[i:], m.Name) + if len(m.Rules) > 0 { + for _, msg := range m.Rules { + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(msg.Size())) + n, err := msg.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + 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 +} + +func (m *InitializerConfiguration) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *InitializerConfiguration) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) + n5, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n5 + if len(m.Initializers) > 0 { + for _, msg := range m.Initializers { + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(msg.Size())) + n, err := msg.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n + } + } + return i, nil +} + +func (m *InitializerConfigurationList) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *InitializerConfigurationList) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) + n6, err := m.ListMeta.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n6 + if len(m.Items) > 0 { + for _, msg := range m.Items { + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(msg.Size())) + n, err := msg.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n + } + } + return i, nil +} + +func (m *Rule) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *Rule) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + if len(m.APIGroups) > 0 { + for _, s := range m.APIGroups { + dAtA[i] = 0xa + 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) + } + } + if len(m.APIVersions) > 0 { + for _, s := range m.APIVersions { + dAtA[i] = 0x12 + 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) + } + } + if len(m.Resources) > 0 { + for _, s := range m.Resources { + dAtA[i] = 0x1a + 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 +} + +func (m *RuleWithOperations) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *RuleWithOperations) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + if len(m.Operations) > 0 { + for _, s := range m.Operations { + dAtA[i] = 0xa + 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) + } + } + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Rule.Size())) + n7, err := m.Rule.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n7 + return i, nil +} + +func (m *ServiceReference) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ServiceReference) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.Namespace))) + i += copy(dAtA[i:], m.Namespace) + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.Name))) + i += copy(dAtA[i:], m.Name) + return i, nil +} + +func encodeFixed64Generated(dAtA []byte, offset int, v uint64) int { + dAtA[offset] = uint8(v) + dAtA[offset+1] = uint8(v >> 8) + dAtA[offset+2] = uint8(v >> 16) + dAtA[offset+3] = uint8(v >> 24) + dAtA[offset+4] = uint8(v >> 32) + dAtA[offset+5] = uint8(v >> 40) + dAtA[offset+6] = uint8(v >> 48) + dAtA[offset+7] = uint8(v >> 56) + return offset + 8 +} +func encodeFixed32Generated(dAtA []byte, offset int, v uint32) int { + dAtA[offset] = uint8(v) + dAtA[offset+1] = uint8(v >> 8) + dAtA[offset+2] = uint8(v >> 16) + dAtA[offset+3] = uint8(v >> 24) + return offset + 4 +} +func encodeVarintGenerated(dAtA []byte, offset int, v uint64) int { + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return offset + 1 +} +func (m *AdmissionHookClientConfig) Size() (n int) { + var l int + _ = l + l = m.Service.Size() + n += 1 + l + sovGenerated(uint64(l)) + if m.CABundle != nil { + l = len(m.CABundle) + n += 1 + l + sovGenerated(uint64(l)) + } + return n +} + +func (m *ExternalAdmissionHook) Size() (n int) { + var l int + _ = l + l = len(m.Name) + n += 1 + l + sovGenerated(uint64(l)) + l = m.ClientConfig.Size() + n += 1 + l + sovGenerated(uint64(l)) + if len(m.Rules) > 0 { + for _, e := range m.Rules { + l = e.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + } + if m.FailurePolicy != nil { + l = len(*m.FailurePolicy) + n += 1 + l + sovGenerated(uint64(l)) + } + return n +} + +func (m *ExternalAdmissionHookConfiguration) Size() (n int) { + var l int + _ = l + l = m.ObjectMeta.Size() + n += 1 + l + sovGenerated(uint64(l)) + if len(m.ExternalAdmissionHooks) > 0 { + for _, e := range m.ExternalAdmissionHooks { + l = e.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + } + return n +} + +func (m *ExternalAdmissionHookConfigurationList) Size() (n int) { + var l int + _ = l + l = m.ListMeta.Size() + n += 1 + l + sovGenerated(uint64(l)) + if len(m.Items) > 0 { + for _, e := range m.Items { + l = e.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + } + return n +} + +func (m *Initializer) Size() (n int) { + var l int + _ = l + l = len(m.Name) + n += 1 + l + sovGenerated(uint64(l)) + if len(m.Rules) > 0 { + for _, e := range m.Rules { + l = e.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + } + if m.FailurePolicy != nil { + l = len(*m.FailurePolicy) + n += 1 + l + sovGenerated(uint64(l)) + } + return n +} + +func (m *InitializerConfiguration) Size() (n int) { + var l int + _ = l + l = m.ObjectMeta.Size() + n += 1 + l + sovGenerated(uint64(l)) + if len(m.Initializers) > 0 { + for _, e := range m.Initializers { + l = e.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + } + return n +} + +func (m *InitializerConfigurationList) Size() (n int) { + var l int + _ = l + l = m.ListMeta.Size() + n += 1 + l + sovGenerated(uint64(l)) + if len(m.Items) > 0 { + for _, e := range m.Items { + l = e.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + } + return n +} + +func (m *Rule) Size() (n int) { + var l int + _ = l + if len(m.APIGroups) > 0 { + for _, s := range m.APIGroups { + l = len(s) + n += 1 + l + sovGenerated(uint64(l)) + } + } + if len(m.APIVersions) > 0 { + for _, s := range m.APIVersions { + l = len(s) + n += 1 + l + sovGenerated(uint64(l)) + } + } + if len(m.Resources) > 0 { + for _, s := range m.Resources { + l = len(s) + n += 1 + l + sovGenerated(uint64(l)) + } + } + return n +} + +func (m *RuleWithOperations) Size() (n int) { + var l int + _ = l + if len(m.Operations) > 0 { + for _, s := range m.Operations { + l = len(s) + n += 1 + l + sovGenerated(uint64(l)) + } + } + l = m.Rule.Size() + n += 1 + l + sovGenerated(uint64(l)) + return n +} + +func (m *ServiceReference) Size() (n int) { + var l int + _ = l + l = len(m.Namespace) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.Name) + n += 1 + l + sovGenerated(uint64(l)) + return n +} + +func sovGenerated(x uint64) (n int) { + for { + n++ + x >>= 7 + if x == 0 { + break + } + } + return n +} +func sozGenerated(x uint64) (n int) { + return sovGenerated(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *AdmissionHookClientConfig) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AdmissionHookClientConfig{`, + `Service:` + strings.Replace(strings.Replace(this.Service.String(), "ServiceReference", "ServiceReference", 1), `&`, ``, 1) + `,`, + `CABundle:` + valueToStringGenerated(this.CABundle) + `,`, + `}`, + }, "") + return s +} +func (this *ExternalAdmissionHook) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ExternalAdmissionHook{`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `ClientConfig:` + strings.Replace(strings.Replace(this.ClientConfig.String(), "AdmissionHookClientConfig", "AdmissionHookClientConfig", 1), `&`, ``, 1) + `,`, + `Rules:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.Rules), "RuleWithOperations", "RuleWithOperations", 1), `&`, ``, 1) + `,`, + `FailurePolicy:` + valueToStringGenerated(this.FailurePolicy) + `,`, + `}`, + }, "") + return s +} +func (this *ExternalAdmissionHookConfiguration) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ExternalAdmissionHookConfiguration{`, + `ObjectMeta:` + strings.Replace(strings.Replace(this.ObjectMeta.String(), "ObjectMeta", "k8s_io_apimachinery_pkg_apis_meta_v1.ObjectMeta", 1), `&`, ``, 1) + `,`, + `ExternalAdmissionHooks:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.ExternalAdmissionHooks), "ExternalAdmissionHook", "ExternalAdmissionHook", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func (this *ExternalAdmissionHookConfigurationList) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ExternalAdmissionHookConfigurationList{`, + `ListMeta:` + strings.Replace(strings.Replace(this.ListMeta.String(), "ListMeta", "k8s_io_apimachinery_pkg_apis_meta_v1.ListMeta", 1), `&`, ``, 1) + `,`, + `Items:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.Items), "ExternalAdmissionHookConfiguration", "ExternalAdmissionHookConfiguration", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func (this *Initializer) String() string { + if this == nil { + return "nil" + } + 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 +} +func (this *InitializerConfiguration) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&InitializerConfiguration{`, + `ObjectMeta:` + strings.Replace(strings.Replace(this.ObjectMeta.String(), "ObjectMeta", "k8s_io_apimachinery_pkg_apis_meta_v1.ObjectMeta", 1), `&`, ``, 1) + `,`, + `Initializers:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.Initializers), "Initializer", "Initializer", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func (this *InitializerConfigurationList) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&InitializerConfigurationList{`, + `ListMeta:` + strings.Replace(strings.Replace(this.ListMeta.String(), "ListMeta", "k8s_io_apimachinery_pkg_apis_meta_v1.ListMeta", 1), `&`, ``, 1) + `,`, + `Items:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.Items), "InitializerConfiguration", "InitializerConfiguration", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func (this *Rule) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Rule{`, + `APIGroups:` + fmt.Sprintf("%v", this.APIGroups) + `,`, + `APIVersions:` + fmt.Sprintf("%v", this.APIVersions) + `,`, + `Resources:` + fmt.Sprintf("%v", this.Resources) + `,`, + `}`, + }, "") + return s +} +func (this *RuleWithOperations) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&RuleWithOperations{`, + `Operations:` + fmt.Sprintf("%v", this.Operations) + `,`, + `Rule:` + strings.Replace(strings.Replace(this.Rule.String(), "Rule", "Rule", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func (this *ServiceReference) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ServiceReference{`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `}`, + }, "") + return s +} +func valueToStringGenerated(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *AdmissionHookClientConfig) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: AdmissionHookClientConfig: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: AdmissionHookClientConfig: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Service", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Service.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CABundle", wireType) + } + var byteLen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + byteLen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if byteLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + byteLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.CABundle = append(m.CABundle[:0], dAtA[iNdEx:postIndex]...) + if m.CABundle == nil { + m.CABundle = []byte{} + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ExternalAdmissionHook) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ExternalAdmissionHook: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ExternalAdmissionHook: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", 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.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ClientConfig", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.ClientConfig.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Rules", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Rules = append(m.Rules, RuleWithOperations{}) + if err := m.Rules[len(m.Rules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + 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:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ExternalAdmissionHookConfiguration) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ExternalAdmissionHookConfiguration: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ExternalAdmissionHookConfiguration: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectMeta", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.ObjectMeta.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ExternalAdmissionHooks", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ExternalAdmissionHooks = append(m.ExternalAdmissionHooks, ExternalAdmissionHook{}) + if err := m.ExternalAdmissionHooks[len(m.ExternalAdmissionHooks)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ExternalAdmissionHookConfigurationList) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ExternalAdmissionHookConfigurationList: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ExternalAdmissionHookConfigurationList: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ListMeta", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.ListMeta.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Items", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Items = append(m.Items, ExternalAdmissionHookConfiguration{}) + if err := m.Items[len(m.Items)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *Initializer) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: Initializer: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: Initializer: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", 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.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Rules", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Rules = append(m.Rules, Rule{}) + if err := m.Rules[len(m.Rules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + 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:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *InitializerConfiguration) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: InitializerConfiguration: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: InitializerConfiguration: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectMeta", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.ObjectMeta.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Initializers", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Initializers = append(m.Initializers, Initializer{}) + if err := m.Initializers[len(m.Initializers)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *InitializerConfigurationList) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: InitializerConfigurationList: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: InitializerConfigurationList: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ListMeta", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.ListMeta.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Items", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Items = append(m.Items, InitializerConfiguration{}) + if err := m.Items[len(m.Items)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *Rule) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: Rule: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: Rule: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field APIGroups", 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.APIGroups = append(m.APIGroups, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field APIVersions", 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.APIVersions = append(m.APIVersions, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Resources", 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.Resources = append(m.Resources, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *RuleWithOperations) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: RuleWithOperations: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: RuleWithOperations: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Operations", 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.Operations = append(m.Operations, OperationType(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Rule", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Rule.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ServiceReference) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ServiceReference: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ServiceReference: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespace", 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.Namespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", 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.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipGenerated(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenerated + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenerated + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + return iNdEx, nil + case 1: + iNdEx += 8 + return iNdEx, nil + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenerated + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + iNdEx += length + if length < 0 { + return 0, ErrInvalidLengthGenerated + } + return iNdEx, nil + case 3: + for { + var innerWire uint64 + var start int = iNdEx + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenerated + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + innerWire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + innerWireType := int(innerWire & 0x7) + if innerWireType == 4 { + break + } + next, err := skipGenerated(dAtA[start:]) + if err != nil { + return 0, err + } + iNdEx = start + next + } + return iNdEx, nil + case 4: + return iNdEx, nil + case 5: + iNdEx += 4 + return iNdEx, nil + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + } + panic("unreachable") +} + +var ( + ErrInvalidLengthGenerated = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowGenerated = fmt.Errorf("proto: integer overflow") +) + +func init() { + proto.RegisterFile("k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/generated.proto", fileDescriptorGenerated) +} + +var fileDescriptorGenerated = []byte{ + // 877 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x56, 0xcf, 0x6f, 0x1b, 0x45, + 0x14, 0xce, 0xd8, 0x8e, 0x6a, 0x8f, 0x6d, 0xb5, 0x1d, 0x41, 0x65, 0x22, 0xb4, 0x6b, 0xed, 0xa1, + 0xb2, 0x84, 0xd8, 0x25, 0x01, 0x21, 0x38, 0x55, 0xd9, 0x88, 0x82, 0x45, 0x7f, 0x44, 0xd3, 0x0a, + 0x24, 0x04, 0x12, 0x93, 0xf5, 0x8b, 0x3d, 0x78, 0x7f, 0x69, 0x66, 0xd6, 0x6a, 0x38, 0x55, 0x5c, + 0x41, 0x08, 0x89, 0x7f, 0x82, 0x2b, 0x37, 0x2e, 0xdc, 0x73, 0xec, 0xb1, 0x27, 0x8b, 0x6c, 0xff, + 0x07, 0x0e, 0xbd, 0x80, 0xf6, 0x97, 0x77, 0x5d, 0xdb, 0x6a, 0x54, 0x57, 0xbd, 0x65, 0xde, 0xdb, + 0xf7, 0xbd, 0xef, 0xfb, 0xf2, 0xde, 0x8c, 0xf1, 0x70, 0xfa, 0x89, 0x34, 0x79, 0x60, 0x4d, 0xa3, + 0x13, 0x10, 0x3e, 0x28, 0x90, 0x56, 0x38, 0x1d, 0x5b, 0x2c, 0xe4, 0xd2, 0x62, 0x23, 0x8f, 0x4b, + 0xc9, 0x03, 0x5f, 0xc0, 0x98, 0x4b, 0x25, 0x98, 0xe2, 0x81, 0x6f, 0xcd, 0xf6, 0x99, 0x1b, 0x4e, + 0xd8, 0xbe, 0x35, 0x06, 0x1f, 0x04, 0x53, 0x30, 0x32, 0x43, 0x11, 0xa8, 0x80, 0x7c, 0x9a, 0x41, + 0x99, 0x25, 0x94, 0x19, 0x4e, 0xc7, 0x66, 0x02, 0x65, 0xae, 0x85, 0x32, 0x0b, 0xa8, 0xbd, 0xf7, + 0xc7, 0x5c, 0x4d, 0xa2, 0x13, 0xd3, 0x09, 0x3c, 0x6b, 0x1c, 0x8c, 0x03, 0x2b, 0x45, 0x3c, 0x89, + 0x4e, 0xd3, 0x53, 0x7a, 0x48, 0xff, 0xca, 0x3a, 0xed, 0x7d, 0x94, 0x93, 0x66, 0x21, 0xf7, 0x98, + 0x33, 0xe1, 0x3e, 0x88, 0xb3, 0x92, 0xb6, 0x07, 0x8a, 0x59, 0xb3, 0x15, 0x7e, 0x7b, 0xd6, 0xa6, + 0x2a, 0x11, 0xf9, 0x8a, 0x7b, 0xb0, 0x52, 0xf0, 0xf1, 0xcb, 0x0a, 0xa4, 0x33, 0x01, 0x8f, 0xad, + 0xd4, 0x7d, 0xb8, 0xa9, 0x2e, 0x52, 0xdc, 0xb5, 0xb8, 0xaf, 0xa4, 0x12, 0x2f, 0x16, 0x19, 0x7f, + 0x23, 0xfc, 0xce, 0x61, 0xe1, 0xd2, 0x17, 0x41, 0x30, 0x3d, 0x72, 0x39, 0xf8, 0xea, 0x28, 0xf0, + 0x4f, 0xf9, 0x98, 0xcc, 0xf0, 0x15, 0x09, 0x62, 0xc6, 0x1d, 0xe8, 0xa1, 0x3e, 0x1a, 0xb4, 0x0f, + 0xbe, 0x34, 0x5f, 0xd9, 0x6d, 0xf3, 0x41, 0x86, 0x44, 0xe1, 0x14, 0x04, 0xf8, 0x0e, 0xd8, 0x57, + 0xcf, 0xe7, 0xfa, 0x4e, 0x3c, 0xd7, 0xaf, 0x14, 0x99, 0xa2, 0x19, 0x19, 0xe0, 0xa6, 0xc3, 0xec, + 0xc8, 0x1f, 0xb9, 0xd0, 0xab, 0xf5, 0xd1, 0xa0, 0x63, 0x77, 0xe2, 0xb9, 0xde, 0x3c, 0x3a, 0xcc, + 0x62, 0x74, 0x91, 0x35, 0x7e, 0xa9, 0xe3, 0xb7, 0x3f, 0x7b, 0xa4, 0x40, 0xf8, 0xcc, 0x5d, 0xd2, + 0x41, 0xfa, 0xb8, 0xe1, 0x33, 0x2f, 0x23, 0xde, 0xb2, 0x3b, 0x79, 0xaf, 0xc6, 0x3d, 0xe6, 0x01, + 0x4d, 0x33, 0xe4, 0x57, 0x84, 0x3b, 0x4e, 0x45, 0x6e, 0xda, 0xaa, 0x7d, 0xf0, 0x70, 0x0b, 0x8d, + 0x1b, 0xad, 0xb4, 0xdf, 0xca, 0x09, 0x74, 0xaa, 0x51, 0xba, 0xd4, 0x9f, 0x08, 0xbc, 0x2b, 0x22, + 0x17, 0x64, 0xaf, 0xde, 0xaf, 0x0f, 0xda, 0x07, 0x77, 0xb7, 0x20, 0x42, 0x23, 0x17, 0xbe, 0xe6, + 0x6a, 0x72, 0x3f, 0x84, 0x2c, 0x25, 0xed, 0x6e, 0xce, 0x60, 0x37, 0xc9, 0x49, 0x9a, 0xb5, 0x22, + 0x77, 0x70, 0xf7, 0x94, 0x71, 0x37, 0x12, 0x70, 0x1c, 0xb8, 0xdc, 0x39, 0xeb, 0x35, 0x52, 0xbf, + 0x6e, 0xc6, 0x73, 0xbd, 0x7b, 0xbb, 0x9a, 0x78, 0x3e, 0xd7, 0xaf, 0x2f, 0x05, 0x1e, 0x9e, 0x85, + 0x40, 0x97, 0x8b, 0x8d, 0x3f, 0x6b, 0xd8, 0x58, 0xfb, 0xef, 0xc8, 0x14, 0x46, 0x19, 0x17, 0xf2, + 0x3d, 0x6e, 0x26, 0xeb, 0x32, 0x62, 0x8a, 0xe5, 0x83, 0xf5, 0x41, 0xa1, 0xb5, 0x3a, 0xbd, 0xa5, + 0xda, 0xe4, 0x6b, 0x73, 0xb6, 0x6f, 0xde, 0x3f, 0xf9, 0x01, 0x1c, 0x75, 0x17, 0x14, 0xb3, 0x49, + 0x2e, 0x07, 0x97, 0x31, 0xba, 0x40, 0x25, 0x7f, 0x20, 0x7c, 0x03, 0xd6, 0x11, 0x91, 0xbd, 0x5a, + 0x6a, 0xee, 0xf1, 0x16, 0xe6, 0xae, 0x55, 0x68, 0x6b, 0x39, 0xa1, 0x1b, 0x6b, 0xd3, 0x92, 0x6e, + 0xe0, 0x63, 0xfc, 0x5c, 0xc3, 0x37, 0x5f, 0xee, 0xd9, 0x1d, 0x2e, 0x15, 0xf9, 0x76, 0xc5, 0x37, + 0xf3, 0x72, 0xbe, 0x25, 0xd5, 0xa9, 0x6b, 0xd7, 0x72, 0x92, 0xcd, 0x22, 0x52, 0xf1, 0xec, 0x27, + 0x84, 0x77, 0xb9, 0x02, 0xaf, 0xb0, 0xe8, 0xbb, 0xd7, 0x6d, 0xd1, 0x92, 0xa0, 0x72, 0x1e, 0x87, + 0x49, 0x4f, 0x9a, 0xb5, 0x36, 0x9e, 0x21, 0xdc, 0x1e, 0xfa, 0x5c, 0x71, 0xe6, 0xf2, 0x1f, 0x41, + 0x5c, 0x62, 0x8d, 0x47, 0xc5, 0xd6, 0x64, 0xac, 0x6f, 0x6d, 0xb9, 0x35, 0x97, 0xdd, 0x93, 0xfa, + 0x36, 0x7b, 0xf2, 0x1f, 0xc2, 0xbd, 0x8a, 0xca, 0x37, 0xbd, 0x1d, 0x8f, 0x11, 0xee, 0xf0, 0xb2, + 0x7d, 0x61, 0xdd, 0xed, 0x2d, 0xac, 0xab, 0xa8, 0x29, 0xef, 0xba, 0x4a, 0x50, 0xd2, 0xa5, 0x8e, + 0xc6, 0xbf, 0x08, 0xbf, 0xbb, 0xc9, 0x81, 0x37, 0x30, 0xeb, 0x8f, 0x96, 0x47, 0xfd, 0xc1, 0xeb, + 0x51, 0x7e, 0x99, 0x01, 0xff, 0x1d, 0xe1, 0x46, 0x32, 0x59, 0xe4, 0x3d, 0xdc, 0x62, 0x21, 0xff, + 0x5c, 0x04, 0x51, 0x28, 0x7b, 0xa8, 0x5f, 0x1f, 0xb4, 0xec, 0x6e, 0x3c, 0xd7, 0x5b, 0x87, 0xc7, + 0xc3, 0x2c, 0x48, 0xcb, 0x3c, 0xd9, 0xc7, 0x6d, 0x16, 0xf2, 0xaf, 0x40, 0x24, 0x3c, 0x32, 0xd6, + 0x2d, 0xfb, 0x6a, 0x3c, 0xd7, 0xdb, 0x87, 0xc7, 0xc3, 0x22, 0x4c, 0xab, 0xdf, 0x24, 0xf8, 0x02, + 0x64, 0x10, 0x09, 0x27, 0x7f, 0x51, 0x72, 0x7c, 0x5a, 0x04, 0x69, 0x99, 0x37, 0xfe, 0x42, 0x98, + 0xac, 0xbe, 0x19, 0xe4, 0x16, 0xc6, 0xc1, 0xe2, 0x94, 0x93, 0xd4, 0xd3, 0xb1, 0x5a, 0x44, 0x9f, + 0xcf, 0xf5, 0xee, 0xe2, 0x94, 0xce, 0x7a, 0xa5, 0x84, 0x30, 0xdc, 0x48, 0xf6, 0x27, 0x7f, 0x5a, + 0xb7, 0xde, 0xcd, 0xc5, 0xfe, 0x27, 0x27, 0x9a, 0x42, 0x1b, 0x80, 0xaf, 0xbd, 0xf8, 0xd3, 0x82, + 0x58, 0xb8, 0x95, 0xdc, 0x0d, 0x32, 0x64, 0x4e, 0x71, 0x75, 0x5c, 0xcf, 0x4b, 0x5b, 0xf7, 0x8a, + 0x04, 0x2d, 0xbf, 0x59, 0x5c, 0x33, 0xb5, 0x4d, 0xd7, 0x8c, 0x6d, 0x9e, 0x5f, 0x68, 0x3b, 0x4f, + 0x2e, 0xb4, 0x9d, 0xa7, 0x17, 0xda, 0xce, 0xe3, 0x58, 0x43, 0xe7, 0xb1, 0x86, 0x9e, 0xc4, 0x1a, + 0x7a, 0x1a, 0x6b, 0xe8, 0x9f, 0x58, 0x43, 0xbf, 0x3d, 0xd3, 0x76, 0xbe, 0x69, 0x16, 0x7c, 0xff, + 0x0f, 0x00, 0x00, 0xff, 0xff, 0x2c, 0x2c, 0x38, 0x31, 0xe3, 0x0a, 0x00, 0x00, +} diff --git a/vendor/k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/generated.proto b/vendor/k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/generated.proto new file mode 100644 index 00000000..44ae98f6 --- /dev/null +++ b/vendor/k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/generated.proto @@ -0,0 +1,203 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + + +// This file was autogenerated by go-to-protobuf. Do not edit it manually! + +syntax = 'proto2'; + +package k8s.io.client_go.pkg.apis.admissionregistration.v1alpha1; + +import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; +import "k8s.io/apimachinery/pkg/runtime/generated.proto"; +import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; +import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; + +// Package-wide variables from generator "generated". +option go_package = "v1alpha1"; + +// AdmissionHookClientConfig contains the information to make a TLS +// connection with the webhook +message AdmissionHookClientConfig { + // Service is a reference to the service for this webhook. If there is only + // one port open for the service, that port will be used. If there are multiple + // ports open, port 443 will be used if it is open, otherwise it is an error. + // Required + optional ServiceReference service = 1; + + // CABundle is a PEM encoded CA bundle which will be used to validate webhook's server certificate. + // Required + optional bytes caBundle = 2; +} + +// ExternalAdmissionHook describes an external admission webhook and the +// resources and operations it applies to. +message ExternalAdmissionHook { + // The name of the external admission webhook. + // Name should be fully qualified, e.g., imagepolicy.kubernetes.io, where + // "imagepolicy" is the name of the webhook, and kubernetes.io is the name + // of the organization. + // Required. + optional string name = 1; + + // ClientConfig defines how to communicate with the hook. + // Required + optional AdmissionHookClientConfig clientConfig = 2; + + // Rules describes what operations on what resources/subresources the webhook cares about. + // The webhook cares about an operation if it matches _any_ Rule. + repeated RuleWithOperations rules = 3; + + // FailurePolicy defines how unrecognized errors from the admission endpoint are handled - + // allowed values are Ignore or Fail. Defaults to Ignore. + // +optional + optional string failurePolicy = 4; +} + +// ExternalAdmissionHookConfiguration describes the configuration of initializers. +message ExternalAdmissionHookConfiguration { + // Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. + // +optional + optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; + + // ExternalAdmissionHooks is a list of external admission webhooks and the + // affected resources and operations. + // +optional + // +patchMergeKey=name + // +patchStrategy=merge + repeated ExternalAdmissionHook externalAdmissionHooks = 2; +} + +// ExternalAdmissionHookConfigurationList is a list of ExternalAdmissionHookConfiguration. +message ExternalAdmissionHookConfigurationList { + // Standard list metadata. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + // +optional + optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; + + // List of ExternalAdmissionHookConfiguration. + repeated ExternalAdmissionHookConfiguration items = 2; +} + +// Initializer describes the name and the failure policy of an initializer, and +// what resources it applies to. +message Initializer { + // 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 + optional string name = 1; + + // 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. + 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. +message InitializerConfiguration { + // Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. + // +optional + optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; + + // Initializers is a list of resources and their default initializers + // Order-sensitive. + // When merging multiple InitializerConfigurations, we sort the initializers + // from different InitializerConfigurations by the name of the + // InitializerConfigurations; the order of the initializers from the same + // InitializerConfiguration is preserved. + // +patchMergeKey=name + // +patchStrategy=merge + // +optional + repeated Initializer initializers = 2; +} + +// InitializerConfigurationList is a list of InitializerConfiguration. +message InitializerConfigurationList { + // Standard list metadata. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + // +optional + optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; + + // List of InitializerConfiguration. + repeated InitializerConfiguration items = 2; +} + +// Rule is a tuple of APIGroups, APIVersion, and Resources.It is recommended +// to make sure that all the tuple expansions are valid. +message Rule { + // APIGroups is the API groups the resources belong to. '*' is all groups. + // If '*' is present, the length of the slice must be one. + // Required. + repeated string apiGroups = 1; + + // APIVersions is the API versions the resources belong to. '*' is all versions. + // If '*' is present, the length of the slice must be one. + // Required. + repeated string apiVersions = 2; + + // Resources is a list of resources this rule applies to. + // + // For example: + // 'pods' means pods. + // 'pods/log' means the log subresource of pods. + // '*' means all resources, but not subresources. + // 'pods/*' means all subresources of pods. + // '*/scale' means all scale subresources. + // '*/*' means all resources and their subresources. + // + // If wildcard is present, the validation rule will ensure resources do not + // overlap with each other. + // + // Depending on the enclosing object, subresources might not be allowed. + // Required. + repeated string resources = 3; +} + +// RuleWithOperations is a tuple of Operations and Resources. It is recommended to make +// sure that all the tuple expansions are valid. +message RuleWithOperations { + // Operations is the operations the admission hook cares about - CREATE, UPDATE, or * + // for all operations. + // If '*' is present, the length of the slice must be one. + // Required. + repeated string operations = 1; + + // Rule is embedded, it describes other criteria of the rule, like + // APIGroups, APIVersions, Resources, etc. + optional Rule rule = 2; +} + +// ServiceReference holds a reference to Service.legacy.k8s.io +message ServiceReference { + // Namespace is the namespace of the service + // Required + optional string namespace = 1; + + // Name is the name of the service + // Required + optional string name = 2; +} + diff --git a/vendor/k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/register.go b/vendor/k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/register.go new file mode 100644 index 00000000..10fa4a16 --- /dev/null +++ b/vendor/k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/register.go @@ -0,0 +1,60 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1alpha1 + +import ( + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/apimachinery/pkg/runtime/schema" +) + +const GroupName = "admissionregistration.k8s.io" + +// SchemeGroupVersion is group version used to register these objects +var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1alpha1"} + +// Resource takes an unqualified resource and returns a Group qualified GroupResource +func Resource(resource string) schema.GroupResource { + return SchemeGroupVersion.WithResource(resource).GroupResource() +} + +var ( + // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. + // localSchemeBuilder and AddToScheme will stay in k8s.io/kubernetes. + SchemeBuilder runtime.SchemeBuilder + localSchemeBuilder = &SchemeBuilder + AddToScheme = localSchemeBuilder.AddToScheme +) + +func init() { + // We only register manually written functions here. The registration of the + // generated functions takes place in the generated files. The separation + // makes the code compile even when the generated files are missing. + localSchemeBuilder.Register(addKnownTypes, addDefaultingFuncs) +} + +// Adds the list of known types to scheme. +func addKnownTypes(scheme *runtime.Scheme) error { + scheme.AddKnownTypes(SchemeGroupVersion, + &InitializerConfiguration{}, + &InitializerConfigurationList{}, + &ExternalAdmissionHookConfiguration{}, + &ExternalAdmissionHookConfigurationList{}, + ) + metav1.AddToGroupVersion(scheme, SchemeGroupVersion) + return nil +} diff --git a/vendor/k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/types.generated.go b/vendor/k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/types.generated.go new file mode 100644 index 00000000..8a656373 --- /dev/null +++ b/vendor/k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/types.generated.go @@ -0,0 +1,4232 @@ +/* +Copyright 2016 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// ************************************************************ +// DO NOT EDIT. +// THIS FILE IS AUTO-GENERATED BY codecgen. +// ************************************************************ + +package v1alpha1 + +import ( + "errors" + "fmt" + codec1978 "github.com/ugorji/go/codec" + pkg1_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + pkg2_types "k8s.io/apimachinery/pkg/types" + "reflect" + "runtime" + time "time" +) + +const ( + // ----- content types ---- + codecSelferC_UTF81234 = 1 + codecSelferC_RAW1234 = 0 + // ----- value types used ---- + codecSelferValueTypeArray1234 = 10 + codecSelferValueTypeMap1234 = 9 + // ----- containerStateValues ---- + codecSelfer_containerMapKey1234 = 2 + codecSelfer_containerMapValue1234 = 3 + codecSelfer_containerMapEnd1234 = 4 + codecSelfer_containerArrayElem1234 = 6 + codecSelfer_containerArrayEnd1234 = 7 +) + +var ( + codecSelferBitsize1234 = uint8(reflect.TypeOf(uint(0)).Bits()) + codecSelferOnlyMapOrArrayEncodeToStructErr1234 = errors.New(`only encoded map or array can be decoded into a struct`) +) + +type codecSelfer1234 struct{} + +func init() { + if codec1978.GenVersion != 5 { + _, file, _, _ := runtime.Caller(0) + err := fmt.Errorf("codecgen version mismatch: current: %v, need %v. Re-generate file: %v", + 5, codec1978.GenVersion, file) + panic(err) + } + if false { // reference the types, but skip this branch at build/run time + var v0 pkg1_v1.TypeMeta + var v1 pkg2_types.UID + var v2 time.Time + _, _, _ = v0, v1, v2 + } +} + +func (x *InitializerConfiguration) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [4]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.Kind != "" + yyq2[1] = x.APIVersion != "" + yyq2[2] = true + yyq2[3] = len(x.Initializers) != 0 + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(4) + } else { + yynn2 = 0 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("kind")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("apiVersion")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yy10 := &x.ObjectMeta + yym11 := z.EncBinary() + _ = yym11 + if false { + } else if z.HasExtensions() && z.EncExt(yy10) { + } else { + z.EncFallback(yy10) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("metadata")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy12 := &x.ObjectMeta + yym13 := z.EncBinary() + _ = yym13 + if false { + } else if z.HasExtensions() && z.EncExt(yy12) { + } else { + z.EncFallback(yy12) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[3] { + if x.Initializers == nil { + r.EncodeNil() + } else { + yym15 := z.EncBinary() + _ = yym15 + if false { + } else { + h.encSliceInitializer(([]Initializer)(x.Initializers), e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[3] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("initializers")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Initializers == nil { + r.EncodeNil() + } else { + yym16 := z.EncBinary() + _ = yym16 + if false { + } else { + h.encSliceInitializer(([]Initializer)(x.Initializers), e) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *InitializerConfiguration) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *InitializerConfiguration) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "kind": + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv4 := &x.Kind + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "apiVersion": + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv6 := &x.APIVersion + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + case "metadata": + if r.TryDecodeAsNil() { + x.ObjectMeta = pkg1_v1.ObjectMeta{} + } else { + yyv8 := &x.ObjectMeta + yym9 := z.DecBinary() + _ = yym9 + if false { + } else if z.HasExtensions() && z.DecExt(yyv8) { + } else { + z.DecFallback(yyv8, false) + } + } + case "initializers": + if r.TryDecodeAsNil() { + x.Initializers = nil + } else { + yyv10 := &x.Initializers + yym11 := z.DecBinary() + _ = yym11 + if false { + } else { + h.decSliceInitializer((*[]Initializer)(yyv10), d) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *InitializerConfiguration) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj12 int + var yyb12 bool + var yyhl12 bool = l >= 0 + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv13 := &x.Kind + yym14 := z.DecBinary() + _ = yym14 + if false { + } else { + *((*string)(yyv13)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv15 := &x.APIVersion + yym16 := z.DecBinary() + _ = yym16 + if false { + } else { + *((*string)(yyv15)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ObjectMeta = pkg1_v1.ObjectMeta{} + } else { + yyv17 := &x.ObjectMeta + yym18 := z.DecBinary() + _ = yym18 + if false { + } else if z.HasExtensions() && z.DecExt(yyv17) { + } else { + z.DecFallback(yyv17, false) + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Initializers = nil + } else { + yyv19 := &x.Initializers + yym20 := z.DecBinary() + _ = yym20 + if false { + } else { + h.decSliceInitializer((*[]Initializer)(yyv19), d) + } + } + for { + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj12-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *InitializerConfigurationList) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [4]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.Kind != "" + yyq2[1] = x.APIVersion != "" + yyq2[2] = true + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(4) + } else { + yynn2 = 1 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("kind")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("apiVersion")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yy10 := &x.ListMeta + yym11 := z.EncBinary() + _ = yym11 + if false { + } else if z.HasExtensions() && z.EncExt(yy10) { + } else { + z.EncFallback(yy10) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("metadata")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy12 := &x.ListMeta + yym13 := z.EncBinary() + _ = yym13 + if false { + } else if z.HasExtensions() && z.EncExt(yy12) { + } else { + z.EncFallback(yy12) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if x.Items == nil { + r.EncodeNil() + } else { + yym15 := z.EncBinary() + _ = yym15 + if false { + } else { + h.encSliceInitializerConfiguration(([]InitializerConfiguration)(x.Items), e) + } + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("items")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Items == nil { + r.EncodeNil() + } else { + yym16 := z.EncBinary() + _ = yym16 + if false { + } else { + h.encSliceInitializerConfiguration(([]InitializerConfiguration)(x.Items), e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *InitializerConfigurationList) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *InitializerConfigurationList) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "kind": + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv4 := &x.Kind + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "apiVersion": + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv6 := &x.APIVersion + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + case "metadata": + if r.TryDecodeAsNil() { + x.ListMeta = pkg1_v1.ListMeta{} + } else { + yyv8 := &x.ListMeta + yym9 := z.DecBinary() + _ = yym9 + if false { + } else if z.HasExtensions() && z.DecExt(yyv8) { + } else { + z.DecFallback(yyv8, false) + } + } + case "items": + if r.TryDecodeAsNil() { + x.Items = nil + } else { + yyv10 := &x.Items + yym11 := z.DecBinary() + _ = yym11 + if false { + } else { + h.decSliceInitializerConfiguration((*[]InitializerConfiguration)(yyv10), d) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *InitializerConfigurationList) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj12 int + var yyb12 bool + var yyhl12 bool = l >= 0 + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv13 := &x.Kind + yym14 := z.DecBinary() + _ = yym14 + if false { + } else { + *((*string)(yyv13)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv15 := &x.APIVersion + yym16 := z.DecBinary() + _ = yym16 + if false { + } else { + *((*string)(yyv15)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ListMeta = pkg1_v1.ListMeta{} + } else { + yyv17 := &x.ListMeta + yym18 := z.DecBinary() + _ = yym18 + if false { + } else if z.HasExtensions() && z.DecExt(yyv17) { + } else { + z.DecFallback(yyv17, false) + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Items = nil + } else { + yyv19 := &x.Items + yym20 := z.DecBinary() + _ = yym20 + if false { + } else { + h.decSliceInitializerConfiguration((*[]InitializerConfiguration)(yyv19), d) + } + } + for { + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj12-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *Initializer) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [3]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) + } else { + yynn2 = 1 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Name)) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("name")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Name)) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + if x.Rules == nil { + r.EncodeNil() + } else { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + h.encSliceRule(([]Rule)(x.Rules), e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("rules")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Rules == nil { + r.EncodeNil() + } else { + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + h.encSliceRule(([]Rule)(x.Rules), e) + } + } + } + } + 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 { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *Initializer) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *Initializer) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "name": + if r.TryDecodeAsNil() { + x.Name = "" + } else { + yyv4 := &x.Name + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "rules": + if r.TryDecodeAsNil() { + x.Rules = nil + } else { + yyv6 := &x.Rules + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + 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 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +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 + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Name = "" + } else { + yyv10 := &x.Name + yym11 := z.DecBinary() + _ = yym11 + if false { + } else { + *((*string)(yyv10)) = r.DecodeString() + } + } + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Rules = nil + } else { + yyv12 := &x.Rules + yym13 := z.DecBinary() + _ = yym13 + if false { + } else { + h.decSliceRule((*[]Rule)(yyv12), 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 + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj9-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *Rule) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [3]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = len(x.APIGroups) != 0 + yyq2[1] = len(x.APIVersions) != 0 + yyq2[2] = len(x.Resources) != 0 + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(3) + } else { + yynn2 = 0 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + if x.APIGroups == nil { + r.EncodeNil() + } else { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + z.F.EncSliceStringV(x.APIGroups, false, e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("apiGroups")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.APIGroups == nil { + r.EncodeNil() + } else { + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + z.F.EncSliceStringV(x.APIGroups, false, e) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + if x.APIVersions == nil { + r.EncodeNil() + } else { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + z.F.EncSliceStringV(x.APIVersions, false, e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("apiVersions")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.APIVersions == nil { + r.EncodeNil() + } else { + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + z.F.EncSliceStringV(x.APIVersions, false, e) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + if x.Resources == nil { + r.EncodeNil() + } else { + yym10 := z.EncBinary() + _ = yym10 + if false { + } else { + z.F.EncSliceStringV(x.Resources, false, e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("resources")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Resources == nil { + r.EncodeNil() + } else { + yym11 := z.EncBinary() + _ = yym11 + if false { + } else { + z.F.EncSliceStringV(x.Resources, false, e) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *Rule) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *Rule) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "apiGroups": + if r.TryDecodeAsNil() { + x.APIGroups = nil + } else { + yyv4 := &x.APIGroups + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + z.F.DecSliceStringX(yyv4, false, d) + } + } + case "apiVersions": + if r.TryDecodeAsNil() { + x.APIVersions = nil + } else { + yyv6 := &x.APIVersions + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + z.F.DecSliceStringX(yyv6, false, d) + } + } + case "resources": + if r.TryDecodeAsNil() { + x.Resources = nil + } else { + yyv8 := &x.Resources + yym9 := z.DecBinary() + _ = yym9 + if false { + } else { + z.F.DecSliceStringX(yyv8, false, d) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *Rule) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj10 int + var yyb10 bool + var yyhl10 bool = l >= 0 + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l + } else { + yyb10 = r.CheckBreak() + } + if yyb10 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.APIGroups = nil + } else { + yyv11 := &x.APIGroups + yym12 := z.DecBinary() + _ = yym12 + if false { + } else { + z.F.DecSliceStringX(yyv11, false, d) + } + } + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l + } else { + yyb10 = r.CheckBreak() + } + if yyb10 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.APIVersions = nil + } else { + yyv13 := &x.APIVersions + yym14 := z.DecBinary() + _ = yym14 + if false { + } else { + z.F.DecSliceStringX(yyv13, false, d) + } + } + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l + } else { + yyb10 = r.CheckBreak() + } + if yyb10 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Resources = nil + } else { + yyv15 := &x.Resources + yym16 := z.DecBinary() + _ = yym16 + if false { + } else { + z.F.DecSliceStringX(yyv15, false, d) + } + } + for { + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l + } else { + yyb10 = r.CheckBreak() + } + if yyb10 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj10-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x FailurePolicyType) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x)) + } +} + +func (x *FailurePolicyType) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + *((*string)(x)) = r.DecodeString() + } +} + +func (x *ExternalAdmissionHookConfiguration) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [4]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.Kind != "" + yyq2[1] = x.APIVersion != "" + yyq2[2] = true + yyq2[3] = len(x.ExternalAdmissionHooks) != 0 + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(4) + } else { + yynn2 = 0 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("kind")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("apiVersion")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yy10 := &x.ObjectMeta + yym11 := z.EncBinary() + _ = yym11 + if false { + } else if z.HasExtensions() && z.EncExt(yy10) { + } else { + z.EncFallback(yy10) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("metadata")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy12 := &x.ObjectMeta + yym13 := z.EncBinary() + _ = yym13 + if false { + } else if z.HasExtensions() && z.EncExt(yy12) { + } else { + z.EncFallback(yy12) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[3] { + if x.ExternalAdmissionHooks == nil { + r.EncodeNil() + } else { + yym15 := z.EncBinary() + _ = yym15 + if false { + } else { + h.encSliceExternalAdmissionHook(([]ExternalAdmissionHook)(x.ExternalAdmissionHooks), e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[3] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("externalAdmissionHooks")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.ExternalAdmissionHooks == nil { + r.EncodeNil() + } else { + yym16 := z.EncBinary() + _ = yym16 + if false { + } else { + h.encSliceExternalAdmissionHook(([]ExternalAdmissionHook)(x.ExternalAdmissionHooks), e) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *ExternalAdmissionHookConfiguration) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *ExternalAdmissionHookConfiguration) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "kind": + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv4 := &x.Kind + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "apiVersion": + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv6 := &x.APIVersion + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + case "metadata": + if r.TryDecodeAsNil() { + x.ObjectMeta = pkg1_v1.ObjectMeta{} + } else { + yyv8 := &x.ObjectMeta + yym9 := z.DecBinary() + _ = yym9 + if false { + } else if z.HasExtensions() && z.DecExt(yyv8) { + } else { + z.DecFallback(yyv8, false) + } + } + case "externalAdmissionHooks": + if r.TryDecodeAsNil() { + x.ExternalAdmissionHooks = nil + } else { + yyv10 := &x.ExternalAdmissionHooks + yym11 := z.DecBinary() + _ = yym11 + if false { + } else { + h.decSliceExternalAdmissionHook((*[]ExternalAdmissionHook)(yyv10), d) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *ExternalAdmissionHookConfiguration) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj12 int + var yyb12 bool + var yyhl12 bool = l >= 0 + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv13 := &x.Kind + yym14 := z.DecBinary() + _ = yym14 + if false { + } else { + *((*string)(yyv13)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv15 := &x.APIVersion + yym16 := z.DecBinary() + _ = yym16 + if false { + } else { + *((*string)(yyv15)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ObjectMeta = pkg1_v1.ObjectMeta{} + } else { + yyv17 := &x.ObjectMeta + yym18 := z.DecBinary() + _ = yym18 + if false { + } else if z.HasExtensions() && z.DecExt(yyv17) { + } else { + z.DecFallback(yyv17, false) + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ExternalAdmissionHooks = nil + } else { + yyv19 := &x.ExternalAdmissionHooks + yym20 := z.DecBinary() + _ = yym20 + if false { + } else { + h.decSliceExternalAdmissionHook((*[]ExternalAdmissionHook)(yyv19), d) + } + } + for { + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj12-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *ExternalAdmissionHookConfigurationList) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [4]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.Kind != "" + yyq2[1] = x.APIVersion != "" + yyq2[2] = true + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(4) + } else { + yynn2 = 1 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("kind")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("apiVersion")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yy10 := &x.ListMeta + yym11 := z.EncBinary() + _ = yym11 + if false { + } else if z.HasExtensions() && z.EncExt(yy10) { + } else { + z.EncFallback(yy10) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("metadata")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy12 := &x.ListMeta + yym13 := z.EncBinary() + _ = yym13 + if false { + } else if z.HasExtensions() && z.EncExt(yy12) { + } else { + z.EncFallback(yy12) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if x.Items == nil { + r.EncodeNil() + } else { + yym15 := z.EncBinary() + _ = yym15 + if false { + } else { + h.encSliceExternalAdmissionHookConfiguration(([]ExternalAdmissionHookConfiguration)(x.Items), e) + } + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("items")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Items == nil { + r.EncodeNil() + } else { + yym16 := z.EncBinary() + _ = yym16 + if false { + } else { + h.encSliceExternalAdmissionHookConfiguration(([]ExternalAdmissionHookConfiguration)(x.Items), e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *ExternalAdmissionHookConfigurationList) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *ExternalAdmissionHookConfigurationList) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "kind": + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv4 := &x.Kind + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "apiVersion": + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv6 := &x.APIVersion + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + case "metadata": + if r.TryDecodeAsNil() { + x.ListMeta = pkg1_v1.ListMeta{} + } else { + yyv8 := &x.ListMeta + yym9 := z.DecBinary() + _ = yym9 + if false { + } else if z.HasExtensions() && z.DecExt(yyv8) { + } else { + z.DecFallback(yyv8, false) + } + } + case "items": + if r.TryDecodeAsNil() { + x.Items = nil + } else { + yyv10 := &x.Items + yym11 := z.DecBinary() + _ = yym11 + if false { + } else { + h.decSliceExternalAdmissionHookConfiguration((*[]ExternalAdmissionHookConfiguration)(yyv10), d) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *ExternalAdmissionHookConfigurationList) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj12 int + var yyb12 bool + var yyhl12 bool = l >= 0 + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv13 := &x.Kind + yym14 := z.DecBinary() + _ = yym14 + if false { + } else { + *((*string)(yyv13)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv15 := &x.APIVersion + yym16 := z.DecBinary() + _ = yym16 + if false { + } else { + *((*string)(yyv15)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ListMeta = pkg1_v1.ListMeta{} + } else { + yyv17 := &x.ListMeta + yym18 := z.DecBinary() + _ = yym18 + if false { + } else if z.HasExtensions() && z.DecExt(yyv17) { + } else { + z.DecFallback(yyv17, false) + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Items = nil + } else { + yyv19 := &x.Items + yym20 := z.DecBinary() + _ = yym20 + if false { + } else { + h.decSliceExternalAdmissionHookConfiguration((*[]ExternalAdmissionHookConfiguration)(yyv19), d) + } + } + for { + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj12-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *ExternalAdmissionHook) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [4]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[2] = len(x.Rules) != 0 + yyq2[3] = x.FailurePolicy != nil + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(4) + } else { + yynn2 = 2 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Name)) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("name")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Name)) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy7 := &x.ClientConfig + yy7.CodecEncodeSelf(e) + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("clientConfig")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy9 := &x.ClientConfig + yy9.CodecEncodeSelf(e) + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + if x.Rules == nil { + r.EncodeNil() + } else { + yym12 := z.EncBinary() + _ = yym12 + if false { + } else { + h.encSliceRuleWithOperations(([]RuleWithOperations)(x.Rules), e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("rules")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Rules == nil { + r.EncodeNil() + } else { + yym13 := z.EncBinary() + _ = yym13 + if false { + } else { + h.encSliceRuleWithOperations(([]RuleWithOperations)(x.Rules), e) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[3] { + if x.FailurePolicy == nil { + r.EncodeNil() + } else { + yy15 := *x.FailurePolicy + yy15.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[3] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("failurePolicy")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.FailurePolicy == nil { + r.EncodeNil() + } else { + yy17 := *x.FailurePolicy + yy17.CodecEncodeSelf(e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *ExternalAdmissionHook) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *ExternalAdmissionHook) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "name": + if r.TryDecodeAsNil() { + x.Name = "" + } else { + yyv4 := &x.Name + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "clientConfig": + if r.TryDecodeAsNil() { + x.ClientConfig = AdmissionHookClientConfig{} + } else { + yyv6 := &x.ClientConfig + yyv6.CodecDecodeSelf(d) + } + case "rules": + if r.TryDecodeAsNil() { + x.Rules = nil + } else { + yyv7 := &x.Rules + yym8 := z.DecBinary() + _ = yym8 + if false { + } else { + h.decSliceRuleWithOperations((*[]RuleWithOperations)(yyv7), 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 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *ExternalAdmissionHook) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj10 int + var yyb10 bool + var yyhl10 bool = l >= 0 + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l + } else { + yyb10 = r.CheckBreak() + } + if yyb10 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Name = "" + } else { + yyv11 := &x.Name + yym12 := z.DecBinary() + _ = yym12 + if false { + } else { + *((*string)(yyv11)) = r.DecodeString() + } + } + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l + } else { + yyb10 = r.CheckBreak() + } + if yyb10 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ClientConfig = AdmissionHookClientConfig{} + } else { + yyv13 := &x.ClientConfig + yyv13.CodecDecodeSelf(d) + } + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l + } else { + yyb10 = r.CheckBreak() + } + if yyb10 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Rules = nil + } else { + yyv14 := &x.Rules + yym15 := z.DecBinary() + _ = yym15 + if false { + } else { + h.decSliceRuleWithOperations((*[]RuleWithOperations)(yyv14), d) + } + } + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l + } else { + yyb10 = r.CheckBreak() + } + if yyb10 { + 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 { + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l + } else { + yyb10 = r.CheckBreak() + } + if yyb10 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj10-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *RuleWithOperations) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [4]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = len(x.Operations) != 0 + yyq2[1] = len(x.APIGroups) != 0 + yyq2[2] = len(x.APIVersions) != 0 + yyq2[3] = len(x.Resources) != 0 + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(4) + } else { + yynn2 = 0 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + if x.Operations == nil { + r.EncodeNil() + } else { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + h.encSliceOperationType(([]OperationType)(x.Operations), e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("operations")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Operations == nil { + r.EncodeNil() + } else { + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + h.encSliceOperationType(([]OperationType)(x.Operations), e) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + if x.APIGroups == nil { + r.EncodeNil() + } else { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + z.F.EncSliceStringV(x.APIGroups, false, e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("apiGroups")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.APIGroups == nil { + r.EncodeNil() + } else { + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + z.F.EncSliceStringV(x.APIGroups, false, e) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + if x.APIVersions == nil { + r.EncodeNil() + } else { + yym10 := z.EncBinary() + _ = yym10 + if false { + } else { + z.F.EncSliceStringV(x.APIVersions, false, e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("apiVersions")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.APIVersions == nil { + r.EncodeNil() + } else { + yym11 := z.EncBinary() + _ = yym11 + if false { + } else { + z.F.EncSliceStringV(x.APIVersions, false, e) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[3] { + if x.Resources == nil { + r.EncodeNil() + } else { + yym13 := z.EncBinary() + _ = yym13 + if false { + } else { + z.F.EncSliceStringV(x.Resources, false, e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[3] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("resources")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Resources == nil { + r.EncodeNil() + } else { + yym14 := z.EncBinary() + _ = yym14 + if false { + } else { + z.F.EncSliceStringV(x.Resources, false, e) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *RuleWithOperations) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *RuleWithOperations) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "operations": + if r.TryDecodeAsNil() { + x.Operations = nil + } else { + yyv4 := &x.Operations + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + h.decSliceOperationType((*[]OperationType)(yyv4), d) + } + } + case "apiGroups": + if r.TryDecodeAsNil() { + x.APIGroups = nil + } else { + yyv6 := &x.APIGroups + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + z.F.DecSliceStringX(yyv6, false, d) + } + } + case "apiVersions": + if r.TryDecodeAsNil() { + x.APIVersions = nil + } else { + yyv8 := &x.APIVersions + yym9 := z.DecBinary() + _ = yym9 + if false { + } else { + z.F.DecSliceStringX(yyv8, false, d) + } + } + case "resources": + if r.TryDecodeAsNil() { + x.Resources = nil + } else { + yyv10 := &x.Resources + yym11 := z.DecBinary() + _ = yym11 + if false { + } else { + z.F.DecSliceStringX(yyv10, false, d) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *RuleWithOperations) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj12 int + var yyb12 bool + var yyhl12 bool = l >= 0 + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Operations = nil + } else { + yyv13 := &x.Operations + yym14 := z.DecBinary() + _ = yym14 + if false { + } else { + h.decSliceOperationType((*[]OperationType)(yyv13), d) + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.APIGroups = nil + } else { + yyv15 := &x.APIGroups + yym16 := z.DecBinary() + _ = yym16 + if false { + } else { + z.F.DecSliceStringX(yyv15, false, d) + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.APIVersions = nil + } else { + yyv17 := &x.APIVersions + yym18 := z.DecBinary() + _ = yym18 + if false { + } else { + z.F.DecSliceStringX(yyv17, false, d) + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Resources = nil + } else { + yyv19 := &x.Resources + yym20 := z.DecBinary() + _ = yym20 + if false { + } else { + z.F.DecSliceStringX(yyv19, false, d) + } + } + for { + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj12-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x OperationType) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x)) + } +} + +func (x *OperationType) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + *((*string)(x)) = r.DecodeString() + } +} + +func (x *AdmissionHookClientConfig) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [2]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(2) + } else { + yynn2 = 2 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy4 := &x.Service + yy4.CodecEncodeSelf(e) + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("service")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy6 := &x.Service + yy6.CodecEncodeSelf(e) + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if x.CABundle == nil { + r.EncodeNil() + } else { + yym9 := z.EncBinary() + _ = yym9 + if false { + } else { + r.EncodeStringBytes(codecSelferC_RAW1234, []byte(x.CABundle)) + } + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("caBundle")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.CABundle == nil { + r.EncodeNil() + } else { + yym10 := z.EncBinary() + _ = yym10 + if false { + } else { + r.EncodeStringBytes(codecSelferC_RAW1234, []byte(x.CABundle)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *AdmissionHookClientConfig) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *AdmissionHookClientConfig) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "service": + if r.TryDecodeAsNil() { + x.Service = ServiceReference{} + } else { + yyv4 := &x.Service + yyv4.CodecDecodeSelf(d) + } + case "caBundle": + if r.TryDecodeAsNil() { + x.CABundle = nil + } else { + yyv5 := &x.CABundle + yym6 := z.DecBinary() + _ = yym6 + if false { + } else { + *yyv5 = r.DecodeBytes(*(*[]byte)(yyv5), false, false) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *AdmissionHookClientConfig) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj7 int + var yyb7 bool + var yyhl7 bool = l >= 0 + yyj7++ + if yyhl7 { + yyb7 = yyj7 > l + } else { + yyb7 = r.CheckBreak() + } + if yyb7 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Service = ServiceReference{} + } else { + yyv8 := &x.Service + yyv8.CodecDecodeSelf(d) + } + yyj7++ + if yyhl7 { + yyb7 = yyj7 > l + } else { + yyb7 = r.CheckBreak() + } + if yyb7 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.CABundle = nil + } else { + yyv9 := &x.CABundle + yym10 := z.DecBinary() + _ = yym10 + if false { + } else { + *yyv9 = r.DecodeBytes(*(*[]byte)(yyv9), false, false) + } + } + for { + yyj7++ + if yyhl7 { + yyb7 = yyj7 > l + } else { + yyb7 = r.CheckBreak() + } + if yyb7 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj7-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *ServiceReference) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [2]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(2) + } else { + yynn2 = 2 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Namespace)) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("namespace")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Namespace)) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Name)) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("name")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Name)) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *ServiceReference) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *ServiceReference) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "namespace": + if r.TryDecodeAsNil() { + x.Namespace = "" + } else { + yyv4 := &x.Namespace + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "name": + if r.TryDecodeAsNil() { + x.Name = "" + } else { + yyv6 := &x.Name + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *ServiceReference) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj8 int + var yyb8 bool + var yyhl8 bool = l >= 0 + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Namespace = "" + } else { + yyv9 := &x.Namespace + yym10 := z.DecBinary() + _ = yym10 + if false { + } else { + *((*string)(yyv9)) = r.DecodeString() + } + } + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Name = "" + } else { + yyv11 := &x.Name + yym12 := z.DecBinary() + _ = yym12 + if false { + } else { + *((*string)(yyv11)) = r.DecodeString() + } + } + for { + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj8-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) encSliceInitializer(v []Initializer, e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + r.EncodeArrayStart(len(v)) + for _, yyv1 := range v { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy2 := &yyv1 + yy2.CodecEncodeSelf(e) + } + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) decSliceInitializer(v *[]Initializer, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + + yyv1 := *v + yyh1, yyl1 := z.DecSliceHelperStart() + var yyc1 bool + _ = yyc1 + if yyl1 == 0 { + if yyv1 == nil { + yyv1 = []Initializer{} + yyc1 = true + } else if len(yyv1) != 0 { + yyv1 = yyv1[:0] + yyc1 = true + } + } else if yyl1 > 0 { + var yyrr1, yyrl1 int + var yyrt1 bool + _, _ = yyrl1, yyrt1 + yyrr1 = yyl1 // len(yyv1) + if yyl1 > cap(yyv1) { + + yyrg1 := len(yyv1) > 0 + yyv21 := yyv1 + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 48) + if yyrt1 { + if yyrl1 <= cap(yyv1) { + yyv1 = yyv1[:yyrl1] + } else { + yyv1 = make([]Initializer, yyrl1) + } + } else { + yyv1 = make([]Initializer, yyrl1) + } + yyc1 = true + yyrr1 = len(yyv1) + if yyrg1 { + copy(yyv1, yyv21) + } + } else if yyl1 != len(yyv1) { + yyv1 = yyv1[:yyl1] + yyc1 = true + } + yyj1 := 0 + for ; yyj1 < yyrr1; yyj1++ { + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = Initializer{} + } else { + yyv2 := &yyv1[yyj1] + yyv2.CodecDecodeSelf(d) + } + + } + if yyrt1 { + for ; yyj1 < yyl1; yyj1++ { + yyv1 = append(yyv1, Initializer{}) + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = Initializer{} + } else { + yyv3 := &yyv1[yyj1] + yyv3.CodecDecodeSelf(d) + } + + } + } + + } else { + yyj1 := 0 + for ; !r.CheckBreak(); yyj1++ { + + if yyj1 >= len(yyv1) { + yyv1 = append(yyv1, Initializer{}) // var yyz1 Initializer + yyc1 = true + } + yyh1.ElemContainerState(yyj1) + if yyj1 < len(yyv1) { + if r.TryDecodeAsNil() { + yyv1[yyj1] = Initializer{} + } else { + yyv4 := &yyv1[yyj1] + yyv4.CodecDecodeSelf(d) + } + + } else { + z.DecSwallow() + } + + } + if yyj1 < len(yyv1) { + yyv1 = yyv1[:yyj1] + yyc1 = true + } else if yyj1 == 0 && yyv1 == nil { + yyv1 = []Initializer{} + yyc1 = true + } + } + yyh1.End() + if yyc1 { + *v = yyv1 + } +} + +func (x codecSelfer1234) encSliceInitializerConfiguration(v []InitializerConfiguration, e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + r.EncodeArrayStart(len(v)) + for _, yyv1 := range v { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy2 := &yyv1 + yy2.CodecEncodeSelf(e) + } + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) decSliceInitializerConfiguration(v *[]InitializerConfiguration, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + + yyv1 := *v + yyh1, yyl1 := z.DecSliceHelperStart() + var yyc1 bool + _ = yyc1 + if yyl1 == 0 { + if yyv1 == nil { + yyv1 = []InitializerConfiguration{} + yyc1 = true + } else if len(yyv1) != 0 { + yyv1 = yyv1[:0] + yyc1 = true + } + } else if yyl1 > 0 { + var yyrr1, yyrl1 int + var yyrt1 bool + _, _ = yyrl1, yyrt1 + yyrr1 = yyl1 // len(yyv1) + if yyl1 > cap(yyv1) { + + yyrg1 := len(yyv1) > 0 + yyv21 := yyv1 + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 288) + if yyrt1 { + if yyrl1 <= cap(yyv1) { + yyv1 = yyv1[:yyrl1] + } else { + yyv1 = make([]InitializerConfiguration, yyrl1) + } + } else { + yyv1 = make([]InitializerConfiguration, yyrl1) + } + yyc1 = true + yyrr1 = len(yyv1) + if yyrg1 { + copy(yyv1, yyv21) + } + } else if yyl1 != len(yyv1) { + yyv1 = yyv1[:yyl1] + yyc1 = true + } + yyj1 := 0 + for ; yyj1 < yyrr1; yyj1++ { + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = InitializerConfiguration{} + } else { + yyv2 := &yyv1[yyj1] + yyv2.CodecDecodeSelf(d) + } + + } + if yyrt1 { + for ; yyj1 < yyl1; yyj1++ { + yyv1 = append(yyv1, InitializerConfiguration{}) + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = InitializerConfiguration{} + } else { + yyv3 := &yyv1[yyj1] + yyv3.CodecDecodeSelf(d) + } + + } + } + + } else { + yyj1 := 0 + for ; !r.CheckBreak(); yyj1++ { + + if yyj1 >= len(yyv1) { + yyv1 = append(yyv1, InitializerConfiguration{}) // var yyz1 InitializerConfiguration + yyc1 = true + } + yyh1.ElemContainerState(yyj1) + if yyj1 < len(yyv1) { + if r.TryDecodeAsNil() { + yyv1[yyj1] = InitializerConfiguration{} + } else { + yyv4 := &yyv1[yyj1] + yyv4.CodecDecodeSelf(d) + } + + } else { + z.DecSwallow() + } + + } + if yyj1 < len(yyv1) { + yyv1 = yyv1[:yyj1] + yyc1 = true + } else if yyj1 == 0 && yyv1 == nil { + yyv1 = []InitializerConfiguration{} + yyc1 = true + } + } + yyh1.End() + if yyc1 { + *v = yyv1 + } +} + +func (x codecSelfer1234) encSliceRule(v []Rule, e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + r.EncodeArrayStart(len(v)) + for _, yyv1 := range v { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy2 := &yyv1 + yy2.CodecEncodeSelf(e) + } + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) decSliceRule(v *[]Rule, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + + yyv1 := *v + yyh1, yyl1 := z.DecSliceHelperStart() + var yyc1 bool + _ = yyc1 + if yyl1 == 0 { + if yyv1 == nil { + yyv1 = []Rule{} + yyc1 = true + } else if len(yyv1) != 0 { + yyv1 = yyv1[:0] + yyc1 = true + } + } else if yyl1 > 0 { + var yyrr1, yyrl1 int + var yyrt1 bool + _, _ = yyrl1, yyrt1 + yyrr1 = yyl1 // len(yyv1) + if yyl1 > cap(yyv1) { + + yyrg1 := len(yyv1) > 0 + yyv21 := yyv1 + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 72) + if yyrt1 { + if yyrl1 <= cap(yyv1) { + yyv1 = yyv1[:yyrl1] + } else { + yyv1 = make([]Rule, yyrl1) + } + } else { + yyv1 = make([]Rule, yyrl1) + } + yyc1 = true + yyrr1 = len(yyv1) + if yyrg1 { + copy(yyv1, yyv21) + } + } else if yyl1 != len(yyv1) { + yyv1 = yyv1[:yyl1] + yyc1 = true + } + yyj1 := 0 + for ; yyj1 < yyrr1; yyj1++ { + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = Rule{} + } else { + yyv2 := &yyv1[yyj1] + yyv2.CodecDecodeSelf(d) + } + + } + if yyrt1 { + for ; yyj1 < yyl1; yyj1++ { + yyv1 = append(yyv1, Rule{}) + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = Rule{} + } else { + yyv3 := &yyv1[yyj1] + yyv3.CodecDecodeSelf(d) + } + + } + } + + } else { + yyj1 := 0 + for ; !r.CheckBreak(); yyj1++ { + + if yyj1 >= len(yyv1) { + yyv1 = append(yyv1, Rule{}) // var yyz1 Rule + yyc1 = true + } + yyh1.ElemContainerState(yyj1) + if yyj1 < len(yyv1) { + if r.TryDecodeAsNil() { + yyv1[yyj1] = Rule{} + } else { + yyv4 := &yyv1[yyj1] + yyv4.CodecDecodeSelf(d) + } + + } else { + z.DecSwallow() + } + + } + if yyj1 < len(yyv1) { + yyv1 = yyv1[:yyj1] + yyc1 = true + } else if yyj1 == 0 && yyv1 == nil { + yyv1 = []Rule{} + yyc1 = true + } + } + yyh1.End() + if yyc1 { + *v = yyv1 + } +} + +func (x codecSelfer1234) encSliceExternalAdmissionHook(v []ExternalAdmissionHook, e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + r.EncodeArrayStart(len(v)) + for _, yyv1 := range v { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy2 := &yyv1 + yy2.CodecEncodeSelf(e) + } + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) decSliceExternalAdmissionHook(v *[]ExternalAdmissionHook, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + + yyv1 := *v + yyh1, yyl1 := z.DecSliceHelperStart() + var yyc1 bool + _ = yyc1 + if yyl1 == 0 { + if yyv1 == nil { + yyv1 = []ExternalAdmissionHook{} + yyc1 = true + } else if len(yyv1) != 0 { + yyv1 = yyv1[:0] + yyc1 = true + } + } else if yyl1 > 0 { + var yyrr1, yyrl1 int + var yyrt1 bool + _, _ = yyrl1, yyrt1 + yyrr1 = yyl1 // len(yyv1) + if yyl1 > cap(yyv1) { + + yyrg1 := len(yyv1) > 0 + yyv21 := yyv1 + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 104) + if yyrt1 { + if yyrl1 <= cap(yyv1) { + yyv1 = yyv1[:yyrl1] + } else { + yyv1 = make([]ExternalAdmissionHook, yyrl1) + } + } else { + yyv1 = make([]ExternalAdmissionHook, yyrl1) + } + yyc1 = true + yyrr1 = len(yyv1) + if yyrg1 { + copy(yyv1, yyv21) + } + } else if yyl1 != len(yyv1) { + yyv1 = yyv1[:yyl1] + yyc1 = true + } + yyj1 := 0 + for ; yyj1 < yyrr1; yyj1++ { + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = ExternalAdmissionHook{} + } else { + yyv2 := &yyv1[yyj1] + yyv2.CodecDecodeSelf(d) + } + + } + if yyrt1 { + for ; yyj1 < yyl1; yyj1++ { + yyv1 = append(yyv1, ExternalAdmissionHook{}) + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = ExternalAdmissionHook{} + } else { + yyv3 := &yyv1[yyj1] + yyv3.CodecDecodeSelf(d) + } + + } + } + + } else { + yyj1 := 0 + for ; !r.CheckBreak(); yyj1++ { + + if yyj1 >= len(yyv1) { + yyv1 = append(yyv1, ExternalAdmissionHook{}) // var yyz1 ExternalAdmissionHook + yyc1 = true + } + yyh1.ElemContainerState(yyj1) + if yyj1 < len(yyv1) { + if r.TryDecodeAsNil() { + yyv1[yyj1] = ExternalAdmissionHook{} + } else { + yyv4 := &yyv1[yyj1] + yyv4.CodecDecodeSelf(d) + } + + } else { + z.DecSwallow() + } + + } + if yyj1 < len(yyv1) { + yyv1 = yyv1[:yyj1] + yyc1 = true + } else if yyj1 == 0 && yyv1 == nil { + yyv1 = []ExternalAdmissionHook{} + yyc1 = true + } + } + yyh1.End() + if yyc1 { + *v = yyv1 + } +} + +func (x codecSelfer1234) encSliceExternalAdmissionHookConfiguration(v []ExternalAdmissionHookConfiguration, e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + r.EncodeArrayStart(len(v)) + for _, yyv1 := range v { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy2 := &yyv1 + yy2.CodecEncodeSelf(e) + } + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) decSliceExternalAdmissionHookConfiguration(v *[]ExternalAdmissionHookConfiguration, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + + yyv1 := *v + yyh1, yyl1 := z.DecSliceHelperStart() + var yyc1 bool + _ = yyc1 + if yyl1 == 0 { + if yyv1 == nil { + yyv1 = []ExternalAdmissionHookConfiguration{} + yyc1 = true + } else if len(yyv1) != 0 { + yyv1 = yyv1[:0] + yyc1 = true + } + } else if yyl1 > 0 { + var yyrr1, yyrl1 int + var yyrt1 bool + _, _ = yyrl1, yyrt1 + yyrr1 = yyl1 // len(yyv1) + if yyl1 > cap(yyv1) { + + yyrg1 := len(yyv1) > 0 + yyv21 := yyv1 + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 288) + if yyrt1 { + if yyrl1 <= cap(yyv1) { + yyv1 = yyv1[:yyrl1] + } else { + yyv1 = make([]ExternalAdmissionHookConfiguration, yyrl1) + } + } else { + yyv1 = make([]ExternalAdmissionHookConfiguration, yyrl1) + } + yyc1 = true + yyrr1 = len(yyv1) + if yyrg1 { + copy(yyv1, yyv21) + } + } else if yyl1 != len(yyv1) { + yyv1 = yyv1[:yyl1] + yyc1 = true + } + yyj1 := 0 + for ; yyj1 < yyrr1; yyj1++ { + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = ExternalAdmissionHookConfiguration{} + } else { + yyv2 := &yyv1[yyj1] + yyv2.CodecDecodeSelf(d) + } + + } + if yyrt1 { + for ; yyj1 < yyl1; yyj1++ { + yyv1 = append(yyv1, ExternalAdmissionHookConfiguration{}) + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = ExternalAdmissionHookConfiguration{} + } else { + yyv3 := &yyv1[yyj1] + yyv3.CodecDecodeSelf(d) + } + + } + } + + } else { + yyj1 := 0 + for ; !r.CheckBreak(); yyj1++ { + + if yyj1 >= len(yyv1) { + yyv1 = append(yyv1, ExternalAdmissionHookConfiguration{}) // var yyz1 ExternalAdmissionHookConfiguration + yyc1 = true + } + yyh1.ElemContainerState(yyj1) + if yyj1 < len(yyv1) { + if r.TryDecodeAsNil() { + yyv1[yyj1] = ExternalAdmissionHookConfiguration{} + } else { + yyv4 := &yyv1[yyj1] + yyv4.CodecDecodeSelf(d) + } + + } else { + z.DecSwallow() + } + + } + if yyj1 < len(yyv1) { + yyv1 = yyv1[:yyj1] + yyc1 = true + } else if yyj1 == 0 && yyv1 == nil { + yyv1 = []ExternalAdmissionHookConfiguration{} + yyc1 = true + } + } + yyh1.End() + if yyc1 { + *v = yyv1 + } +} + +func (x codecSelfer1234) encSliceRuleWithOperations(v []RuleWithOperations, e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + r.EncodeArrayStart(len(v)) + for _, yyv1 := range v { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy2 := &yyv1 + yy2.CodecEncodeSelf(e) + } + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) decSliceRuleWithOperations(v *[]RuleWithOperations, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + + yyv1 := *v + yyh1, yyl1 := z.DecSliceHelperStart() + var yyc1 bool + _ = yyc1 + if yyl1 == 0 { + if yyv1 == nil { + yyv1 = []RuleWithOperations{} + yyc1 = true + } else if len(yyv1) != 0 { + yyv1 = yyv1[:0] + yyc1 = true + } + } else if yyl1 > 0 { + var yyrr1, yyrl1 int + var yyrt1 bool + _, _ = yyrl1, yyrt1 + yyrr1 = yyl1 // len(yyv1) + if yyl1 > cap(yyv1) { + + yyrg1 := len(yyv1) > 0 + yyv21 := yyv1 + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 96) + if yyrt1 { + if yyrl1 <= cap(yyv1) { + yyv1 = yyv1[:yyrl1] + } else { + yyv1 = make([]RuleWithOperations, yyrl1) + } + } else { + yyv1 = make([]RuleWithOperations, yyrl1) + } + yyc1 = true + yyrr1 = len(yyv1) + if yyrg1 { + copy(yyv1, yyv21) + } + } else if yyl1 != len(yyv1) { + yyv1 = yyv1[:yyl1] + yyc1 = true + } + yyj1 := 0 + for ; yyj1 < yyrr1; yyj1++ { + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = RuleWithOperations{} + } else { + yyv2 := &yyv1[yyj1] + yyv2.CodecDecodeSelf(d) + } + + } + if yyrt1 { + for ; yyj1 < yyl1; yyj1++ { + yyv1 = append(yyv1, RuleWithOperations{}) + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = RuleWithOperations{} + } else { + yyv3 := &yyv1[yyj1] + yyv3.CodecDecodeSelf(d) + } + + } + } + + } else { + yyj1 := 0 + for ; !r.CheckBreak(); yyj1++ { + + if yyj1 >= len(yyv1) { + yyv1 = append(yyv1, RuleWithOperations{}) // var yyz1 RuleWithOperations + yyc1 = true + } + yyh1.ElemContainerState(yyj1) + if yyj1 < len(yyv1) { + if r.TryDecodeAsNil() { + yyv1[yyj1] = RuleWithOperations{} + } else { + yyv4 := &yyv1[yyj1] + yyv4.CodecDecodeSelf(d) + } + + } else { + z.DecSwallow() + } + + } + if yyj1 < len(yyv1) { + yyv1 = yyv1[:yyj1] + yyc1 = true + } else if yyj1 == 0 && yyv1 == nil { + yyv1 = []RuleWithOperations{} + yyc1 = true + } + } + yyh1.End() + if yyc1 { + *v = yyv1 + } +} + +func (x codecSelfer1234) encSliceOperationType(v []OperationType, e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + r.EncodeArrayStart(len(v)) + for _, yyv1 := range v { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yyv1.CodecEncodeSelf(e) + } + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) decSliceOperationType(v *[]OperationType, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + + yyv1 := *v + yyh1, yyl1 := z.DecSliceHelperStart() + var yyc1 bool + _ = yyc1 + if yyl1 == 0 { + if yyv1 == nil { + yyv1 = []OperationType{} + yyc1 = true + } else if len(yyv1) != 0 { + yyv1 = yyv1[:0] + yyc1 = true + } + } else if yyl1 > 0 { + var yyrr1, yyrl1 int + var yyrt1 bool + _, _ = yyrl1, yyrt1 + yyrr1 = yyl1 // len(yyv1) + if yyl1 > cap(yyv1) { + + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 16) + if yyrt1 { + if yyrl1 <= cap(yyv1) { + yyv1 = yyv1[:yyrl1] + } else { + yyv1 = make([]OperationType, yyrl1) + } + } else { + yyv1 = make([]OperationType, yyrl1) + } + yyc1 = true + yyrr1 = len(yyv1) + } else if yyl1 != len(yyv1) { + yyv1 = yyv1[:yyl1] + yyc1 = true + } + yyj1 := 0 + for ; yyj1 < yyrr1; yyj1++ { + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = "" + } else { + yyv2 := &yyv1[yyj1] + yyv2.CodecDecodeSelf(d) + } + + } + if yyrt1 { + for ; yyj1 < yyl1; yyj1++ { + yyv1 = append(yyv1, "") + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = "" + } else { + yyv3 := &yyv1[yyj1] + yyv3.CodecDecodeSelf(d) + } + + } + } + + } else { + yyj1 := 0 + for ; !r.CheckBreak(); yyj1++ { + + if yyj1 >= len(yyv1) { + yyv1 = append(yyv1, "") // var yyz1 OperationType + yyc1 = true + } + yyh1.ElemContainerState(yyj1) + if yyj1 < len(yyv1) { + if r.TryDecodeAsNil() { + yyv1[yyj1] = "" + } else { + yyv4 := &yyv1[yyj1] + yyv4.CodecDecodeSelf(d) + } + + } else { + z.DecSwallow() + } + + } + if yyj1 < len(yyv1) { + yyv1 = yyv1[:yyj1] + yyc1 = true + } else if yyj1 == 0 && yyv1 == nil { + yyv1 = []OperationType{} + yyc1 = true + } + } + yyh1.End() + if yyc1 { + *v = yyv1 + } +} diff --git a/vendor/k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/types.go b/vendor/k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/types.go new file mode 100644 index 00000000..0d878095 --- /dev/null +++ b/vendor/k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/types.go @@ -0,0 +1,220 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1alpha1 + +import ( + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" +) + +// +genclient=true +// +nonNamespaced=true + +// InitializerConfiguration describes the configuration of initializers. +type InitializerConfiguration struct { + metav1.TypeMeta `json:",inline"` + // Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. + // +optional + metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` + + // Initializers is a list of resources and their default initializers + // Order-sensitive. + // When merging multiple InitializerConfigurations, we sort the initializers + // from different InitializerConfigurations by the name of the + // InitializerConfigurations; the order of the initializers from the same + // InitializerConfiguration is preserved. + // +patchMergeKey=name + // +patchStrategy=merge + // +optional + Initializers []Initializer `json:"initializers,omitempty" patchStrategy:"merge" patchMergeKey:"name" protobuf:"bytes,2,rep,name=initializers"` +} + +// InitializerConfigurationList is a list of InitializerConfiguration. +type InitializerConfigurationList struct { + metav1.TypeMeta `json:",inline"` + // Standard list metadata. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + // +optional + metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` + + // List of InitializerConfiguration. + Items []InitializerConfiguration `json:"items" protobuf:"bytes,2,rep,name=items"` +} + +// Initializer describes the name and the failure policy of an initializer, and +// what resources it applies to. +type Initializer struct { + // 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 + Name string `json:"name" protobuf:"bytes,1,opt,name=name"` + + // 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. + 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 +// to make sure that all the tuple expansions are valid. +type Rule struct { + // APIGroups is the API groups the resources belong to. '*' is all groups. + // If '*' is present, the length of the slice must be one. + // Required. + APIGroups []string `json:"apiGroups,omitempty" protobuf:"bytes,1,rep,name=apiGroups"` + + // APIVersions is the API versions the resources belong to. '*' is all versions. + // If '*' is present, the length of the slice must be one. + // Required. + APIVersions []string `json:"apiVersions,omitempty" protobuf:"bytes,2,rep,name=apiVersions"` + + // Resources is a list of resources this rule applies to. + // + // For example: + // 'pods' means pods. + // 'pods/log' means the log subresource of pods. + // '*' means all resources, but not subresources. + // 'pods/*' means all subresources of pods. + // '*/scale' means all scale subresources. + // '*/*' means all resources and their subresources. + // + // If wildcard is present, the validation rule will ensure resources do not + // overlap with each other. + // + // Depending on the enclosing object, subresources might not be allowed. + // Required. + Resources []string `json:"resources,omitempty" protobuf:"bytes,3,rep,name=resources"` +} + +type FailurePolicyType string + +const ( + // Ignore means the initilizer is removed from the initializers list of an + // object if the initializer is timed out. + Ignore FailurePolicyType = "Ignore" + // For 1.7, only "Ignore" is allowed. "Fail" will be allowed when the + // extensible admission feature is beta. + Fail FailurePolicyType = "Fail" +) + +// +genclient=true +// +nonNamespaced=true + +// ExternalAdmissionHookConfiguration describes the configuration of initializers. +type ExternalAdmissionHookConfiguration struct { + metav1.TypeMeta `json:",inline"` + // Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. + // +optional + metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` + // ExternalAdmissionHooks is a list of external admission webhooks and the + // affected resources and operations. + // +optional + // +patchMergeKey=name + // +patchStrategy=merge + ExternalAdmissionHooks []ExternalAdmissionHook `json:"externalAdmissionHooks,omitempty" patchStrategy:"merge" patchMergeKey:"name" protobuf:"bytes,2,rep,name=externalAdmissionHooks"` +} + +// ExternalAdmissionHookConfigurationList is a list of ExternalAdmissionHookConfiguration. +type ExternalAdmissionHookConfigurationList struct { + metav1.TypeMeta `json:",inline"` + // Standard list metadata. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + // +optional + metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` + // List of ExternalAdmissionHookConfiguration. + Items []ExternalAdmissionHookConfiguration `json:"items" protobuf:"bytes,2,rep,name=items"` +} + +// ExternalAdmissionHook describes an external admission webhook and the +// resources and operations it applies to. +type ExternalAdmissionHook struct { + // The name of the external admission webhook. + // Name should be fully qualified, e.g., imagepolicy.kubernetes.io, where + // "imagepolicy" is the name of the webhook, and kubernetes.io is the name + // of the organization. + // Required. + Name string `json:"name" protobuf:"bytes,1,opt,name=name"` + + // ClientConfig defines how to communicate with the hook. + // Required + ClientConfig AdmissionHookClientConfig `json:"clientConfig" protobuf:"bytes,2,opt,name=clientConfig"` + + // Rules describes what operations on what resources/subresources the webhook cares about. + // The webhook cares about an operation if it matches _any_ Rule. + Rules []RuleWithOperations `json:"rules,omitempty" protobuf:"bytes,3,rep,name=rules"` + + // FailurePolicy defines how unrecognized errors from the admission endpoint are handled - + // allowed values are Ignore or Fail. Defaults to Ignore. + // +optional + FailurePolicy *FailurePolicyType `json:"failurePolicy,omitempty" protobuf:"bytes,4,opt,name=failurePolicy,casttype=FailurePolicyType"` +} + +// RuleWithOperations is a tuple of Operations and Resources. It is recommended to make +// sure that all the tuple expansions are valid. +type RuleWithOperations struct { + // Operations is the operations the admission hook cares about - CREATE, UPDATE, or * + // for all operations. + // If '*' is present, the length of the slice must be one. + // Required. + Operations []OperationType `json:"operations,omitempty" protobuf:"bytes,1,rep,name=operations,casttype=OperationType"` + // Rule is embedded, it describes other criteria of the rule, like + // APIGroups, APIVersions, Resources, etc. + Rule `json:",inline" protobuf:"bytes,2,opt,name=rule"` +} + +type OperationType string + +// The constants should be kept in sync with those defined in k8s.io/kubernetes/pkg/admission/interface.go. +const ( + OperationAll OperationType = "*" + Create OperationType = "CREATE" + Update OperationType = "UPDATE" + Delete OperationType = "DELETE" + Connect OperationType = "CONNECT" +) + +// AdmissionHookClientConfig contains the information to make a TLS +// connection with the webhook +type AdmissionHookClientConfig struct { + // Service is a reference to the service for this webhook. If there is only + // one port open for the service, that port will be used. If there are multiple + // ports open, port 443 will be used if it is open, otherwise it is an error. + // Required + Service ServiceReference `json:"service" protobuf:"bytes,1,opt,name=service"` + // CABundle is a PEM encoded CA bundle which will be used to validate webhook's server certificate. + // Required + CABundle []byte `json:"caBundle" protobuf:"bytes,2,opt,name=caBundle"` +} + +// ServiceReference holds a reference to Service.legacy.k8s.io +type ServiceReference struct { + // Namespace is the namespace of the service + // Required + Namespace string `json:"namespace" protobuf:"bytes,1,opt,name=namespace"` + // Name is the name of the service + // Required + Name string `json:"name" protobuf:"bytes,2,opt,name=name"` +} diff --git a/vendor/k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/types_swagger_doc_generated.go b/vendor/k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/types_swagger_doc_generated.go new file mode 100644 index 00000000..9597deb5 --- /dev/null +++ b/vendor/k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/types_swagger_doc_generated.go @@ -0,0 +1,133 @@ +/* +Copyright 2016 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1alpha1 + +// This file contains a collection of methods that can be used from go-restful to +// generate Swagger API documentation for its models. Please read this PR for more +// information on the implementation: https://github.com/emicklei/go-restful/pull/215 +// +// TODOs are ignored from the parser (e.g. TODO(andronat):... || TODO:...) if and only if +// they are on one line! For multiple line or blocks that you want to ignore use ---. +// Any context after a --- is ignored. +// +// Those methods can be generated by using hack/update-generated-swagger-docs.sh + +// AUTO-GENERATED FUNCTIONS START HERE +var map_AdmissionHookClientConfig = map[string]string{ + "": "AdmissionHookClientConfig contains the information to make a TLS connection with the webhook", + "service": "Service is a reference to the service for this webhook. If there is only one port open for the service, that port will be used. If there are multiple ports open, port 443 will be used if it is open, otherwise it is an error. Required", + "caBundle": "CABundle is a PEM encoded CA bundle which will be used to validate webhook's server certificate. Required", +} + +func (AdmissionHookClientConfig) SwaggerDoc() map[string]string { + return map_AdmissionHookClientConfig +} + +var map_ExternalAdmissionHook = map[string]string{ + "": "ExternalAdmissionHook describes an external admission webhook and the resources and operations it applies to.", + "name": "The name of the external admission webhook. Name should be fully qualified, e.g., imagepolicy.kubernetes.io, where \"imagepolicy\" is the name of the webhook, and kubernetes.io is the name of the organization. Required.", + "clientConfig": "ClientConfig defines how to communicate with the hook. Required", + "rules": "Rules describes what operations on what resources/subresources the webhook cares about. The webhook cares about an operation if it matches _any_ Rule.", + "failurePolicy": "FailurePolicy defines how unrecognized errors from the admission endpoint are handled - allowed values are Ignore or Fail. Defaults to Ignore.", +} + +func (ExternalAdmissionHook) SwaggerDoc() map[string]string { + return map_ExternalAdmissionHook +} + +var map_ExternalAdmissionHookConfiguration = map[string]string{ + "": "ExternalAdmissionHookConfiguration describes the configuration of initializers.", + "metadata": "Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata.", + "externalAdmissionHooks": "ExternalAdmissionHooks is a list of external admission webhooks and the affected resources and operations.", +} + +func (ExternalAdmissionHookConfiguration) SwaggerDoc() map[string]string { + return map_ExternalAdmissionHookConfiguration +} + +var map_ExternalAdmissionHookConfigurationList = map[string]string{ + "": "ExternalAdmissionHookConfigurationList is a list of ExternalAdmissionHookConfiguration.", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", + "items": "List of ExternalAdmissionHookConfiguration.", +} + +func (ExternalAdmissionHookConfigurationList) SwaggerDoc() map[string]string { + return map_ExternalAdmissionHookConfigurationList +} + +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.", +} + +func (Initializer) SwaggerDoc() map[string]string { + return map_Initializer +} + +var map_InitializerConfiguration = map[string]string{ + "": "InitializerConfiguration describes the configuration of initializers.", + "metadata": "Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata.", + "initializers": "Initializers is a list of resources and their default initializers Order-sensitive. When merging multiple InitializerConfigurations, we sort the initializers from different InitializerConfigurations by the name of the InitializerConfigurations; the order of the initializers from the same InitializerConfiguration is preserved.", +} + +func (InitializerConfiguration) SwaggerDoc() map[string]string { + return map_InitializerConfiguration +} + +var map_InitializerConfigurationList = map[string]string{ + "": "InitializerConfigurationList is a list of InitializerConfiguration.", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", + "items": "List of InitializerConfiguration.", +} + +func (InitializerConfigurationList) SwaggerDoc() map[string]string { + return map_InitializerConfigurationList +} + +var map_Rule = map[string]string{ + "": "Rule is a tuple of APIGroups, APIVersion, and Resources.It is recommended to make sure that all the tuple expansions are valid.", + "apiGroups": "APIGroups is the API groups the resources belong to. '*' is all groups. If '*' is present, the length of the slice must be one. Required.", + "apiVersions": "APIVersions is the API versions the resources belong to. '*' is all versions. If '*' is present, the length of the slice must be one. Required.", + "resources": "Resources is a list of resources this rule applies to.\n\nFor example: 'pods' means pods. 'pods/log' means the log subresource of pods. '*' means all resources, but not subresources. 'pods/*' means all subresources of pods. '*/scale' means all scale subresources. '*/*' means all resources and their subresources.\n\nIf wildcard is present, the validation rule will ensure resources do not overlap with each other.\n\nDepending on the enclosing object, subresources might not be allowed. Required.", +} + +func (Rule) SwaggerDoc() map[string]string { + return map_Rule +} + +var map_RuleWithOperations = map[string]string{ + "": "RuleWithOperations is a tuple of Operations and Resources. It is recommended to make sure that all the tuple expansions are valid.", + "operations": "Operations is the operations the admission hook cares about - CREATE, UPDATE, or * for all operations. If '*' is present, the length of the slice must be one. Required.", +} + +func (RuleWithOperations) SwaggerDoc() map[string]string { + return map_RuleWithOperations +} + +var map_ServiceReference = map[string]string{ + "": "ServiceReference holds a reference to Service.legacy.k8s.io", + "namespace": "Namespace is the namespace of the service Required", + "name": "Name is the name of the service Required", +} + +func (ServiceReference) SwaggerDoc() map[string]string { + return map_ServiceReference +} + +// AUTO-GENERATED FUNCTIONS END HERE diff --git a/vendor/k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/zz_generated.conversion.go b/vendor/k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/zz_generated.conversion.go new file mode 100644 index 00000000..34c645df --- /dev/null +++ b/vendor/k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/zz_generated.conversion.go @@ -0,0 +1,311 @@ +// +build !ignore_autogenerated + +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This file was autogenerated by conversion-gen. Do not edit it manually! + +package v1alpha1 + +import ( + conversion "k8s.io/apimachinery/pkg/conversion" + runtime "k8s.io/apimachinery/pkg/runtime" + admissionregistration "k8s.io/client-go/pkg/apis/admissionregistration" + unsafe "unsafe" +) + +func init() { + SchemeBuilder.Register(RegisterConversions) +} + +// RegisterConversions adds conversion functions to the given scheme. +// Public to allow building arbitrary schemes. +func RegisterConversions(scheme *runtime.Scheme) error { + return scheme.AddGeneratedConversionFuncs( + Convert_v1alpha1_AdmissionHookClientConfig_To_admissionregistration_AdmissionHookClientConfig, + Convert_admissionregistration_AdmissionHookClientConfig_To_v1alpha1_AdmissionHookClientConfig, + Convert_v1alpha1_ExternalAdmissionHook_To_admissionregistration_ExternalAdmissionHook, + Convert_admissionregistration_ExternalAdmissionHook_To_v1alpha1_ExternalAdmissionHook, + Convert_v1alpha1_ExternalAdmissionHookConfiguration_To_admissionregistration_ExternalAdmissionHookConfiguration, + Convert_admissionregistration_ExternalAdmissionHookConfiguration_To_v1alpha1_ExternalAdmissionHookConfiguration, + Convert_v1alpha1_ExternalAdmissionHookConfigurationList_To_admissionregistration_ExternalAdmissionHookConfigurationList, + Convert_admissionregistration_ExternalAdmissionHookConfigurationList_To_v1alpha1_ExternalAdmissionHookConfigurationList, + Convert_v1alpha1_Initializer_To_admissionregistration_Initializer, + Convert_admissionregistration_Initializer_To_v1alpha1_Initializer, + Convert_v1alpha1_InitializerConfiguration_To_admissionregistration_InitializerConfiguration, + Convert_admissionregistration_InitializerConfiguration_To_v1alpha1_InitializerConfiguration, + Convert_v1alpha1_InitializerConfigurationList_To_admissionregistration_InitializerConfigurationList, + Convert_admissionregistration_InitializerConfigurationList_To_v1alpha1_InitializerConfigurationList, + Convert_v1alpha1_Rule_To_admissionregistration_Rule, + Convert_admissionregistration_Rule_To_v1alpha1_Rule, + Convert_v1alpha1_RuleWithOperations_To_admissionregistration_RuleWithOperations, + Convert_admissionregistration_RuleWithOperations_To_v1alpha1_RuleWithOperations, + Convert_v1alpha1_ServiceReference_To_admissionregistration_ServiceReference, + Convert_admissionregistration_ServiceReference_To_v1alpha1_ServiceReference, + ) +} + +func autoConvert_v1alpha1_AdmissionHookClientConfig_To_admissionregistration_AdmissionHookClientConfig(in *AdmissionHookClientConfig, out *admissionregistration.AdmissionHookClientConfig, s conversion.Scope) error { + if err := Convert_v1alpha1_ServiceReference_To_admissionregistration_ServiceReference(&in.Service, &out.Service, s); err != nil { + return err + } + out.CABundle = *(*[]byte)(unsafe.Pointer(&in.CABundle)) + return nil +} + +// Convert_v1alpha1_AdmissionHookClientConfig_To_admissionregistration_AdmissionHookClientConfig is an autogenerated conversion function. +func Convert_v1alpha1_AdmissionHookClientConfig_To_admissionregistration_AdmissionHookClientConfig(in *AdmissionHookClientConfig, out *admissionregistration.AdmissionHookClientConfig, s conversion.Scope) error { + return autoConvert_v1alpha1_AdmissionHookClientConfig_To_admissionregistration_AdmissionHookClientConfig(in, out, s) +} + +func autoConvert_admissionregistration_AdmissionHookClientConfig_To_v1alpha1_AdmissionHookClientConfig(in *admissionregistration.AdmissionHookClientConfig, out *AdmissionHookClientConfig, s conversion.Scope) error { + if err := Convert_admissionregistration_ServiceReference_To_v1alpha1_ServiceReference(&in.Service, &out.Service, s); err != nil { + return err + } + if in.CABundle == nil { + out.CABundle = make([]byte, 0) + } else { + out.CABundle = *(*[]byte)(unsafe.Pointer(&in.CABundle)) + } + return nil +} + +// Convert_admissionregistration_AdmissionHookClientConfig_To_v1alpha1_AdmissionHookClientConfig is an autogenerated conversion function. +func Convert_admissionregistration_AdmissionHookClientConfig_To_v1alpha1_AdmissionHookClientConfig(in *admissionregistration.AdmissionHookClientConfig, out *AdmissionHookClientConfig, s conversion.Scope) error { + return autoConvert_admissionregistration_AdmissionHookClientConfig_To_v1alpha1_AdmissionHookClientConfig(in, out, s) +} + +func autoConvert_v1alpha1_ExternalAdmissionHook_To_admissionregistration_ExternalAdmissionHook(in *ExternalAdmissionHook, out *admissionregistration.ExternalAdmissionHook, s conversion.Scope) error { + out.Name = in.Name + if err := Convert_v1alpha1_AdmissionHookClientConfig_To_admissionregistration_AdmissionHookClientConfig(&in.ClientConfig, &out.ClientConfig, s); err != nil { + return err + } + out.Rules = *(*[]admissionregistration.RuleWithOperations)(unsafe.Pointer(&in.Rules)) + out.FailurePolicy = (*admissionregistration.FailurePolicyType)(unsafe.Pointer(in.FailurePolicy)) + return nil +} + +// Convert_v1alpha1_ExternalAdmissionHook_To_admissionregistration_ExternalAdmissionHook is an autogenerated conversion function. +func Convert_v1alpha1_ExternalAdmissionHook_To_admissionregistration_ExternalAdmissionHook(in *ExternalAdmissionHook, out *admissionregistration.ExternalAdmissionHook, s conversion.Scope) error { + return autoConvert_v1alpha1_ExternalAdmissionHook_To_admissionregistration_ExternalAdmissionHook(in, out, s) +} + +func autoConvert_admissionregistration_ExternalAdmissionHook_To_v1alpha1_ExternalAdmissionHook(in *admissionregistration.ExternalAdmissionHook, out *ExternalAdmissionHook, s conversion.Scope) error { + out.Name = in.Name + if err := Convert_admissionregistration_AdmissionHookClientConfig_To_v1alpha1_AdmissionHookClientConfig(&in.ClientConfig, &out.ClientConfig, s); err != nil { + return err + } + out.Rules = *(*[]RuleWithOperations)(unsafe.Pointer(&in.Rules)) + out.FailurePolicy = (*FailurePolicyType)(unsafe.Pointer(in.FailurePolicy)) + return nil +} + +// Convert_admissionregistration_ExternalAdmissionHook_To_v1alpha1_ExternalAdmissionHook is an autogenerated conversion function. +func Convert_admissionregistration_ExternalAdmissionHook_To_v1alpha1_ExternalAdmissionHook(in *admissionregistration.ExternalAdmissionHook, out *ExternalAdmissionHook, s conversion.Scope) error { + return autoConvert_admissionregistration_ExternalAdmissionHook_To_v1alpha1_ExternalAdmissionHook(in, out, s) +} + +func autoConvert_v1alpha1_ExternalAdmissionHookConfiguration_To_admissionregistration_ExternalAdmissionHookConfiguration(in *ExternalAdmissionHookConfiguration, out *admissionregistration.ExternalAdmissionHookConfiguration, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + out.ExternalAdmissionHooks = *(*[]admissionregistration.ExternalAdmissionHook)(unsafe.Pointer(&in.ExternalAdmissionHooks)) + return nil +} + +// Convert_v1alpha1_ExternalAdmissionHookConfiguration_To_admissionregistration_ExternalAdmissionHookConfiguration is an autogenerated conversion function. +func Convert_v1alpha1_ExternalAdmissionHookConfiguration_To_admissionregistration_ExternalAdmissionHookConfiguration(in *ExternalAdmissionHookConfiguration, out *admissionregistration.ExternalAdmissionHookConfiguration, s conversion.Scope) error { + return autoConvert_v1alpha1_ExternalAdmissionHookConfiguration_To_admissionregistration_ExternalAdmissionHookConfiguration(in, out, s) +} + +func autoConvert_admissionregistration_ExternalAdmissionHookConfiguration_To_v1alpha1_ExternalAdmissionHookConfiguration(in *admissionregistration.ExternalAdmissionHookConfiguration, out *ExternalAdmissionHookConfiguration, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + out.ExternalAdmissionHooks = *(*[]ExternalAdmissionHook)(unsafe.Pointer(&in.ExternalAdmissionHooks)) + return nil +} + +// Convert_admissionregistration_ExternalAdmissionHookConfiguration_To_v1alpha1_ExternalAdmissionHookConfiguration is an autogenerated conversion function. +func Convert_admissionregistration_ExternalAdmissionHookConfiguration_To_v1alpha1_ExternalAdmissionHookConfiguration(in *admissionregistration.ExternalAdmissionHookConfiguration, out *ExternalAdmissionHookConfiguration, s conversion.Scope) error { + return autoConvert_admissionregistration_ExternalAdmissionHookConfiguration_To_v1alpha1_ExternalAdmissionHookConfiguration(in, out, s) +} + +func autoConvert_v1alpha1_ExternalAdmissionHookConfigurationList_To_admissionregistration_ExternalAdmissionHookConfigurationList(in *ExternalAdmissionHookConfigurationList, out *admissionregistration.ExternalAdmissionHookConfigurationList, s conversion.Scope) error { + out.ListMeta = in.ListMeta + out.Items = *(*[]admissionregistration.ExternalAdmissionHookConfiguration)(unsafe.Pointer(&in.Items)) + return nil +} + +// Convert_v1alpha1_ExternalAdmissionHookConfigurationList_To_admissionregistration_ExternalAdmissionHookConfigurationList is an autogenerated conversion function. +func Convert_v1alpha1_ExternalAdmissionHookConfigurationList_To_admissionregistration_ExternalAdmissionHookConfigurationList(in *ExternalAdmissionHookConfigurationList, out *admissionregistration.ExternalAdmissionHookConfigurationList, s conversion.Scope) error { + return autoConvert_v1alpha1_ExternalAdmissionHookConfigurationList_To_admissionregistration_ExternalAdmissionHookConfigurationList(in, out, s) +} + +func autoConvert_admissionregistration_ExternalAdmissionHookConfigurationList_To_v1alpha1_ExternalAdmissionHookConfigurationList(in *admissionregistration.ExternalAdmissionHookConfigurationList, out *ExternalAdmissionHookConfigurationList, s conversion.Scope) error { + out.ListMeta = in.ListMeta + if in.Items == nil { + out.Items = make([]ExternalAdmissionHookConfiguration, 0) + } else { + out.Items = *(*[]ExternalAdmissionHookConfiguration)(unsafe.Pointer(&in.Items)) + } + return nil +} + +// Convert_admissionregistration_ExternalAdmissionHookConfigurationList_To_v1alpha1_ExternalAdmissionHookConfigurationList is an autogenerated conversion function. +func Convert_admissionregistration_ExternalAdmissionHookConfigurationList_To_v1alpha1_ExternalAdmissionHookConfigurationList(in *admissionregistration.ExternalAdmissionHookConfigurationList, out *ExternalAdmissionHookConfigurationList, s conversion.Scope) error { + return autoConvert_admissionregistration_ExternalAdmissionHookConfigurationList_To_v1alpha1_ExternalAdmissionHookConfigurationList(in, out, s) +} + +func autoConvert_v1alpha1_Initializer_To_admissionregistration_Initializer(in *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 +} + +// Convert_v1alpha1_Initializer_To_admissionregistration_Initializer is an autogenerated conversion function. +func Convert_v1alpha1_Initializer_To_admissionregistration_Initializer(in *Initializer, out *admissionregistration.Initializer, s conversion.Scope) error { + return autoConvert_v1alpha1_Initializer_To_admissionregistration_Initializer(in, out, s) +} + +func autoConvert_admissionregistration_Initializer_To_v1alpha1_Initializer(in *admissionregistration.Initializer, out *Initializer, s conversion.Scope) error { + out.Name = in.Name + out.Rules = *(*[]Rule)(unsafe.Pointer(&in.Rules)) + out.FailurePolicy = (*FailurePolicyType)(unsafe.Pointer(in.FailurePolicy)) + return nil +} + +// Convert_admissionregistration_Initializer_To_v1alpha1_Initializer is an autogenerated conversion function. +func Convert_admissionregistration_Initializer_To_v1alpha1_Initializer(in *admissionregistration.Initializer, out *Initializer, s conversion.Scope) error { + return autoConvert_admissionregistration_Initializer_To_v1alpha1_Initializer(in, out, s) +} + +func autoConvert_v1alpha1_InitializerConfiguration_To_admissionregistration_InitializerConfiguration(in *InitializerConfiguration, out *admissionregistration.InitializerConfiguration, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + out.Initializers = *(*[]admissionregistration.Initializer)(unsafe.Pointer(&in.Initializers)) + return nil +} + +// Convert_v1alpha1_InitializerConfiguration_To_admissionregistration_InitializerConfiguration is an autogenerated conversion function. +func Convert_v1alpha1_InitializerConfiguration_To_admissionregistration_InitializerConfiguration(in *InitializerConfiguration, out *admissionregistration.InitializerConfiguration, s conversion.Scope) error { + return autoConvert_v1alpha1_InitializerConfiguration_To_admissionregistration_InitializerConfiguration(in, out, s) +} + +func autoConvert_admissionregistration_InitializerConfiguration_To_v1alpha1_InitializerConfiguration(in *admissionregistration.InitializerConfiguration, out *InitializerConfiguration, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + out.Initializers = *(*[]Initializer)(unsafe.Pointer(&in.Initializers)) + return nil +} + +// Convert_admissionregistration_InitializerConfiguration_To_v1alpha1_InitializerConfiguration is an autogenerated conversion function. +func Convert_admissionregistration_InitializerConfiguration_To_v1alpha1_InitializerConfiguration(in *admissionregistration.InitializerConfiguration, out *InitializerConfiguration, s conversion.Scope) error { + return autoConvert_admissionregistration_InitializerConfiguration_To_v1alpha1_InitializerConfiguration(in, out, s) +} + +func autoConvert_v1alpha1_InitializerConfigurationList_To_admissionregistration_InitializerConfigurationList(in *InitializerConfigurationList, out *admissionregistration.InitializerConfigurationList, s conversion.Scope) error { + out.ListMeta = in.ListMeta + out.Items = *(*[]admissionregistration.InitializerConfiguration)(unsafe.Pointer(&in.Items)) + return nil +} + +// Convert_v1alpha1_InitializerConfigurationList_To_admissionregistration_InitializerConfigurationList is an autogenerated conversion function. +func Convert_v1alpha1_InitializerConfigurationList_To_admissionregistration_InitializerConfigurationList(in *InitializerConfigurationList, out *admissionregistration.InitializerConfigurationList, s conversion.Scope) error { + return autoConvert_v1alpha1_InitializerConfigurationList_To_admissionregistration_InitializerConfigurationList(in, out, s) +} + +func autoConvert_admissionregistration_InitializerConfigurationList_To_v1alpha1_InitializerConfigurationList(in *admissionregistration.InitializerConfigurationList, out *InitializerConfigurationList, s conversion.Scope) error { + out.ListMeta = in.ListMeta + if in.Items == nil { + out.Items = make([]InitializerConfiguration, 0) + } else { + out.Items = *(*[]InitializerConfiguration)(unsafe.Pointer(&in.Items)) + } + return nil +} + +// Convert_admissionregistration_InitializerConfigurationList_To_v1alpha1_InitializerConfigurationList is an autogenerated conversion function. +func Convert_admissionregistration_InitializerConfigurationList_To_v1alpha1_InitializerConfigurationList(in *admissionregistration.InitializerConfigurationList, out *InitializerConfigurationList, s conversion.Scope) error { + return autoConvert_admissionregistration_InitializerConfigurationList_To_v1alpha1_InitializerConfigurationList(in, out, s) +} + +func autoConvert_v1alpha1_Rule_To_admissionregistration_Rule(in *Rule, out *admissionregistration.Rule, s conversion.Scope) error { + out.APIGroups = *(*[]string)(unsafe.Pointer(&in.APIGroups)) + out.APIVersions = *(*[]string)(unsafe.Pointer(&in.APIVersions)) + out.Resources = *(*[]string)(unsafe.Pointer(&in.Resources)) + return nil +} + +// Convert_v1alpha1_Rule_To_admissionregistration_Rule is an autogenerated conversion function. +func Convert_v1alpha1_Rule_To_admissionregistration_Rule(in *Rule, out *admissionregistration.Rule, s conversion.Scope) error { + return autoConvert_v1alpha1_Rule_To_admissionregistration_Rule(in, out, s) +} + +func autoConvert_admissionregistration_Rule_To_v1alpha1_Rule(in *admissionregistration.Rule, out *Rule, s conversion.Scope) error { + out.APIGroups = *(*[]string)(unsafe.Pointer(&in.APIGroups)) + out.APIVersions = *(*[]string)(unsafe.Pointer(&in.APIVersions)) + out.Resources = *(*[]string)(unsafe.Pointer(&in.Resources)) + return nil +} + +// Convert_admissionregistration_Rule_To_v1alpha1_Rule is an autogenerated conversion function. +func Convert_admissionregistration_Rule_To_v1alpha1_Rule(in *admissionregistration.Rule, out *Rule, s conversion.Scope) error { + return autoConvert_admissionregistration_Rule_To_v1alpha1_Rule(in, out, s) +} + +func autoConvert_v1alpha1_RuleWithOperations_To_admissionregistration_RuleWithOperations(in *RuleWithOperations, out *admissionregistration.RuleWithOperations, s conversion.Scope) error { + out.Operations = *(*[]admissionregistration.OperationType)(unsafe.Pointer(&in.Operations)) + if err := Convert_v1alpha1_Rule_To_admissionregistration_Rule(&in.Rule, &out.Rule, s); err != nil { + return err + } + return nil +} + +// Convert_v1alpha1_RuleWithOperations_To_admissionregistration_RuleWithOperations is an autogenerated conversion function. +func Convert_v1alpha1_RuleWithOperations_To_admissionregistration_RuleWithOperations(in *RuleWithOperations, out *admissionregistration.RuleWithOperations, s conversion.Scope) error { + return autoConvert_v1alpha1_RuleWithOperations_To_admissionregistration_RuleWithOperations(in, out, s) +} + +func autoConvert_admissionregistration_RuleWithOperations_To_v1alpha1_RuleWithOperations(in *admissionregistration.RuleWithOperations, out *RuleWithOperations, s conversion.Scope) error { + out.Operations = *(*[]OperationType)(unsafe.Pointer(&in.Operations)) + if err := Convert_admissionregistration_Rule_To_v1alpha1_Rule(&in.Rule, &out.Rule, s); err != nil { + return err + } + return nil +} + +// Convert_admissionregistration_RuleWithOperations_To_v1alpha1_RuleWithOperations is an autogenerated conversion function. +func Convert_admissionregistration_RuleWithOperations_To_v1alpha1_RuleWithOperations(in *admissionregistration.RuleWithOperations, out *RuleWithOperations, s conversion.Scope) error { + return autoConvert_admissionregistration_RuleWithOperations_To_v1alpha1_RuleWithOperations(in, out, s) +} + +func autoConvert_v1alpha1_ServiceReference_To_admissionregistration_ServiceReference(in *ServiceReference, out *admissionregistration.ServiceReference, s conversion.Scope) error { + out.Namespace = in.Namespace + out.Name = in.Name + return nil +} + +// Convert_v1alpha1_ServiceReference_To_admissionregistration_ServiceReference is an autogenerated conversion function. +func Convert_v1alpha1_ServiceReference_To_admissionregistration_ServiceReference(in *ServiceReference, out *admissionregistration.ServiceReference, s conversion.Scope) error { + return autoConvert_v1alpha1_ServiceReference_To_admissionregistration_ServiceReference(in, out, s) +} + +func autoConvert_admissionregistration_ServiceReference_To_v1alpha1_ServiceReference(in *admissionregistration.ServiceReference, out *ServiceReference, s conversion.Scope) error { + out.Namespace = in.Namespace + out.Name = in.Name + return nil +} + +// Convert_admissionregistration_ServiceReference_To_v1alpha1_ServiceReference is an autogenerated conversion function. +func Convert_admissionregistration_ServiceReference_To_v1alpha1_ServiceReference(in *admissionregistration.ServiceReference, out *ServiceReference, s conversion.Scope) error { + return autoConvert_admissionregistration_ServiceReference_To_v1alpha1_ServiceReference(in, out, s) +} diff --git a/vendor/k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/zz_generated.deepcopy.go b/vendor/k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/zz_generated.deepcopy.go new file mode 100644 index 00000000..526dbe3a --- /dev/null +++ b/vendor/k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/zz_generated.deepcopy.go @@ -0,0 +1,254 @@ +// +build !ignore_autogenerated + +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This file was autogenerated by deepcopy-gen. Do not edit it manually! + +package v1alpha1 + +import ( + v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + conversion "k8s.io/apimachinery/pkg/conversion" + runtime "k8s.io/apimachinery/pkg/runtime" + reflect "reflect" +) + +func init() { + SchemeBuilder.Register(RegisterDeepCopies) +} + +// RegisterDeepCopies adds deep-copy functions to the given scheme. Public +// to allow building arbitrary schemes. +func RegisterDeepCopies(scheme *runtime.Scheme) error { + return scheme.AddGeneratedDeepCopyFuncs( + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1alpha1_AdmissionHookClientConfig, InType: reflect.TypeOf(&AdmissionHookClientConfig{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1alpha1_ExternalAdmissionHook, InType: reflect.TypeOf(&ExternalAdmissionHook{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1alpha1_ExternalAdmissionHookConfiguration, InType: reflect.TypeOf(&ExternalAdmissionHookConfiguration{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1alpha1_ExternalAdmissionHookConfigurationList, InType: reflect.TypeOf(&ExternalAdmissionHookConfigurationList{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1alpha1_Initializer, InType: reflect.TypeOf(&Initializer{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1alpha1_InitializerConfiguration, InType: reflect.TypeOf(&InitializerConfiguration{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1alpha1_InitializerConfigurationList, InType: reflect.TypeOf(&InitializerConfigurationList{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1alpha1_Rule, InType: reflect.TypeOf(&Rule{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1alpha1_RuleWithOperations, InType: reflect.TypeOf(&RuleWithOperations{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1alpha1_ServiceReference, InType: reflect.TypeOf(&ServiceReference{})}, + ) +} + +// DeepCopy_v1alpha1_AdmissionHookClientConfig is an autogenerated deepcopy function. +func DeepCopy_v1alpha1_AdmissionHookClientConfig(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*AdmissionHookClientConfig) + out := out.(*AdmissionHookClientConfig) + *out = *in + if in.CABundle != nil { + in, out := &in.CABundle, &out.CABundle + *out = make([]byte, len(*in)) + copy(*out, *in) + } + return nil + } +} + +// DeepCopy_v1alpha1_ExternalAdmissionHook is an autogenerated deepcopy function. +func DeepCopy_v1alpha1_ExternalAdmissionHook(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ExternalAdmissionHook) + out := out.(*ExternalAdmissionHook) + *out = *in + if err := DeepCopy_v1alpha1_AdmissionHookClientConfig(&in.ClientConfig, &out.ClientConfig, c); err != nil { + return err + } + if in.Rules != nil { + in, out := &in.Rules, &out.Rules + *out = make([]RuleWithOperations, len(*in)) + for i := range *in { + if err := DeepCopy_v1alpha1_RuleWithOperations(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + if in.FailurePolicy != nil { + in, out := &in.FailurePolicy, &out.FailurePolicy + *out = new(FailurePolicyType) + **out = **in + } + return nil + } +} + +// DeepCopy_v1alpha1_ExternalAdmissionHookConfiguration is an autogenerated deepcopy function. +func DeepCopy_v1alpha1_ExternalAdmissionHookConfiguration(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ExternalAdmissionHookConfiguration) + out := out.(*ExternalAdmissionHookConfiguration) + *out = *in + if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { + return err + } else { + out.ObjectMeta = *newVal.(*v1.ObjectMeta) + } + if in.ExternalAdmissionHooks != nil { + in, out := &in.ExternalAdmissionHooks, &out.ExternalAdmissionHooks + *out = make([]ExternalAdmissionHook, len(*in)) + for i := range *in { + if err := DeepCopy_v1alpha1_ExternalAdmissionHook(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} + +// DeepCopy_v1alpha1_ExternalAdmissionHookConfigurationList is an autogenerated deepcopy function. +func DeepCopy_v1alpha1_ExternalAdmissionHookConfigurationList(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ExternalAdmissionHookConfigurationList) + out := out.(*ExternalAdmissionHookConfigurationList) + *out = *in + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]ExternalAdmissionHookConfiguration, len(*in)) + for i := range *in { + if err := DeepCopy_v1alpha1_ExternalAdmissionHookConfiguration(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} + +// DeepCopy_v1alpha1_Initializer is an autogenerated deepcopy function. +func DeepCopy_v1alpha1_Initializer(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*Initializer) + out := out.(*Initializer) + *out = *in + if in.Rules != nil { + in, out := &in.Rules, &out.Rules + *out = make([]Rule, len(*in)) + for i := range *in { + if err := DeepCopy_v1alpha1_Rule(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + if in.FailurePolicy != nil { + in, out := &in.FailurePolicy, &out.FailurePolicy + *out = new(FailurePolicyType) + **out = **in + } + return nil + } +} + +// DeepCopy_v1alpha1_InitializerConfiguration is an autogenerated deepcopy function. +func DeepCopy_v1alpha1_InitializerConfiguration(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*InitializerConfiguration) + out := out.(*InitializerConfiguration) + *out = *in + if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { + return err + } else { + out.ObjectMeta = *newVal.(*v1.ObjectMeta) + } + if in.Initializers != nil { + in, out := &in.Initializers, &out.Initializers + *out = make([]Initializer, len(*in)) + for i := range *in { + if err := DeepCopy_v1alpha1_Initializer(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} + +// DeepCopy_v1alpha1_InitializerConfigurationList is an autogenerated deepcopy function. +func DeepCopy_v1alpha1_InitializerConfigurationList(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*InitializerConfigurationList) + out := out.(*InitializerConfigurationList) + *out = *in + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]InitializerConfiguration, len(*in)) + for i := range *in { + if err := DeepCopy_v1alpha1_InitializerConfiguration(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} + +// DeepCopy_v1alpha1_Rule is an autogenerated deepcopy function. +func DeepCopy_v1alpha1_Rule(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*Rule) + out := out.(*Rule) + *out = *in + if in.APIGroups != nil { + in, out := &in.APIGroups, &out.APIGroups + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.APIVersions != nil { + in, out := &in.APIVersions, &out.APIVersions + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.Resources != nil { + in, out := &in.Resources, &out.Resources + *out = make([]string, len(*in)) + copy(*out, *in) + } + return nil + } +} + +// DeepCopy_v1alpha1_RuleWithOperations is an autogenerated deepcopy function. +func DeepCopy_v1alpha1_RuleWithOperations(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*RuleWithOperations) + out := out.(*RuleWithOperations) + *out = *in + if in.Operations != nil { + in, out := &in.Operations, &out.Operations + *out = make([]OperationType, len(*in)) + copy(*out, *in) + } + if err := DeepCopy_v1alpha1_Rule(&in.Rule, &out.Rule, c); err != nil { + return err + } + return nil + } +} + +// DeepCopy_v1alpha1_ServiceReference is an autogenerated deepcopy function. +func DeepCopy_v1alpha1_ServiceReference(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ServiceReference) + out := out.(*ServiceReference) + *out = *in + return nil + } +} diff --git a/vendor/k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/zz_generated.defaults.go b/vendor/k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/zz_generated.defaults.go new file mode 100644 index 00000000..74fea7f4 --- /dev/null +++ b/vendor/k8s.io/client-go/pkg/apis/admissionregistration/v1alpha1/zz_generated.defaults.go @@ -0,0 +1,70 @@ +// +build !ignore_autogenerated + +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This file was autogenerated by defaulter-gen. Do not edit it manually! + +package v1alpha1 + +import ( + runtime "k8s.io/apimachinery/pkg/runtime" +) + +// RegisterDefaults adds defaulters functions to the given scheme. +// Public to allow building arbitrary schemes. +// All generated defaulters are covering - they call all nested defaulters. +func RegisterDefaults(scheme *runtime.Scheme) error { + scheme.AddTypeDefaultingFunc(&ExternalAdmissionHookConfiguration{}, func(obj interface{}) { + SetObjectDefaults_ExternalAdmissionHookConfiguration(obj.(*ExternalAdmissionHookConfiguration)) + }) + scheme.AddTypeDefaultingFunc(&ExternalAdmissionHookConfigurationList{}, func(obj interface{}) { + SetObjectDefaults_ExternalAdmissionHookConfigurationList(obj.(*ExternalAdmissionHookConfigurationList)) + }) + scheme.AddTypeDefaultingFunc(&InitializerConfiguration{}, func(obj interface{}) { SetObjectDefaults_InitializerConfiguration(obj.(*InitializerConfiguration)) }) + scheme.AddTypeDefaultingFunc(&InitializerConfigurationList{}, func(obj interface{}) { + SetObjectDefaults_InitializerConfigurationList(obj.(*InitializerConfigurationList)) + }) + return nil +} + +func SetObjectDefaults_ExternalAdmissionHookConfiguration(in *ExternalAdmissionHookConfiguration) { + for i := range in.ExternalAdmissionHooks { + a := &in.ExternalAdmissionHooks[i] + SetDefaults_ExternalAdmissionHook(a) + } +} + +func SetObjectDefaults_ExternalAdmissionHookConfigurationList(in *ExternalAdmissionHookConfigurationList) { + for i := range in.Items { + a := &in.Items[i] + SetObjectDefaults_ExternalAdmissionHookConfiguration(a) + } +} + +func SetObjectDefaults_InitializerConfiguration(in *InitializerConfiguration) { + for i := range in.Initializers { + a := &in.Initializers[i] + SetDefaults_Initializer(a) + } +} + +func SetObjectDefaults_InitializerConfigurationList(in *InitializerConfigurationList) { + for i := range in.Items { + a := &in.Items[i] + SetObjectDefaults_InitializerConfiguration(a) + } +} diff --git a/vendor/k8s.io/client-go/pkg/apis/admissionregistration/zz_generated.deepcopy.go b/vendor/k8s.io/client-go/pkg/apis/admissionregistration/zz_generated.deepcopy.go new file mode 100644 index 00000000..e41f28ef --- /dev/null +++ b/vendor/k8s.io/client-go/pkg/apis/admissionregistration/zz_generated.deepcopy.go @@ -0,0 +1,254 @@ +// +build !ignore_autogenerated + +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This file was autogenerated by deepcopy-gen. Do not edit it manually! + +package admissionregistration + +import ( + v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + conversion "k8s.io/apimachinery/pkg/conversion" + runtime "k8s.io/apimachinery/pkg/runtime" + reflect "reflect" +) + +func init() { + SchemeBuilder.Register(RegisterDeepCopies) +} + +// RegisterDeepCopies adds deep-copy functions to the given scheme. Public +// to allow building arbitrary schemes. +func RegisterDeepCopies(scheme *runtime.Scheme) error { + return scheme.AddGeneratedDeepCopyFuncs( + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_admissionregistration_AdmissionHookClientConfig, InType: reflect.TypeOf(&AdmissionHookClientConfig{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_admissionregistration_ExternalAdmissionHook, InType: reflect.TypeOf(&ExternalAdmissionHook{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_admissionregistration_ExternalAdmissionHookConfiguration, InType: reflect.TypeOf(&ExternalAdmissionHookConfiguration{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_admissionregistration_ExternalAdmissionHookConfigurationList, InType: reflect.TypeOf(&ExternalAdmissionHookConfigurationList{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_admissionregistration_Initializer, InType: reflect.TypeOf(&Initializer{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_admissionregistration_InitializerConfiguration, InType: reflect.TypeOf(&InitializerConfiguration{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_admissionregistration_InitializerConfigurationList, InType: reflect.TypeOf(&InitializerConfigurationList{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_admissionregistration_Rule, InType: reflect.TypeOf(&Rule{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_admissionregistration_RuleWithOperations, InType: reflect.TypeOf(&RuleWithOperations{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_admissionregistration_ServiceReference, InType: reflect.TypeOf(&ServiceReference{})}, + ) +} + +// DeepCopy_admissionregistration_AdmissionHookClientConfig is an autogenerated deepcopy function. +func DeepCopy_admissionregistration_AdmissionHookClientConfig(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*AdmissionHookClientConfig) + out := out.(*AdmissionHookClientConfig) + *out = *in + if in.CABundle != nil { + in, out := &in.CABundle, &out.CABundle + *out = make([]byte, len(*in)) + copy(*out, *in) + } + return nil + } +} + +// DeepCopy_admissionregistration_ExternalAdmissionHook is an autogenerated deepcopy function. +func DeepCopy_admissionregistration_ExternalAdmissionHook(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ExternalAdmissionHook) + out := out.(*ExternalAdmissionHook) + *out = *in + if err := DeepCopy_admissionregistration_AdmissionHookClientConfig(&in.ClientConfig, &out.ClientConfig, c); err != nil { + return err + } + if in.Rules != nil { + in, out := &in.Rules, &out.Rules + *out = make([]RuleWithOperations, len(*in)) + for i := range *in { + if err := DeepCopy_admissionregistration_RuleWithOperations(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + if in.FailurePolicy != nil { + in, out := &in.FailurePolicy, &out.FailurePolicy + *out = new(FailurePolicyType) + **out = **in + } + return nil + } +} + +// DeepCopy_admissionregistration_ExternalAdmissionHookConfiguration is an autogenerated deepcopy function. +func DeepCopy_admissionregistration_ExternalAdmissionHookConfiguration(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ExternalAdmissionHookConfiguration) + out := out.(*ExternalAdmissionHookConfiguration) + *out = *in + if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { + return err + } else { + out.ObjectMeta = *newVal.(*v1.ObjectMeta) + } + if in.ExternalAdmissionHooks != nil { + in, out := &in.ExternalAdmissionHooks, &out.ExternalAdmissionHooks + *out = make([]ExternalAdmissionHook, len(*in)) + for i := range *in { + if err := DeepCopy_admissionregistration_ExternalAdmissionHook(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} + +// DeepCopy_admissionregistration_ExternalAdmissionHookConfigurationList is an autogenerated deepcopy function. +func DeepCopy_admissionregistration_ExternalAdmissionHookConfigurationList(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ExternalAdmissionHookConfigurationList) + out := out.(*ExternalAdmissionHookConfigurationList) + *out = *in + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]ExternalAdmissionHookConfiguration, len(*in)) + for i := range *in { + if err := DeepCopy_admissionregistration_ExternalAdmissionHookConfiguration(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} + +// DeepCopy_admissionregistration_Initializer is an autogenerated deepcopy function. +func DeepCopy_admissionregistration_Initializer(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*Initializer) + out := out.(*Initializer) + *out = *in + if in.Rules != nil { + in, out := &in.Rules, &out.Rules + *out = make([]Rule, len(*in)) + for i := range *in { + if err := DeepCopy_admissionregistration_Rule(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + if in.FailurePolicy != nil { + in, out := &in.FailurePolicy, &out.FailurePolicy + *out = new(FailurePolicyType) + **out = **in + } + return nil + } +} + +// DeepCopy_admissionregistration_InitializerConfiguration is an autogenerated deepcopy function. +func DeepCopy_admissionregistration_InitializerConfiguration(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*InitializerConfiguration) + out := out.(*InitializerConfiguration) + *out = *in + if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { + return err + } else { + out.ObjectMeta = *newVal.(*v1.ObjectMeta) + } + if in.Initializers != nil { + in, out := &in.Initializers, &out.Initializers + *out = make([]Initializer, len(*in)) + for i := range *in { + if err := DeepCopy_admissionregistration_Initializer(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} + +// DeepCopy_admissionregistration_InitializerConfigurationList is an autogenerated deepcopy function. +func DeepCopy_admissionregistration_InitializerConfigurationList(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*InitializerConfigurationList) + out := out.(*InitializerConfigurationList) + *out = *in + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]InitializerConfiguration, len(*in)) + for i := range *in { + if err := DeepCopy_admissionregistration_InitializerConfiguration(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} + +// DeepCopy_admissionregistration_Rule is an autogenerated deepcopy function. +func DeepCopy_admissionregistration_Rule(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*Rule) + out := out.(*Rule) + *out = *in + if in.APIGroups != nil { + in, out := &in.APIGroups, &out.APIGroups + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.APIVersions != nil { + in, out := &in.APIVersions, &out.APIVersions + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.Resources != nil { + in, out := &in.Resources, &out.Resources + *out = make([]string, len(*in)) + copy(*out, *in) + } + return nil + } +} + +// DeepCopy_admissionregistration_RuleWithOperations is an autogenerated deepcopy function. +func DeepCopy_admissionregistration_RuleWithOperations(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*RuleWithOperations) + out := out.(*RuleWithOperations) + *out = *in + if in.Operations != nil { + in, out := &in.Operations, &out.Operations + *out = make([]OperationType, len(*in)) + copy(*out, *in) + } + if err := DeepCopy_admissionregistration_Rule(&in.Rule, &out.Rule, c); err != nil { + return err + } + return nil + } +} + +// DeepCopy_admissionregistration_ServiceReference is an autogenerated deepcopy function. +func DeepCopy_admissionregistration_ServiceReference(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ServiceReference) + out := out.(*ServiceReference) + *out = *in + return nil + } +} diff --git a/vendor/k8s.io/client-go/pkg/apis/apps/register.go b/vendor/k8s.io/client-go/pkg/apis/apps/register.go index d1d3bab2..1098ce0a 100644 --- a/vendor/k8s.io/client-go/pkg/apis/apps/register.go +++ b/vendor/k8s.io/client-go/pkg/apis/apps/register.go @@ -53,6 +53,8 @@ func addKnownTypes(scheme *runtime.Scheme) error { &extensions.Scale{}, &StatefulSet{}, &StatefulSetList{}, + &ControllerRevision{}, + &ControllerRevisionList{}, ) return nil } diff --git a/vendor/k8s.io/client-go/pkg/apis/apps/types.go b/vendor/k8s.io/client-go/pkg/apis/apps/types.go index 9b9b2d1b..9691120e 100644 --- a/vendor/k8s.io/client-go/pkg/apis/apps/types.go +++ b/vendor/k8s.io/client-go/pkg/apis/apps/types.go @@ -18,6 +18,7 @@ package apps import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime" "k8s.io/client-go/pkg/api" ) @@ -44,6 +45,57 @@ type StatefulSet struct { Status StatefulSetStatus } +// PodManagementPolicyType defines the policy for creating pods under a stateful set. +type PodManagementPolicyType string + +const ( + // OrderedReadyPodManagement will create pods in strictly increasing order on + // scale up and strictly decreasing order on scale down, progressing only when + // the previous pod is ready or terminated. At most one pod will be changed + // at any time. + OrderedReadyPodManagement PodManagementPolicyType = "OrderedReady" + // ParallelPodManagement will create and delete pods as soon as the stateful set + // replica count is changed, and will not wait for pods to be ready or complete + // termination. + ParallelPodManagement = "Parallel" +) + +// StatefulSetUpdateStrategy indicates the strategy that the StatefulSet +// controller will use to perform updates. It includes any additional parameters +// necessary to perform the update for the indicated strategy. +type StatefulSetUpdateStrategy struct { + // Type indicates the type of the StatefulSetUpdateStrategy. + Type StatefulSetUpdateStrategyType + // RollingUpdate is used to communicate parameters when Type is RollingUpdateStatefulSetStrategyType. + RollingUpdate *RollingUpdateStatefulSetStrategy +} + +// StatefulSetUpdateStrategyType is a string enumeration type that enumerates +// all possible update strategies for the StatefulSet controller. +type StatefulSetUpdateStrategyType string + +const ( + // RollingUpdateStatefulSetStrategyType indicates that update will be + // applied to all Pods in the StatefulSet with respect to the StatefulSet + // ordering constraints. When a scale operation is performed with this + // strategy, new Pods will be created from the specification version indicated + // by the StatefulSet's updateRevision. + RollingUpdateStatefulSetStrategyType = "RollingUpdate" + // OnDeleteStatefulSetStrategyType triggers the legacy behavior. Version + // tracking and ordered rolling restarts are disabled. Pods are recreated + // from the StatefulSetSpec when they are manually deleted. When a scale + // operation is performed with this strategy,specification version indicated + // by the StatefulSet's currentRevision. + OnDeleteStatefulSetStrategyType = "OnDelete" +) + +// RollingUpdateStatefulSetStrategy is used to communicate parameter for RollingUpdateStatefulSetStrategyType. +type RollingUpdateStatefulSetStrategy struct { + // Partition indicates the ordinal at which the StatefulSet should be + // partitioned. + Partition int32 +} + // A StatefulSetSpec is the specification of a StatefulSet. type StatefulSetSpec struct { // Replicas is the desired number of replicas of the given Template. @@ -82,16 +134,58 @@ type StatefulSetSpec struct { // pattern: pod-specific-string.serviceName.default.svc.cluster.local // where "pod-specific-string" is managed by the StatefulSet controller. ServiceName string + + // PodManagementPolicy controls how pods are created during initial scale up, + // when replacing pods on nodes, or when scaling down. The default policy is + // `OrderedReady`, where pods are created in increasing order (pod-0, then + // pod-1, etc) and the controller will wait until each pod is ready before + // continuing. When scaling down, the pods are removed in the opposite order. + // The alternative policy is `Parallel` which will create pods in parallel + // to match the desired scale without waiting, and on scale down will delete + // all pods at once. + // +optional + PodManagementPolicy PodManagementPolicyType + + // updateStrategy indicates the StatefulSetUpdateStrategy that will be + // employed to update Pods in the StatefulSet when a revision is made to + // Template. + UpdateStrategy StatefulSetUpdateStrategy + + // revisionHistoryLimit is the maximum number of revisions that will + // be maintained in the StatefulSet's revision history. The revision history + // consists of all revisions not represented by a currently applied + // StatefulSetSpec version. The default value is 10. + RevisionHistoryLimit *int32 } // StatefulSetStatus represents the current state of a StatefulSet. type StatefulSetStatus struct { - // most recent generation observed by this StatefulSet. + // observedGeneration is the most recent generation observed for this StatefulSet. It corresponds to the + // StatefulSet's generation, which is updated on mutation by the API Server. // +optional ObservedGeneration *int64 - // Replicas is the number of actual replicas. + // replicas is the number of Pods created by the StatefulSet controller. Replicas int32 + + // readyReplicas is the number of Pods created by the StatefulSet controller that have a Ready Condition. + ReadyReplicas int32 + + // currentReplicas is the number of Pods created by the StatefulSet controller from the StatefulSet version + // indicated by currentRevision. + CurrentReplicas int32 + + // updatedReplicas is the number of Pods created by the StatefulSet controller from the StatefulSet version + // indicated by updateRevision. + UpdatedReplicas int32 + + // currentRevision, if not empty, indicates the version of the StatefulSet used to generate Pods in the + // sequence [0,currentReplicas). + CurrentRevision string + + // updateRevision, if not empty, indicates the version of the StatefulSet used to generate Pods in the sequence + // [replicas-updatedReplicas,replicas) + UpdateRevision string } // StatefulSetList is a collection of StatefulSets. @@ -101,3 +195,35 @@ type StatefulSetList struct { metav1.ListMeta Items []StatefulSet } + +// +genclient=true + +// ControllerRevision implements an immutable snapshot of state data. Clients +// are responsible for serializing and deserializing the objects that contain +// their internal state. +// Once a ControllerRevision has been successfully created, it can not be updated. +// The API Server will fail validation of all requests that attempt to mutate +// the Data field. ControllerRevisions may, however, be deleted. +type ControllerRevision struct { + metav1.TypeMeta + // Standard object's metadata. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + // +optional + metav1.ObjectMeta + + // Data is the Object representing the state. + Data runtime.Object + + // Revision indicates the revision of the state represented by Data. + Revision int64 +} + +// ControllerRevisionList is a resource containing a list of ControllerRevision objects. +type ControllerRevisionList struct { + metav1.TypeMeta + // +optional + metav1.ListMeta + + // Items is the list of ControllerRevision objects. + Items []ControllerRevision +} diff --git a/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/conversion.go b/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/conversion.go index 6631cd37..66badd15 100644 --- a/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/conversion.go +++ b/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/conversion.go @@ -37,6 +37,8 @@ func addConversionFuncs(scheme *runtime.Scheme) error { err := scheme.AddConversionFuncs( Convert_v1beta1_StatefulSetSpec_To_apps_StatefulSetSpec, Convert_apps_StatefulSetSpec_To_v1beta1_StatefulSetSpec, + Convert_v1beta1_StatefulSetUpdateStrategy_To_apps_StatefulSetUpdateStrategy, + Convert_apps_StatefulSetUpdateStrategy_To_v1beta1_StatefulSetUpdateStrategy, // extensions // TODO: below conversions should be dropped in favor of auto-generated // ones, see https://github.com/kubernetes/kubernetextensionsssues/39865 @@ -109,7 +111,17 @@ func Convert_v1beta1_StatefulSetSpec_To_apps_StatefulSetSpec(in *StatefulSetSpec } else { out.VolumeClaimTemplates = nil } + if err := Convert_v1beta1_StatefulSetUpdateStrategy_To_apps_StatefulSetUpdateStrategy(&in.UpdateStrategy, &out.UpdateStrategy, s); err != nil { + return err + } + if in.RevisionHistoryLimit != nil { + out.RevisionHistoryLimit = new(int32) + *out.RevisionHistoryLimit = *in.RevisionHistoryLimit + } else { + out.RevisionHistoryLimit = nil + } out.ServiceName = in.ServiceName + out.PodManagementPolicy = apps.PodManagementPolicyType(in.PodManagementPolicy) return nil } @@ -139,7 +151,40 @@ func Convert_apps_StatefulSetSpec_To_v1beta1_StatefulSetSpec(in *apps.StatefulSe } else { out.VolumeClaimTemplates = nil } + if in.RevisionHistoryLimit != nil { + out.RevisionHistoryLimit = new(int32) + *out.RevisionHistoryLimit = *in.RevisionHistoryLimit + } else { + out.RevisionHistoryLimit = nil + } out.ServiceName = in.ServiceName + out.PodManagementPolicy = PodManagementPolicyType(in.PodManagementPolicy) + if err := Convert_apps_StatefulSetUpdateStrategy_To_v1beta1_StatefulSetUpdateStrategy(&in.UpdateStrategy, &out.UpdateStrategy, s); err != nil { + return err + } + return nil +} + +func Convert_v1beta1_StatefulSetUpdateStrategy_To_apps_StatefulSetUpdateStrategy(in *StatefulSetUpdateStrategy, out *apps.StatefulSetUpdateStrategy, s conversion.Scope) error { + out.Type = apps.StatefulSetUpdateStrategyType(in.Type) + if in.RollingUpdate != nil { + out.RollingUpdate = new(apps.RollingUpdateStatefulSetStrategy) + out.RollingUpdate.Partition = *in.RollingUpdate.Partition + } else { + out.RollingUpdate = nil + } + return nil +} + +func Convert_apps_StatefulSetUpdateStrategy_To_v1beta1_StatefulSetUpdateStrategy(in *apps.StatefulSetUpdateStrategy, out *StatefulSetUpdateStrategy, s conversion.Scope) error { + out.Type = StatefulSetUpdateStrategyType(in.Type) + if in.RollingUpdate != nil { + out.RollingUpdate = new(RollingUpdateStatefulSetStrategy) + out.RollingUpdate.Partition = new(int32) + *out.RollingUpdate.Partition = in.RollingUpdate.Partition + } else { + out.RollingUpdate = nil + } return nil } diff --git a/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/defaults.go b/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/defaults.go index def2bab7..af133d25 100644 --- a/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/defaults.go +++ b/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/defaults.go @@ -27,6 +27,13 @@ func addDefaultingFuncs(scheme *runtime.Scheme) error { } func SetDefaults_StatefulSet(obj *StatefulSet) { + if len(obj.Spec.PodManagementPolicy) == 0 { + obj.Spec.PodManagementPolicy = OrderedReadyPodManagement + } + + if obj.Spec.UpdateStrategy.Type == "" { + obj.Spec.UpdateStrategy.Type = OnDeleteStatefulSetStrategyType + } labels := obj.Spec.Template.Labels if labels != nil { if obj.Spec.Selector == nil { @@ -42,6 +49,17 @@ func SetDefaults_StatefulSet(obj *StatefulSet) { obj.Spec.Replicas = new(int32) *obj.Spec.Replicas = 1 } + if obj.Spec.RevisionHistoryLimit == nil { + obj.Spec.RevisionHistoryLimit = new(int32) + *obj.Spec.RevisionHistoryLimit = 10 + } + if obj.Spec.UpdateStrategy.Type == RollingUpdateStatefulSetStrategyType && + obj.Spec.UpdateStrategy.RollingUpdate != nil && + obj.Spec.UpdateStrategy.RollingUpdate.Partition == nil { + obj.Spec.UpdateStrategy.RollingUpdate.Partition = new(int32) + *obj.Spec.UpdateStrategy.RollingUpdate.Partition = 0 + } + } // SetDefaults_Deployment sets additional defaults compared to its counterpart diff --git a/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/generated.pb.go b/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/generated.pb.go index 32b6f40e..9f7395c8 100644 --- a/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/generated.pb.go +++ b/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/generated.pb.go @@ -25,6 +25,8 @@ limitations under the License. k8s.io/kubernetes/pkg/apis/apps/v1beta1/generated.proto It has these top-level messages: + ControllerRevision + ControllerRevisionList Deployment DeploymentCondition DeploymentList @@ -34,6 +36,7 @@ limitations under the License. DeploymentStrategy RollbackConfig RollingUpdateDeployment + RollingUpdateStatefulSetStrategy Scale ScaleSpec ScaleStatus @@ -41,6 +44,7 @@ limitations under the License. StatefulSetList StatefulSetSpec StatefulSetStatus + StatefulSetUpdateStrategy */ package v1beta1 @@ -51,12 +55,12 @@ import math "math" import k8s_io_apimachinery_pkg_apis_meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" import k8s_io_apimachinery_pkg_util_intstr "k8s.io/apimachinery/pkg/util/intstr" - import k8s_io_kubernetes_pkg_api_v1 "k8s.io/client-go/pkg/api/v1" +import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + import strings "strings" import reflect "reflect" -import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" import io "io" @@ -71,71 +75,95 @@ var _ = math.Inf // proto package needs to be updated. const _ = proto.GoGoProtoPackageIsVersion2 // please upgrade the proto package +func (m *ControllerRevision) Reset() { *m = ControllerRevision{} } +func (*ControllerRevision) ProtoMessage() {} +func (*ControllerRevision) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{0} } + +func (m *ControllerRevisionList) Reset() { *m = ControllerRevisionList{} } +func (*ControllerRevisionList) ProtoMessage() {} +func (*ControllerRevisionList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{1} } + func (m *Deployment) Reset() { *m = Deployment{} } func (*Deployment) ProtoMessage() {} -func (*Deployment) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{0} } +func (*Deployment) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{2} } func (m *DeploymentCondition) Reset() { *m = DeploymentCondition{} } func (*DeploymentCondition) ProtoMessage() {} -func (*DeploymentCondition) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{1} } +func (*DeploymentCondition) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{3} } func (m *DeploymentList) Reset() { *m = DeploymentList{} } func (*DeploymentList) ProtoMessage() {} -func (*DeploymentList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{2} } +func (*DeploymentList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{4} } func (m *DeploymentRollback) Reset() { *m = DeploymentRollback{} } func (*DeploymentRollback) ProtoMessage() {} -func (*DeploymentRollback) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{3} } +func (*DeploymentRollback) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{5} } func (m *DeploymentSpec) Reset() { *m = DeploymentSpec{} } func (*DeploymentSpec) ProtoMessage() {} -func (*DeploymentSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{4} } +func (*DeploymentSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{6} } func (m *DeploymentStatus) Reset() { *m = DeploymentStatus{} } func (*DeploymentStatus) ProtoMessage() {} -func (*DeploymentStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{5} } +func (*DeploymentStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{7} } func (m *DeploymentStrategy) Reset() { *m = DeploymentStrategy{} } func (*DeploymentStrategy) ProtoMessage() {} -func (*DeploymentStrategy) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{6} } +func (*DeploymentStrategy) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{8} } func (m *RollbackConfig) Reset() { *m = RollbackConfig{} } func (*RollbackConfig) ProtoMessage() {} -func (*RollbackConfig) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{7} } +func (*RollbackConfig) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{9} } -func (m *RollingUpdateDeployment) Reset() { *m = RollingUpdateDeployment{} } -func (*RollingUpdateDeployment) ProtoMessage() {} -func (*RollingUpdateDeployment) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{8} } +func (m *RollingUpdateDeployment) Reset() { *m = RollingUpdateDeployment{} } +func (*RollingUpdateDeployment) ProtoMessage() {} +func (*RollingUpdateDeployment) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{10} +} + +func (m *RollingUpdateStatefulSetStrategy) Reset() { *m = RollingUpdateStatefulSetStrategy{} } +func (*RollingUpdateStatefulSetStrategy) ProtoMessage() {} +func (*RollingUpdateStatefulSetStrategy) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{11} +} func (m *Scale) Reset() { *m = Scale{} } func (*Scale) ProtoMessage() {} -func (*Scale) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{9} } +func (*Scale) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{12} } func (m *ScaleSpec) Reset() { *m = ScaleSpec{} } func (*ScaleSpec) ProtoMessage() {} -func (*ScaleSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{10} } +func (*ScaleSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{13} } func (m *ScaleStatus) Reset() { *m = ScaleStatus{} } func (*ScaleStatus) ProtoMessage() {} -func (*ScaleStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{11} } +func (*ScaleStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{14} } func (m *StatefulSet) Reset() { *m = StatefulSet{} } func (*StatefulSet) ProtoMessage() {} -func (*StatefulSet) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{12} } +func (*StatefulSet) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{15} } func (m *StatefulSetList) Reset() { *m = StatefulSetList{} } func (*StatefulSetList) ProtoMessage() {} -func (*StatefulSetList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{13} } +func (*StatefulSetList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{16} } func (m *StatefulSetSpec) Reset() { *m = StatefulSetSpec{} } func (*StatefulSetSpec) ProtoMessage() {} -func (*StatefulSetSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{14} } +func (*StatefulSetSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{17} } func (m *StatefulSetStatus) Reset() { *m = StatefulSetStatus{} } func (*StatefulSetStatus) ProtoMessage() {} -func (*StatefulSetStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{15} } +func (*StatefulSetStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{18} } + +func (m *StatefulSetUpdateStrategy) Reset() { *m = StatefulSetUpdateStrategy{} } +func (*StatefulSetUpdateStrategy) ProtoMessage() {} +func (*StatefulSetUpdateStrategy) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{19} +} func init() { + proto.RegisterType((*ControllerRevision)(nil), "k8s.io.client-go.pkg.apis.apps.v1beta1.ControllerRevision") + proto.RegisterType((*ControllerRevisionList)(nil), "k8s.io.client-go.pkg.apis.apps.v1beta1.ControllerRevisionList") proto.RegisterType((*Deployment)(nil), "k8s.io.client-go.pkg.apis.apps.v1beta1.Deployment") proto.RegisterType((*DeploymentCondition)(nil), "k8s.io.client-go.pkg.apis.apps.v1beta1.DeploymentCondition") proto.RegisterType((*DeploymentList)(nil), "k8s.io.client-go.pkg.apis.apps.v1beta1.DeploymentList") @@ -145,6 +173,7 @@ func init() { proto.RegisterType((*DeploymentStrategy)(nil), "k8s.io.client-go.pkg.apis.apps.v1beta1.DeploymentStrategy") proto.RegisterType((*RollbackConfig)(nil), "k8s.io.client-go.pkg.apis.apps.v1beta1.RollbackConfig") proto.RegisterType((*RollingUpdateDeployment)(nil), "k8s.io.client-go.pkg.apis.apps.v1beta1.RollingUpdateDeployment") + proto.RegisterType((*RollingUpdateStatefulSetStrategy)(nil), "k8s.io.client-go.pkg.apis.apps.v1beta1.RollingUpdateStatefulSetStrategy") proto.RegisterType((*Scale)(nil), "k8s.io.client-go.pkg.apis.apps.v1beta1.Scale") proto.RegisterType((*ScaleSpec)(nil), "k8s.io.client-go.pkg.apis.apps.v1beta1.ScaleSpec") proto.RegisterType((*ScaleStatus)(nil), "k8s.io.client-go.pkg.apis.apps.v1beta1.ScaleStatus") @@ -152,7 +181,83 @@ func init() { proto.RegisterType((*StatefulSetList)(nil), "k8s.io.client-go.pkg.apis.apps.v1beta1.StatefulSetList") proto.RegisterType((*StatefulSetSpec)(nil), "k8s.io.client-go.pkg.apis.apps.v1beta1.StatefulSetSpec") proto.RegisterType((*StatefulSetStatus)(nil), "k8s.io.client-go.pkg.apis.apps.v1beta1.StatefulSetStatus") + proto.RegisterType((*StatefulSetUpdateStrategy)(nil), "k8s.io.client-go.pkg.apis.apps.v1beta1.StatefulSetUpdateStrategy") } +func (m *ControllerRevision) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ControllerRevision) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) + n1, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n1 + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Data.Size())) + n2, err := m.Data.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n2 + dAtA[i] = 0x18 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Revision)) + return i, nil +} + +func (m *ControllerRevisionList) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ControllerRevisionList) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) + n3, err := m.ListMeta.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n3 + if len(m.Items) > 0 { + for _, msg := range m.Items { + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(msg.Size())) + n, err := msg.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n + } + } + return i, nil +} + func (m *Deployment) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -171,27 +276,27 @@ func (m *Deployment) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n1, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + n4, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n1 + i += n4 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) - n2, err := m.Spec.MarshalTo(dAtA[i:]) + n5, err := m.Spec.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n2 + i += n5 dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) - n3, err := m.Status.MarshalTo(dAtA[i:]) + n6, err := m.Status.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n3 + i += n6 return i, nil } @@ -229,19 +334,19 @@ func (m *DeploymentCondition) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x32 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.LastUpdateTime.Size())) - n4, err := m.LastUpdateTime.MarshalTo(dAtA[i:]) + n7, err := m.LastUpdateTime.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n4 + i += n7 dAtA[i] = 0x3a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.LastTransitionTime.Size())) - n5, err := m.LastTransitionTime.MarshalTo(dAtA[i:]) + n8, err := m.LastTransitionTime.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n5 + i += n8 return i, nil } @@ -263,11 +368,11 @@ func (m *DeploymentList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n6, err := m.ListMeta.MarshalTo(dAtA[i:]) + n9, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n6 + i += n9 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -303,10 +408,15 @@ func (m *DeploymentRollback) MarshalTo(dAtA []byte) (int, error) { i = encodeVarintGenerated(dAtA, i, uint64(len(m.Name))) i += copy(dAtA[i:], m.Name) if len(m.UpdatedAnnotations) > 0 { + keysForUpdatedAnnotations := make([]string, 0, len(m.UpdatedAnnotations)) for k := range m.UpdatedAnnotations { + keysForUpdatedAnnotations = append(keysForUpdatedAnnotations, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForUpdatedAnnotations) + for _, k := range keysForUpdatedAnnotations { dAtA[i] = 0x12 i++ - v := m.UpdatedAnnotations[k] + v := m.UpdatedAnnotations[string(k)] mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v))) i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) dAtA[i] = 0xa @@ -322,11 +432,11 @@ func (m *DeploymentRollback) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.RollbackTo.Size())) - n7, err := m.RollbackTo.MarshalTo(dAtA[i:]) + n10, err := m.RollbackTo.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n7 + i += n10 return i, nil } @@ -354,28 +464,28 @@ func (m *DeploymentSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Selector.Size())) - n8, err := m.Selector.MarshalTo(dAtA[i:]) + n11, err := m.Selector.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n8 + i += n11 } dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Template.Size())) - n9, err := m.Template.MarshalTo(dAtA[i:]) + n12, err := m.Template.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n9 + i += n12 dAtA[i] = 0x22 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Strategy.Size())) - n10, err := m.Strategy.MarshalTo(dAtA[i:]) + n13, err := m.Strategy.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n10 + i += n13 dAtA[i] = 0x28 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.MinReadySeconds)) @@ -396,11 +506,11 @@ func (m *DeploymentSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x42 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.RollbackTo.Size())) - n11, err := m.RollbackTo.MarshalTo(dAtA[i:]) + n14, err := m.RollbackTo.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n11 + i += n14 } if m.ProgressDeadlineSeconds != nil { dAtA[i] = 0x48 @@ -455,6 +565,11 @@ func (m *DeploymentStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x38 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ReadyReplicas)) + if m.CollisionCount != nil { + dAtA[i] = 0x40 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(*m.CollisionCount)) + } return i, nil } @@ -481,11 +596,11 @@ func (m *DeploymentStrategy) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.RollingUpdate.Size())) - n12, err := m.RollingUpdate.MarshalTo(dAtA[i:]) + n15, err := m.RollingUpdate.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n12 + i += n15 } return i, nil } @@ -530,21 +645,44 @@ func (m *RollingUpdateDeployment) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.MaxUnavailable.Size())) - n13, err := m.MaxUnavailable.MarshalTo(dAtA[i:]) + n16, err := m.MaxUnavailable.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n13 + i += n16 } if m.MaxSurge != nil { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.MaxSurge.Size())) - n14, err := m.MaxSurge.MarshalTo(dAtA[i:]) + n17, err := m.MaxSurge.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n14 + i += n17 + } + return i, nil +} + +func (m *RollingUpdateStatefulSetStrategy) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *RollingUpdateStatefulSetStrategy) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + if m.Partition != nil { + dAtA[i] = 0x8 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(*m.Partition)) } return i, nil } @@ -567,27 +705,27 @@ func (m *Scale) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n15, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + n18, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n15 + i += n18 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) - n16, err := m.Spec.MarshalTo(dAtA[i:]) + n19, err := m.Spec.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n16 + i += n19 dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) - n17, err := m.Status.MarshalTo(dAtA[i:]) + n20, err := m.Status.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n17 + i += n20 return i, nil } @@ -631,10 +769,15 @@ func (m *ScaleStatus) MarshalTo(dAtA []byte) (int, error) { i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Replicas)) if len(m.Selector) > 0 { + keysForSelector := make([]string, 0, len(m.Selector)) for k := range m.Selector { + keysForSelector = append(keysForSelector, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForSelector) + for _, k := range keysForSelector { dAtA[i] = 0x12 i++ - v := m.Selector[k] + v := m.Selector[string(k)] mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v))) i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) dAtA[i] = 0xa @@ -672,27 +815,27 @@ func (m *StatefulSet) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n18, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + n21, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n18 + i += n21 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) - n19, err := m.Spec.MarshalTo(dAtA[i:]) + n22, err := m.Spec.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n19 + i += n22 dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) - n20, err := m.Status.MarshalTo(dAtA[i:]) + n23, err := m.Status.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n20 + i += n23 return i, nil } @@ -714,11 +857,11 @@ func (m *StatefulSetList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n21, err := m.ListMeta.MarshalTo(dAtA[i:]) + n24, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n21 + i += n24 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -758,20 +901,20 @@ func (m *StatefulSetSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Selector.Size())) - n22, err := m.Selector.MarshalTo(dAtA[i:]) + n25, err := m.Selector.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n22 + i += n25 } dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Template.Size())) - n23, err := m.Template.MarshalTo(dAtA[i:]) + n26, err := m.Template.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n23 + i += n26 if len(m.VolumeClaimTemplates) > 0 { for _, msg := range m.VolumeClaimTemplates { dAtA[i] = 0x22 @@ -788,6 +931,23 @@ func (m *StatefulSetSpec) MarshalTo(dAtA []byte) (int, error) { i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.ServiceName))) i += copy(dAtA[i:], m.ServiceName) + dAtA[i] = 0x32 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.PodManagementPolicy))) + i += copy(dAtA[i:], m.PodManagementPolicy) + dAtA[i] = 0x3a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.UpdateStrategy.Size())) + n27, err := m.UpdateStrategy.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n27 + if m.RevisionHistoryLimit != nil { + dAtA[i] = 0x40 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(*m.RevisionHistoryLimit)) + } return i, nil } @@ -814,6 +974,55 @@ func (m *StatefulSetStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x10 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Replicas)) + dAtA[i] = 0x18 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.ReadyReplicas)) + dAtA[i] = 0x20 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.CurrentReplicas)) + dAtA[i] = 0x28 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.UpdatedReplicas)) + dAtA[i] = 0x32 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.CurrentRevision))) + i += copy(dAtA[i:], m.CurrentRevision) + dAtA[i] = 0x3a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.UpdateRevision))) + i += copy(dAtA[i:], m.UpdateRevision) + return i, nil +} + +func (m *StatefulSetUpdateStrategy) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *StatefulSetUpdateStrategy) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.Type))) + i += copy(dAtA[i:], m.Type) + if m.RollingUpdate != nil { + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.RollingUpdate.Size())) + n28, err := m.RollingUpdate.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n28 + } return i, nil } @@ -844,6 +1053,31 @@ func encodeVarintGenerated(dAtA []byte, offset int, v uint64) int { dAtA[offset] = uint8(v) return offset + 1 } +func (m *ControllerRevision) Size() (n int) { + var l int + _ = l + l = m.ObjectMeta.Size() + n += 1 + l + sovGenerated(uint64(l)) + l = m.Data.Size() + n += 1 + l + sovGenerated(uint64(l)) + n += 1 + sovGenerated(uint64(m.Revision)) + return n +} + +func (m *ControllerRevisionList) Size() (n int) { + var l int + _ = l + l = m.ListMeta.Size() + n += 1 + l + sovGenerated(uint64(l)) + if len(m.Items) > 0 { + for _, e := range m.Items { + l = e.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + } + return n +} + func (m *Deployment) Size() (n int) { var l int _ = l @@ -950,6 +1184,9 @@ func (m *DeploymentStatus) Size() (n int) { } } n += 1 + sovGenerated(uint64(m.ReadyReplicas)) + if m.CollisionCount != nil { + n += 1 + sovGenerated(uint64(*m.CollisionCount)) + } return n } @@ -986,6 +1223,15 @@ func (m *RollingUpdateDeployment) Size() (n int) { return n } +func (m *RollingUpdateStatefulSetStrategy) Size() (n int) { + var l int + _ = l + if m.Partition != nil { + n += 1 + sovGenerated(uint64(*m.Partition)) + } + return n +} + func (m *Scale) Size() (n int) { var l int _ = l @@ -1068,6 +1314,13 @@ func (m *StatefulSetSpec) Size() (n int) { } l = len(m.ServiceName) n += 1 + l + sovGenerated(uint64(l)) + l = len(m.PodManagementPolicy) + n += 1 + l + sovGenerated(uint64(l)) + l = m.UpdateStrategy.Size() + n += 1 + l + sovGenerated(uint64(l)) + if m.RevisionHistoryLimit != nil { + n += 1 + sovGenerated(uint64(*m.RevisionHistoryLimit)) + } return n } @@ -1078,6 +1331,25 @@ func (m *StatefulSetStatus) Size() (n int) { n += 1 + sovGenerated(uint64(*m.ObservedGeneration)) } n += 1 + sovGenerated(uint64(m.Replicas)) + n += 1 + sovGenerated(uint64(m.ReadyReplicas)) + n += 1 + sovGenerated(uint64(m.CurrentReplicas)) + n += 1 + sovGenerated(uint64(m.UpdatedReplicas)) + l = len(m.CurrentRevision) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.UpdateRevision) + n += 1 + l + sovGenerated(uint64(l)) + return n +} + +func (m *StatefulSetUpdateStrategy) Size() (n int) { + var l int + _ = l + l = len(m.Type) + n += 1 + l + sovGenerated(uint64(l)) + if m.RollingUpdate != nil { + l = m.RollingUpdate.Size() + n += 1 + l + sovGenerated(uint64(l)) + } return n } @@ -1094,6 +1366,29 @@ func sovGenerated(x uint64) (n int) { func sozGenerated(x uint64) (n int) { return sovGenerated(uint64((x << 1) ^ uint64((int64(x) >> 63)))) } +func (this *ControllerRevision) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ControllerRevision{`, + `ObjectMeta:` + strings.Replace(strings.Replace(this.ObjectMeta.String(), "ObjectMeta", "k8s_io_apimachinery_pkg_apis_meta_v1.ObjectMeta", 1), `&`, ``, 1) + `,`, + `Data:` + strings.Replace(strings.Replace(this.Data.String(), "RawExtension", "k8s_io_apimachinery_pkg_runtime.RawExtension", 1), `&`, ``, 1) + `,`, + `Revision:` + fmt.Sprintf("%v", this.Revision) + `,`, + `}`, + }, "") + return s +} +func (this *ControllerRevisionList) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ControllerRevisionList{`, + `ListMeta:` + strings.Replace(strings.Replace(this.ListMeta.String(), "ListMeta", "k8s_io_apimachinery_pkg_apis_meta_v1.ListMeta", 1), `&`, ``, 1) + `,`, + `Items:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.Items), "ControllerRevision", "ControllerRevision", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} func (this *Deployment) String() string { if this == nil { return "nil" @@ -1184,6 +1479,7 @@ func (this *DeploymentStatus) String() string { `UnavailableReplicas:` + fmt.Sprintf("%v", this.UnavailableReplicas) + `,`, `Conditions:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.Conditions), "DeploymentCondition", "DeploymentCondition", 1), `&`, ``, 1) + `,`, `ReadyReplicas:` + fmt.Sprintf("%v", this.ReadyReplicas) + `,`, + `CollisionCount:` + valueToStringGenerated(this.CollisionCount) + `,`, `}`, }, "") return s @@ -1220,6 +1516,16 @@ func (this *RollingUpdateDeployment) String() string { }, "") return s } +func (this *RollingUpdateStatefulSetStrategy) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&RollingUpdateStatefulSetStrategy{`, + `Partition:` + valueToStringGenerated(this.Partition) + `,`, + `}`, + }, "") + return s +} func (this *Scale) String() string { if this == nil { return "nil" @@ -1297,6 +1603,9 @@ func (this *StatefulSetSpec) String() string { `Template:` + strings.Replace(strings.Replace(this.Template.String(), "PodTemplateSpec", "k8s_io_kubernetes_pkg_api_v1.PodTemplateSpec", 1), `&`, ``, 1) + `,`, `VolumeClaimTemplates:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.VolumeClaimTemplates), "PersistentVolumeClaim", "k8s_io_kubernetes_pkg_api_v1.PersistentVolumeClaim", 1), `&`, ``, 1) + `,`, `ServiceName:` + fmt.Sprintf("%v", this.ServiceName) + `,`, + `PodManagementPolicy:` + fmt.Sprintf("%v", this.PodManagementPolicy) + `,`, + `UpdateStrategy:` + strings.Replace(strings.Replace(this.UpdateStrategy.String(), "StatefulSetUpdateStrategy", "StatefulSetUpdateStrategy", 1), `&`, ``, 1) + `,`, + `RevisionHistoryLimit:` + valueToStringGenerated(this.RevisionHistoryLimit) + `,`, `}`, }, "") return s @@ -1308,6 +1617,22 @@ func (this *StatefulSetStatus) String() string { s := strings.Join([]string{`&StatefulSetStatus{`, `ObservedGeneration:` + valueToStringGenerated(this.ObservedGeneration) + `,`, `Replicas:` + fmt.Sprintf("%v", this.Replicas) + `,`, + `ReadyReplicas:` + fmt.Sprintf("%v", this.ReadyReplicas) + `,`, + `CurrentReplicas:` + fmt.Sprintf("%v", this.CurrentReplicas) + `,`, + `UpdatedReplicas:` + fmt.Sprintf("%v", this.UpdatedReplicas) + `,`, + `CurrentRevision:` + fmt.Sprintf("%v", this.CurrentRevision) + `,`, + `UpdateRevision:` + fmt.Sprintf("%v", this.UpdateRevision) + `,`, + `}`, + }, "") + return s +} +func (this *StatefulSetUpdateStrategy) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&StatefulSetUpdateStrategy{`, + `Type:` + fmt.Sprintf("%v", this.Type) + `,`, + `RollingUpdate:` + strings.Replace(fmt.Sprintf("%v", this.RollingUpdate), "RollingUpdateStatefulSetStrategy", "RollingUpdateStatefulSetStrategy", 1) + `,`, `}`, }, "") return s @@ -1320,6 +1645,246 @@ func valueToStringGenerated(v interface{}) string { pv := reflect.Indirect(rv).Interface() return fmt.Sprintf("*%v", pv) } +func (m *ControllerRevision) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ControllerRevision: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ControllerRevision: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectMeta", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.ObjectMeta.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Data", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Data.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Revision", wireType) + } + m.Revision = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Revision |= (int64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ControllerRevisionList) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ControllerRevisionList: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ControllerRevisionList: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ListMeta", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.ListMeta.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Items", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Items = append(m.Items, ControllerRevision{}) + if err := m.Items[len(m.Items)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func (m *Deployment) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 @@ -2471,6 +3036,26 @@ func (m *DeploymentStatus) Unmarshal(dAtA []byte) error { break } } + case 8: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field CollisionCount", wireType) + } + var v int64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= (int64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + m.CollisionCount = &v default: iNdEx = preIndex skippy, err := skipGenerated(dAtA[iNdEx:]) @@ -2789,6 +3374,76 @@ func (m *RollingUpdateDeployment) Unmarshal(dAtA []byte) error { } return nil } +func (m *RollingUpdateStatefulSetStrategy) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: RollingUpdateStatefulSetStrategy: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: RollingUpdateStatefulSetStrategy: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Partition", wireType) + } + var v int32 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= (int32(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + m.Partition = &v + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func (m *Scale) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 @@ -3635,6 +4290,85 @@ func (m *StatefulSetSpec) Unmarshal(dAtA []byte) error { } m.ServiceName = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PodManagementPolicy", 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.PodManagementPolicy = PodManagementPolicyType(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field UpdateStrategy", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.UpdateStrategy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 8: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field RevisionHistoryLimit", wireType) + } + var v int32 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= (int32(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + m.RevisionHistoryLimit = &v default: iNdEx = preIndex skippy, err := skipGenerated(dAtA[iNdEx:]) @@ -3724,6 +4458,233 @@ func (m *StatefulSetStatus) Unmarshal(dAtA []byte) error { break } } + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field ReadyReplicas", wireType) + } + m.ReadyReplicas = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.ReadyReplicas |= (int32(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + case 4: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field CurrentReplicas", wireType) + } + m.CurrentReplicas = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.CurrentReplicas |= (int32(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + case 5: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field UpdatedReplicas", wireType) + } + m.UpdatedReplicas = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.UpdatedReplicas |= (int32(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CurrentRevision", 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.CurrentRevision = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field UpdateRevision", 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.UpdateRevision = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *StatefulSetUpdateStrategy) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: StatefulSetUpdateStrategy: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: StatefulSetUpdateStrategy: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Type", 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.Type = StatefulSetUpdateStrategyType(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RollingUpdate", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.RollingUpdate == nil { + m.RollingUpdate = &RollingUpdateStatefulSetStrategy{} + } + if err := m.RollingUpdate.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipGenerated(dAtA[iNdEx:]) @@ -3855,101 +4816,119 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 1525 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x58, 0xcb, 0x6f, 0x5b, 0xc5, - 0x17, 0xce, 0x4d, 0xec, 0xc4, 0x99, 0x34, 0x4e, 0x33, 0xc9, 0xaf, 0xf1, 0x2f, 0x45, 0x4e, 0xe5, - 0x45, 0x1f, 0xa8, 0xbd, 0xa6, 0x69, 0xa1, 0x8f, 0x40, 0x45, 0xdc, 0x96, 0x52, 0x94, 0xd0, 0x6a, - 0xec, 0x54, 0xb4, 0x14, 0x89, 0xb1, 0x3d, 0xbd, 0x9d, 0xfa, 0xbe, 0x74, 0x67, 0x6c, 0xc5, 0x3b, - 0x36, 0x2c, 0x90, 0x58, 0xb0, 0x62, 0x87, 0xd8, 0x23, 0x24, 0x76, 0xfc, 0x0d, 0x11, 0x6c, 0xba, - 0x44, 0x2c, 0x22, 0xe2, 0xfe, 0x17, 0x5d, 0xa1, 0x99, 0x3b, 0xf7, 0xe5, 0x6b, 0x27, 0x8e, 0x11, - 0xdd, 0xb0, 0xf3, 0x9d, 0x39, 0xdf, 0x77, 0xce, 0xcc, 0x7c, 0xe7, 0xcc, 0x19, 0x83, 0x6b, 0xad, - 0xeb, 0x4c, 0xa7, 0x4e, 0xb9, 0xd5, 0xae, 0x13, 0xcf, 0x26, 0x9c, 0xb0, 0xb2, 0xdb, 0x32, 0xca, - 0xd8, 0xa5, 0xac, 0x8c, 0x5d, 0x97, 0x95, 0x3b, 0x97, 0xeb, 0x84, 0xe3, 0xcb, 0x65, 0x83, 0xd8, - 0xc4, 0xc3, 0x9c, 0x34, 0x75, 0xd7, 0x73, 0xb8, 0x03, 0xcf, 0xf9, 0x40, 0x3d, 0x02, 0xea, 0x6e, - 0xcb, 0xd0, 0x05, 0x50, 0x17, 0x40, 0x5d, 0x01, 0x57, 0x2f, 0x19, 0x94, 0x3f, 0x6f, 0xd7, 0xf5, - 0x86, 0x63, 0x95, 0x0d, 0xc7, 0x70, 0xca, 0x12, 0x5f, 0x6f, 0x3f, 0x93, 0x5f, 0xf2, 0x43, 0xfe, - 0xf2, 0x79, 0x57, 0xaf, 0xaa, 0x80, 0xb0, 0x4b, 0x2d, 0xdc, 0x78, 0x4e, 0x6d, 0xe2, 0x75, 0xa3, - 0x90, 0x2c, 0xc2, 0x71, 0xb9, 0x93, 0x8a, 0x66, 0xb5, 0x3c, 0x0c, 0xe5, 0xb5, 0x6d, 0x4e, 0x2d, - 0x92, 0x02, 0xbc, 0x77, 0x14, 0x80, 0x35, 0x9e, 0x13, 0x0b, 0xa7, 0x70, 0x57, 0x86, 0xe1, 0xda, - 0x9c, 0x9a, 0x65, 0x6a, 0x73, 0xc6, 0xbd, 0x14, 0x28, 0xb6, 0x26, 0x46, 0xbc, 0x0e, 0xf1, 0xa2, - 0x05, 0x91, 0x5d, 0x6c, 0xb9, 0x26, 0x19, 0xb4, 0xa6, 0x8b, 0x43, 0x8f, 0x66, 0x90, 0xf5, 0x07, - 0x87, 0x1c, 0x24, 0xd9, 0xe5, 0xc4, 0x66, 0xd4, 0xb1, 0x87, 0x1e, 0x67, 0xe9, 0xe7, 0x49, 0x00, - 0xee, 0x10, 0xd7, 0x74, 0xba, 0x16, 0xb1, 0x39, 0xfc, 0x12, 0xe4, 0xc4, 0x56, 0x37, 0x31, 0xc7, - 0x05, 0xed, 0x8c, 0x76, 0x7e, 0x6e, 0xfd, 0x1d, 0x5d, 0x1d, 0x78, 0x7c, 0xe5, 0xd1, 0x91, 0x0b, - 0x6b, 0xbd, 0x73, 0x59, 0x7f, 0x50, 0x7f, 0x41, 0x1a, 0x7c, 0x9b, 0x70, 0x5c, 0x81, 0x7b, 0xfb, - 0x6b, 0x13, 0xbd, 0xfd, 0x35, 0x10, 0x8d, 0xa1, 0x90, 0x15, 0x3e, 0x06, 0x19, 0xe6, 0x92, 0x46, - 0x61, 0x52, 0xb2, 0x5f, 0xd3, 0x47, 0x94, 0x93, 0x1e, 0x05, 0x59, 0x75, 0x49, 0xa3, 0x72, 0x42, - 0x39, 0xc9, 0x88, 0x2f, 0x24, 0x29, 0x21, 0x06, 0xd3, 0x8c, 0x63, 0xde, 0x66, 0x85, 0x29, 0x49, - 0x7e, 0x63, 0x1c, 0x72, 0x49, 0x50, 0xc9, 0x2b, 0xfa, 0x69, 0xff, 0x1b, 0x29, 0xe2, 0xd2, 0xc1, - 0x14, 0x58, 0x8a, 0x8c, 0x6f, 0x3b, 0x76, 0x93, 0x72, 0xea, 0xd8, 0x70, 0x03, 0x64, 0x78, 0xd7, - 0x25, 0x72, 0xcf, 0x66, 0x2b, 0xe7, 0x82, 0xe0, 0x6a, 0x5d, 0x97, 0xbc, 0xde, 0x5f, 0x5b, 0x19, - 0x00, 0x11, 0x53, 0x48, 0x82, 0xe0, 0xa3, 0x30, 0xee, 0x49, 0x09, 0xbf, 0x95, 0x74, 0xfe, 0x7a, - 0x7f, 0xed, 0x50, 0x49, 0xe8, 0x21, 0x67, 0x32, 0x58, 0x78, 0x16, 0x4c, 0x7b, 0x04, 0x33, 0xc7, - 0x2e, 0x64, 0x24, 0x6f, 0xb8, 0x28, 0x24, 0x47, 0x91, 0x9a, 0x85, 0x17, 0xc0, 0x8c, 0x45, 0x18, - 0xc3, 0x06, 0x29, 0x64, 0xa5, 0xe1, 0x82, 0x32, 0x9c, 0xd9, 0xf6, 0x87, 0x51, 0x30, 0x0f, 0x5f, - 0x80, 0xbc, 0x89, 0x19, 0xdf, 0x71, 0x9b, 0x98, 0x93, 0x1a, 0xb5, 0x48, 0x61, 0x5a, 0x6e, 0xf5, - 0xdb, 0xa3, 0xa9, 0x44, 0x20, 0x2a, 0xa7, 0x14, 0x7b, 0x7e, 0x2b, 0xc1, 0x84, 0xfa, 0x98, 0x61, - 0x07, 0x40, 0x31, 0x52, 0xf3, 0xb0, 0xcd, 0xfc, 0x2d, 0x13, 0xfe, 0x66, 0x8e, 0xed, 0x6f, 0x55, - 0xf9, 0x83, 0x5b, 0x29, 0x36, 0x34, 0xc0, 0x43, 0x69, 0x4f, 0x03, 0xf9, 0xe8, 0xc0, 0xb6, 0x28, - 0xe3, 0xf0, 0x69, 0x2a, 0x2d, 0xf4, 0xd1, 0x02, 0x10, 0x68, 0x99, 0x14, 0x27, 0x55, 0x10, 0xb9, - 0x60, 0x24, 0x96, 0x12, 0x9f, 0x81, 0x2c, 0xe5, 0xc4, 0x12, 0xc7, 0x3f, 0x75, 0x7e, 0x6e, 0xfd, - 0xca, 0x18, 0xb2, 0xad, 0xcc, 0x2b, 0xfe, 0xec, 0x7d, 0xc1, 0x84, 0x7c, 0xc2, 0xd2, 0xb7, 0x53, - 0x00, 0x46, 0x46, 0xc8, 0x31, 0xcd, 0x3a, 0x6e, 0xb4, 0xe0, 0x19, 0x90, 0xb1, 0xb1, 0x15, 0xa8, - 0x35, 0x4c, 0xa5, 0x4f, 0xb1, 0x45, 0x90, 0x9c, 0x81, 0x3f, 0x6a, 0x00, 0xb6, 0xe5, 0x51, 0x34, - 0x37, 0x6d, 0xdb, 0xe1, 0x58, 0xec, 0x4e, 0x10, 0x60, 0x75, 0x8c, 0x00, 0x03, 0xdf, 0xfa, 0x4e, - 0x8a, 0xf5, 0xae, 0xcd, 0xbd, 0x6e, 0x74, 0x4a, 0x69, 0x03, 0x34, 0x20, 0x14, 0xd8, 0x02, 0xc0, - 0x53, 0x9c, 0x35, 0x47, 0x25, 0xfc, 0xe8, 0xd5, 0x24, 0x08, 0xe7, 0xb6, 0x63, 0x3f, 0xa3, 0x46, - 0x54, 0xb2, 0x50, 0x48, 0x89, 0x62, 0xf4, 0xab, 0x77, 0xc1, 0xca, 0x90, 0xb8, 0xe1, 0x49, 0x30, - 0xd5, 0x22, 0x5d, 0x7f, 0x2b, 0x91, 0xf8, 0x09, 0x97, 0x41, 0xb6, 0x83, 0xcd, 0x36, 0xf1, 0xb3, - 0x19, 0xf9, 0x1f, 0x37, 0x27, 0xaf, 0x6b, 0xa5, 0x3f, 0xb3, 0x71, 0x65, 0x89, 0xca, 0x05, 0xcf, - 0x83, 0x9c, 0x47, 0x5c, 0x93, 0x36, 0x30, 0x93, 0x1c, 0xd9, 0xca, 0x09, 0xa1, 0x12, 0xa4, 0xc6, - 0x50, 0x38, 0x0b, 0xbf, 0x00, 0x39, 0x46, 0x4c, 0xd2, 0xe0, 0x8e, 0xa7, 0x8a, 0xe7, 0x95, 0x11, - 0x35, 0x88, 0xeb, 0xc4, 0xac, 0x2a, 0xa8, 0x4f, 0x1f, 0x7c, 0xa1, 0x90, 0x12, 0x7e, 0x0e, 0x72, - 0x9c, 0x58, 0xae, 0x89, 0x39, 0x51, 0xbb, 0x79, 0x69, 0xf8, 0x6e, 0x0a, 0xda, 0x87, 0x4e, 0xb3, - 0xa6, 0x00, 0xb2, 0x22, 0x87, 0x0a, 0x0f, 0x46, 0x51, 0x48, 0x08, 0x29, 0xc8, 0x31, 0x2e, 0xae, - 0x1d, 0xa3, 0x2b, 0x6b, 0xd1, 0xdc, 0xfa, 0xc6, 0x58, 0xb5, 0xd9, 0xa7, 0x88, 0x5c, 0x05, 0x23, - 0x28, 0xa4, 0x87, 0x9b, 0x60, 0xc1, 0xa2, 0x36, 0x22, 0xb8, 0xd9, 0xad, 0x92, 0x86, 0x63, 0x37, - 0x99, 0x2c, 0x6a, 0xd9, 0xca, 0x8a, 0x02, 0x2d, 0x6c, 0x27, 0xa7, 0x51, 0xbf, 0x3d, 0xdc, 0x02, - 0xcb, 0x1e, 0xe9, 0x50, 0x71, 0x71, 0x7e, 0x4c, 0x19, 0x77, 0xbc, 0xee, 0x16, 0xb5, 0x28, 0x97, - 0xa5, 0x2e, 0x5b, 0x29, 0xf4, 0xf6, 0xd7, 0x96, 0xd1, 0x80, 0x79, 0x34, 0x10, 0x25, 0xaa, 0xb0, - 0x8b, 0xdb, 0x8c, 0x34, 0x65, 0xe9, 0xca, 0x45, 0x55, 0xf8, 0xa1, 0x1c, 0x45, 0x6a, 0x16, 0x1a, - 0x09, 0x41, 0xe7, 0xfe, 0x99, 0xa0, 0xf3, 0xc3, 0xc5, 0x0c, 0x77, 0xc0, 0x8a, 0xeb, 0x39, 0x86, - 0x47, 0x18, 0xbb, 0x43, 0x70, 0xd3, 0xa4, 0x36, 0x09, 0x76, 0x6a, 0x56, 0xae, 0xf0, 0x74, 0x6f, - 0x7f, 0x6d, 0xe5, 0xe1, 0x60, 0x13, 0x34, 0x0c, 0x5b, 0xfa, 0x3e, 0x03, 0x4e, 0xf6, 0xdf, 0xa3, - 0xf0, 0x13, 0x00, 0x9d, 0xba, 0xec, 0x7d, 0x9a, 0xf7, 0xfc, 0xce, 0x83, 0x3a, 0xb6, 0x14, 0xfa, - 0x54, 0x94, 0xf1, 0x0f, 0x52, 0x16, 0x68, 0x00, 0x0a, 0x5e, 0x8c, 0xa5, 0xca, 0xa4, 0x0c, 0x34, - 0xd4, 0xc1, 0x80, 0x74, 0xd9, 0x04, 0x0b, 0xaa, 0x6a, 0x04, 0x93, 0x52, 0xd6, 0x31, 0x1d, 0xec, - 0x24, 0xa7, 0x51, 0xbf, 0x3d, 0xbc, 0x07, 0x16, 0x71, 0x07, 0x53, 0x13, 0xd7, 0x4d, 0x12, 0x92, - 0x64, 0x24, 0xc9, 0xff, 0x15, 0xc9, 0xe2, 0x66, 0xbf, 0x01, 0x4a, 0x63, 0xe0, 0x36, 0x58, 0x6a, - 0xdb, 0x69, 0x2a, 0x5f, 0x97, 0xa7, 0x15, 0xd5, 0xd2, 0x4e, 0xda, 0x04, 0x0d, 0xc2, 0x41, 0x17, - 0x80, 0x46, 0x70, 0xe5, 0xb3, 0xc2, 0xb4, 0xac, 0xc9, 0xef, 0x8f, 0x91, 0x4f, 0x61, 0xdf, 0x10, - 0xd5, 0xbf, 0x70, 0x88, 0xa1, 0x98, 0x0f, 0xb8, 0x01, 0xe6, 0x3d, 0x91, 0x21, 0x61, 0xe8, 0x33, - 0x32, 0xf4, 0xff, 0x29, 0xd8, 0x3c, 0x8a, 0x4f, 0xa2, 0xa4, 0x6d, 0xe9, 0x77, 0x2d, 0x7e, 0x09, - 0x05, 0x29, 0x0b, 0x6f, 0x26, 0x5a, 0xa6, 0xb3, 0x7d, 0x2d, 0xd3, 0xa9, 0x34, 0x22, 0xd6, 0x31, - 0x75, 0xc1, 0xbc, 0x10, 0x34, 0xb5, 0x0d, 0xff, 0x10, 0x55, 0x41, 0xfc, 0xf0, 0x58, 0xe9, 0x12, - 0xa2, 0x63, 0xd7, 0xe8, 0xa2, 0x5c, 0x4d, 0x7c, 0x12, 0x25, 0x3d, 0x95, 0x6e, 0x81, 0x7c, 0x32, - 0xd7, 0x7c, 0x5d, 0xfa, 0x89, 0xaf, 0x94, 0x1d, 0xd3, 0xa5, 0x3f, 0x8e, 0x42, 0x8b, 0xd2, 0x2b, - 0x0d, 0xac, 0x0c, 0xf1, 0x0e, 0x4d, 0x90, 0xb7, 0xf0, 0x6e, 0x4c, 0x07, 0x47, 0xf6, 0xe0, 0xe2, - 0xf5, 0xa1, 0xfb, 0xaf, 0x0f, 0xfd, 0xbe, 0xcd, 0x1f, 0x78, 0x55, 0xee, 0x51, 0xdb, 0xa8, 0x40, - 0xd1, 0x5f, 0x6d, 0x27, 0xb8, 0x50, 0x1f, 0x37, 0x7c, 0x02, 0x72, 0x16, 0xde, 0xad, 0xb6, 0x3d, - 0x23, 0xd8, 0xbf, 0xe3, 0xfb, 0x91, 0xb7, 0xc9, 0xb6, 0x62, 0x41, 0x21, 0x5f, 0xe9, 0x87, 0x49, - 0x90, 0xad, 0x36, 0xb0, 0x49, 0xde, 0xc0, 0x8b, 0xa2, 0x96, 0x78, 0x51, 0xac, 0x8f, 0xac, 0x01, - 0x19, 0xdf, 0xd0, 0xc7, 0xc4, 0xd3, 0xbe, 0xc7, 0xc4, 0xd5, 0x63, 0xf2, 0x1e, 0xfe, 0x8e, 0xb8, - 0x01, 0x66, 0x43, 0xf7, 0x89, 0xc2, 0xa6, 0x1d, 0x55, 0xd8, 0x4a, 0x3f, 0x4d, 0x82, 0xb9, 0x98, - 0x8b, 0xe3, 0xa1, 0xa1, 0x9b, 0xe8, 0x22, 0x44, 0xe5, 0xa8, 0x8c, 0xb3, 0x30, 0x3d, 0xe8, 0x20, - 0xfc, 0xe6, 0x2d, 0xba, 0x90, 0xd3, 0x8d, 0xc5, 0x2d, 0x90, 0xe7, 0xd8, 0x33, 0x08, 0x0f, 0xe6, - 0xe4, 0x86, 0xce, 0x46, 0xcf, 0x80, 0x5a, 0x62, 0x16, 0xf5, 0x59, 0xaf, 0x6e, 0x80, 0xf9, 0x84, - 0xb3, 0x63, 0x75, 0x5c, 0xbf, 0x88, 0xcd, 0xe2, 0x98, 0x93, 0x67, 0x6d, 0xb3, 0x4a, 0xde, 0xc4, - 0xfb, 0xf6, 0x49, 0x42, 0x8d, 0xd7, 0x47, 0xdf, 0xdc, 0x28, 0xca, 0xa1, 0x9a, 0xac, 0xf7, 0x69, - 0xf2, 0xe6, 0x58, 0xec, 0x87, 0x2b, 0xf3, 0x37, 0x0d, 0x2c, 0xc4, 0xac, 0xdf, 0xc0, 0xf3, 0xe7, - 0x71, 0xf2, 0xf9, 0x73, 0x75, 0x9c, 0x45, 0x0d, 0x79, 0xff, 0xfc, 0x3a, 0x95, 0x58, 0xcc, 0x7f, - 0xa8, 0xe3, 0xfe, 0x5a, 0x03, 0xcb, 0x1d, 0xc7, 0x6c, 0x5b, 0xe4, 0xb6, 0x89, 0xa9, 0x15, 0x58, - 0x88, 0xfe, 0xe5, 0x88, 0x37, 0xa6, 0xf4, 0x44, 0x3c, 0x46, 0x19, 0x27, 0x36, 0x7f, 0x14, 0x71, - 0x54, 0xde, 0x52, 0xfe, 0x96, 0x1f, 0x0d, 0x20, 0x46, 0x03, 0xdd, 0xc1, 0x77, 0xc1, 0x9c, 0x68, - 0xe4, 0x68, 0x83, 0x88, 0xd7, 0xa5, 0xfa, 0x7f, 0x61, 0x49, 0x11, 0xcd, 0x55, 0xa3, 0x29, 0x14, - 0xb7, 0x2b, 0x7d, 0xa3, 0x81, 0xc5, 0x94, 0x66, 0xe1, 0x47, 0x87, 0x74, 0x93, 0xa7, 0xfe, 0xad, - 0x4e, 0xb2, 0x72, 0x61, 0xef, 0xa0, 0x38, 0xf1, 0xf2, 0xa0, 0x38, 0xf1, 0xc7, 0x41, 0x71, 0xe2, - 0xab, 0x5e, 0x51, 0xdb, 0xeb, 0x15, 0xb5, 0x97, 0xbd, 0xa2, 0xf6, 0x57, 0xaf, 0xa8, 0x7d, 0xf7, - 0xaa, 0x38, 0xf1, 0x64, 0x46, 0x29, 0xf2, 0xef, 0x00, 0x00, 0x00, 0xff, 0xff, 0xd6, 0xb9, 0xde, - 0x1a, 0x56, 0x15, 0x00, 0x00, + // 1812 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x58, 0x4f, 0x6f, 0x23, 0x49, + 0x15, 0x4f, 0xfb, 0x4f, 0xe2, 0x54, 0x36, 0xce, 0x4c, 0x25, 0x4c, 0xbc, 0x59, 0x70, 0x22, 0x1f, + 0x76, 0x03, 0x6c, 0xda, 0x4c, 0x66, 0xd8, 0x9d, 0x49, 0xd0, 0x88, 0x74, 0x66, 0x58, 0x06, 0x25, + 0x24, 0x2a, 0x27, 0x23, 0x76, 0x58, 0xa4, 0x2d, 0xb7, 0x6b, 0x3a, 0xbd, 0xe9, 0x7f, 0xea, 0xae, + 0x36, 0xe3, 0x1b, 0x5a, 0x89, 0x1b, 0x07, 0xbe, 0x00, 0xe2, 0x8e, 0x90, 0xf8, 0x1a, 0x11, 0x1c, + 0x58, 0x71, 0x1a, 0x71, 0x88, 0x88, 0xf7, 0x23, 0x20, 0x2e, 0x73, 0x42, 0x55, 0x5d, 0xfd, 0xdf, + 0x9d, 0xd8, 0x46, 0xe4, 0xb2, 0x37, 0x77, 0xbd, 0xf7, 0x7e, 0xef, 0x55, 0xd5, 0x7b, 0xaf, 0x7e, + 0xcf, 0xe0, 0xe3, 0xf3, 0x47, 0x9e, 0xac, 0xdb, 0xed, 0x73, 0xbf, 0x4b, 0x5c, 0x8b, 0x50, 0xe2, + 0xb5, 0x9d, 0x73, 0xad, 0x8d, 0x1d, 0xdd, 0x6b, 0x63, 0xc7, 0xf1, 0xda, 0xfd, 0xfb, 0x5d, 0x42, + 0xf1, 0xfd, 0xb6, 0x46, 0x2c, 0xe2, 0x62, 0x4a, 0x7a, 0xb2, 0xe3, 0xda, 0xd4, 0x86, 0x1f, 0x04, + 0x86, 0x72, 0x6c, 0x28, 0x3b, 0xe7, 0x9a, 0xcc, 0x0c, 0x65, 0x66, 0x28, 0x0b, 0xc3, 0xb5, 0x2d, + 0x4d, 0xa7, 0x67, 0x7e, 0x57, 0x56, 0x6d, 0xb3, 0xad, 0xd9, 0x9a, 0xdd, 0xe6, 0xf6, 0x5d, 0xff, + 0x15, 0xff, 0xe2, 0x1f, 0xfc, 0x57, 0x80, 0xbb, 0xf6, 0x50, 0x04, 0x84, 0x1d, 0xdd, 0xc4, 0xea, + 0x99, 0x6e, 0x11, 0x77, 0x10, 0x87, 0x64, 0x12, 0x8a, 0xdb, 0xfd, 0x5c, 0x34, 0x6b, 0xed, 0x22, + 0x2b, 0xd7, 0xb7, 0xa8, 0x6e, 0x92, 0x9c, 0xc1, 0x47, 0x37, 0x19, 0x78, 0xea, 0x19, 0x31, 0x71, + 0xce, 0xee, 0x41, 0x91, 0x9d, 0x4f, 0x75, 0xa3, 0xad, 0x5b, 0xd4, 0xa3, 0x6e, 0xce, 0xe8, 0xc3, + 0xc2, 0x43, 0x1e, 0xb5, 0x97, 0xc7, 0xd7, 0x5c, 0x89, 0x63, 0x1b, 0xba, 0x3a, 0x28, 0xba, 0x94, + 0xd6, 0x7f, 0x24, 0x00, 0xf7, 0x6d, 0x8b, 0xba, 0xb6, 0x61, 0x10, 0x17, 0x91, 0xbe, 0xee, 0xe9, + 0xb6, 0x05, 0x3f, 0x07, 0x35, 0x76, 0x70, 0x3d, 0x4c, 0x71, 0x43, 0xda, 0x90, 0x36, 0x17, 0xb6, + 0x7f, 0x20, 0x8b, 0xeb, 0x4b, 0xee, 0x23, 0xbe, 0x40, 0xa6, 0x2d, 0xf7, 0xef, 0xcb, 0x47, 0xdd, + 0x2f, 0x88, 0x4a, 0x0f, 0x09, 0xc5, 0x0a, 0xbc, 0xb8, 0x5c, 0x9f, 0x19, 0x5e, 0xae, 0x83, 0x78, + 0x0d, 0x45, 0xa8, 0xf0, 0x08, 0x54, 0x38, 0x7a, 0x89, 0xa3, 0x6f, 0x15, 0xa2, 0x8b, 0xd3, 0x95, + 0x11, 0xfe, 0xf5, 0xb3, 0xd7, 0x94, 0x58, 0x2c, 0x3c, 0xe5, 0x1d, 0x01, 0x5d, 0x79, 0x8a, 0x29, + 0x46, 0x1c, 0x08, 0x7e, 0x08, 0x6a, 0xae, 0x08, 0xbf, 0x51, 0xde, 0x90, 0x36, 0xcb, 0xca, 0x1d, + 0xa1, 0x55, 0x0b, 0xb7, 0x85, 0x22, 0x8d, 0xd6, 0x1b, 0x09, 0xdc, 0xcb, 0xef, 0xfb, 0x40, 0xf7, + 0x28, 0xfc, 0x2c, 0xb7, 0x77, 0x79, 0xbc, 0xbd, 0x33, 0x6b, 0xbe, 0xf3, 0xc8, 0x71, 0xb8, 0x92, + 0xd8, 0xf7, 0xe7, 0xa0, 0xaa, 0x53, 0x62, 0x7a, 0x8d, 0xd2, 0x46, 0x79, 0x73, 0x61, 0x7b, 0x57, + 0x1e, 0xb3, 0x2a, 0xe4, 0x7c, 0xb4, 0xca, 0xa2, 0xf0, 0x53, 0x7d, 0xce, 0x10, 0x51, 0x00, 0xdc, + 0xfa, 0x73, 0x09, 0x80, 0xa7, 0xc4, 0x31, 0xec, 0x81, 0x49, 0x2c, 0x7a, 0x0b, 0x57, 0xf9, 0x29, + 0xa8, 0x78, 0x0e, 0x51, 0xc5, 0x55, 0x7e, 0x3c, 0xf6, 0x8e, 0xe2, 0x20, 0x3b, 0x0e, 0x51, 0xe3, + 0x4b, 0x65, 0x5f, 0x88, 0x43, 0x42, 0x0c, 0x66, 0x3d, 0x8a, 0xa9, 0xef, 0xf1, 0x2b, 0x5d, 0xd8, + 0x7e, 0x3c, 0x0d, 0x38, 0x07, 0x50, 0xea, 0x02, 0x7e, 0x36, 0xf8, 0x46, 0x02, 0xb8, 0x75, 0x55, + 0x06, 0xcb, 0xb1, 0xf2, 0xbe, 0x6d, 0xf5, 0x74, 0xca, 0x4a, 0x60, 0x17, 0x54, 0xe8, 0xc0, 0x21, + 0xfc, 0xcc, 0xe6, 0x95, 0x0f, 0xc2, 0xe0, 0x4e, 0x06, 0x0e, 0x79, 0x7b, 0xb9, 0xbe, 0x3a, 0xc2, + 0x84, 0x89, 0x10, 0x37, 0x82, 0x2f, 0xa2, 0xb8, 0x4b, 0xdc, 0xfc, 0x49, 0xda, 0xf9, 0xdb, 0xcb, + 0xf5, 0x6b, 0x2b, 0x5c, 0x8e, 0x30, 0xd3, 0xc1, 0xc2, 0xf7, 0xc1, 0xac, 0x4b, 0xb0, 0x67, 0x5b, + 0x8d, 0x0a, 0xc7, 0x8d, 0x36, 0x85, 0xf8, 0x2a, 0x12, 0x52, 0xf8, 0x5d, 0x30, 0x67, 0x12, 0xcf, + 0xc3, 0x1a, 0x69, 0x54, 0xb9, 0xe2, 0x92, 0x50, 0x9c, 0x3b, 0x0c, 0x96, 0x51, 0x28, 0x87, 0x5f, + 0x80, 0xba, 0x81, 0x3d, 0x7a, 0xea, 0xf4, 0x30, 0x25, 0x27, 0xba, 0x49, 0x1a, 0xb3, 0xfc, 0xa8, + 0xbf, 0x37, 0x5e, 0x96, 0x30, 0x0b, 0xe5, 0x9e, 0x40, 0xaf, 0x1f, 0xa4, 0x90, 0x50, 0x06, 0x19, + 0xf6, 0x01, 0x64, 0x2b, 0x27, 0x2e, 0xb6, 0xbc, 0xe0, 0xc8, 0x98, 0xbf, 0xb9, 0x89, 0xfd, 0xad, + 0x09, 0x7f, 0xf0, 0x20, 0x87, 0x86, 0x46, 0x78, 0x68, 0x5d, 0x48, 0xa0, 0x1e, 0x5f, 0xd8, 0x2d, + 0x54, 0xf9, 0x2f, 0xd2, 0x55, 0xfe, 0x60, 0x8a, 0xb4, 0x2d, 0xa8, 0xee, 0xdf, 0x95, 0x01, 0x8c, + 0x95, 0x90, 0x6d, 0x18, 0x5d, 0xac, 0x9e, 0xc3, 0x0d, 0x50, 0xb1, 0xb0, 0x19, 0x66, 0x6b, 0x54, + 0x4a, 0x3f, 0xc7, 0x26, 0x41, 0x5c, 0x02, 0xff, 0x28, 0x01, 0xe8, 0xf3, 0xab, 0xe8, 0xed, 0x59, + 0x96, 0x4d, 0x31, 0x3b, 0x9d, 0x30, 0xc0, 0xce, 0x14, 0x01, 0x86, 0xbe, 0xe5, 0xd3, 0x1c, 0xea, + 0x33, 0x8b, 0xba, 0x83, 0xf8, 0x96, 0xf2, 0x0a, 0x68, 0x44, 0x28, 0xf0, 0x1c, 0x00, 0x57, 0x60, + 0x9e, 0xd8, 0xa2, 0xe0, 0xc7, 0xef, 0x26, 0x61, 0x38, 0xfb, 0xb6, 0xf5, 0x4a, 0xd7, 0xe2, 0x96, + 0x85, 0x22, 0x48, 0x94, 0x80, 0x5f, 0x7b, 0x06, 0x56, 0x0b, 0xe2, 0x86, 0x77, 0x40, 0xf9, 0x9c, + 0x0c, 0x82, 0xa3, 0x44, 0xec, 0x27, 0x5c, 0x01, 0xd5, 0x3e, 0x36, 0x7c, 0x12, 0x54, 0x33, 0x0a, + 0x3e, 0x76, 0x4a, 0x8f, 0xa4, 0xd6, 0x3f, 0xab, 0xc9, 0xcc, 0x62, 0x9d, 0x0b, 0x6e, 0xb2, 0x87, + 0xc8, 0x31, 0x74, 0x15, 0x7b, 0x1c, 0xa3, 0xaa, 0xbc, 0x13, 0x3c, 0x42, 0xc1, 0x1a, 0x8a, 0xa4, + 0xf0, 0x57, 0xa0, 0xe6, 0x11, 0x83, 0xa8, 0xd4, 0x76, 0x45, 0xf3, 0x7c, 0x30, 0x66, 0x0e, 0xe2, + 0x2e, 0x31, 0x3a, 0xc2, 0x34, 0x80, 0x0f, 0xbf, 0x50, 0x04, 0x09, 0x7f, 0x09, 0x6a, 0x94, 0x98, + 0x8e, 0x81, 0x29, 0x11, 0xa7, 0xb9, 0x55, 0x7c, 0x9a, 0x0c, 0xf6, 0xd8, 0xee, 0x9d, 0x08, 0x03, + 0xde, 0x91, 0xa3, 0x0c, 0x0f, 0x57, 0x51, 0x04, 0x08, 0x75, 0x50, 0xf3, 0x28, 0x63, 0x12, 0xda, + 0x80, 0xf7, 0xa2, 0x49, 0x9e, 0xb2, 0x64, 0x6f, 0x0e, 0x20, 0x62, 0x57, 0xe1, 0x0a, 0x8a, 0xe0, + 0xe1, 0x1e, 0x58, 0x32, 0x75, 0x0b, 0x11, 0xdc, 0x1b, 0x74, 0x88, 0x6a, 0x5b, 0x3d, 0x8f, 0x37, + 0xb5, 0xaa, 0xb2, 0x2a, 0x8c, 0x96, 0x0e, 0xd3, 0x62, 0x94, 0xd5, 0x87, 0x07, 0x60, 0x25, 0x7c, + 0xfa, 0x7f, 0xaa, 0x7b, 0xd4, 0x76, 0x07, 0x07, 0xba, 0xa9, 0x53, 0xde, 0xea, 0xaa, 0x4a, 0x63, + 0x78, 0xb9, 0xbe, 0x82, 0x46, 0xc8, 0xd1, 0x48, 0x2b, 0xd6, 0x85, 0x1d, 0xec, 0x7b, 0xa4, 0xc7, + 0x5b, 0x57, 0x2d, 0xee, 0xc2, 0xc7, 0x7c, 0x15, 0x09, 0x29, 0xd4, 0x52, 0x09, 0x5d, 0xfb, 0xdf, + 0x12, 0xba, 0x5e, 0x9c, 0xcc, 0xf0, 0x14, 0xac, 0x3a, 0xae, 0xad, 0xb9, 0xc4, 0xf3, 0x9e, 0x12, + 0xdc, 0x33, 0x74, 0x8b, 0x84, 0x27, 0x35, 0xcf, 0x77, 0xf8, 0xde, 0xf0, 0x72, 0x7d, 0xf5, 0x78, + 0xb4, 0x0a, 0x2a, 0xb2, 0x6d, 0xfd, 0xa3, 0x02, 0xee, 0x64, 0xdf, 0x51, 0xf8, 0x33, 0x00, 0xed, + 0xae, 0x47, 0xdc, 0x3e, 0xe9, 0x7d, 0x12, 0x90, 0x49, 0xc6, 0xb8, 0x24, 0xce, 0xb8, 0xa2, 0x8a, + 0x3f, 0xca, 0x69, 0xa0, 0x11, 0x56, 0x01, 0x67, 0x13, 0xa5, 0x52, 0xe2, 0x81, 0x26, 0x38, 0x5b, + 0xae, 0x5c, 0xf6, 0xc0, 0x92, 0xe8, 0x1a, 0xa1, 0x90, 0xa7, 0x75, 0x22, 0x0f, 0x4e, 0xd3, 0x62, + 0x94, 0xd5, 0x87, 0x9f, 0x80, 0xbb, 0xb8, 0x8f, 0x75, 0x03, 0x77, 0x0d, 0x12, 0x81, 0x54, 0x38, + 0xc8, 0xbb, 0x02, 0xe4, 0xee, 0x5e, 0x56, 0x01, 0xe5, 0x6d, 0xe0, 0x21, 0x58, 0xf6, 0xad, 0x3c, + 0x54, 0x90, 0x97, 0xef, 0x09, 0xa8, 0xe5, 0xd3, 0xbc, 0x0a, 0x1a, 0x65, 0x07, 0x1d, 0x00, 0xd4, + 0xf0, 0xc9, 0xf7, 0x1a, 0xb3, 0xbc, 0x27, 0xff, 0x68, 0x8a, 0x7a, 0x8a, 0x78, 0x43, 0xdc, 0xff, + 0xa2, 0x25, 0x0f, 0x25, 0x7c, 0xc0, 0x5d, 0xb0, 0xe8, 0xb2, 0x0a, 0x89, 0x42, 0x9f, 0xe3, 0xa1, + 0x7f, 0x4b, 0x98, 0x2d, 0xa2, 0xa4, 0x10, 0xa5, 0x75, 0xe1, 0x0e, 0xa8, 0xab, 0xb6, 0x61, 0xf0, + 0xca, 0xd8, 0xb7, 0x7d, 0x8b, 0xf2, 0xe4, 0x2e, 0x2b, 0x90, 0x71, 0x80, 0xfd, 0x94, 0x04, 0x65, + 0x34, 0x5b, 0x7f, 0x93, 0x92, 0x0f, 0x58, 0x58, 0xee, 0x70, 0x27, 0x45, 0xb7, 0xde, 0xcf, 0xd0, + 0xad, 0x7b, 0x79, 0x8b, 0x04, 0xdb, 0x1a, 0x80, 0x45, 0x56, 0x0c, 0xba, 0xa5, 0x05, 0x09, 0x20, + 0x9a, 0xe9, 0x8f, 0x27, 0x2a, 0xb5, 0xc8, 0x3a, 0xf1, 0x04, 0xdf, 0xe5, 0x27, 0x91, 0x14, 0xa2, + 0xb4, 0xa7, 0xd6, 0x13, 0x50, 0x4f, 0xd7, 0x69, 0x6a, 0x0e, 0x91, 0x6e, 0x9c, 0x43, 0xbe, 0x96, + 0xc0, 0x6a, 0x81, 0x77, 0x68, 0x80, 0xba, 0x89, 0x5f, 0x27, 0x72, 0xe8, 0x46, 0xfe, 0xce, 0x46, + 0x4a, 0x39, 0x18, 0x29, 0xe5, 0xe7, 0x16, 0x3d, 0x72, 0x3b, 0xd4, 0xd5, 0x2d, 0x2d, 0xb8, 0x97, + 0xc3, 0x14, 0x16, 0xca, 0x60, 0xc3, 0x97, 0xa0, 0x66, 0xe2, 0xd7, 0x1d, 0xdf, 0xd5, 0xc2, 0xf3, + 0x9b, 0xdc, 0x0f, 0x7f, 0x89, 0x0e, 0x05, 0x0a, 0x8a, 0xf0, 0x5a, 0x47, 0x60, 0x23, 0xb5, 0x49, + 0xd6, 0x4a, 0xc8, 0x2b, 0xdf, 0xe8, 0x90, 0x38, 0x01, 0xbe, 0x0f, 0xe6, 0x1d, 0xec, 0x52, 0x3d, + 0x6a, 0x27, 0x55, 0x65, 0x71, 0x78, 0xb9, 0x3e, 0x7f, 0x1c, 0x2e, 0xa2, 0x58, 0xde, 0xfa, 0x43, + 0x09, 0x54, 0x3b, 0x2a, 0x36, 0xc8, 0x2d, 0x8c, 0x37, 0x27, 0xa9, 0xf1, 0x66, 0x7b, 0xec, 0xa4, + 0xe2, 0xf1, 0x15, 0x4e, 0x36, 0x9f, 0x65, 0x26, 0x9b, 0x87, 0x13, 0xe2, 0x5e, 0x3f, 0xd4, 0x3c, + 0x06, 0xf3, 0x91, 0xfb, 0x54, 0x97, 0x95, 0x6e, 0xea, 0xb2, 0xad, 0x3f, 0x95, 0xc0, 0x42, 0xc2, + 0xc5, 0x64, 0xd6, 0xd0, 0x49, 0x51, 0x1a, 0xd6, 0xc6, 0x94, 0x69, 0x36, 0x26, 0x87, 0x74, 0x26, + 0x60, 0x92, 0x31, 0x3b, 0xc8, 0xb3, 0x9c, 0x27, 0xa0, 0x4e, 0xb1, 0xab, 0x11, 0x1a, 0xca, 0xf8, + 0x81, 0xce, 0xc7, 0x33, 0xc9, 0x49, 0x4a, 0x8a, 0x32, 0xda, 0x6b, 0xbb, 0x60, 0x31, 0xe5, 0x6c, + 0x22, 0xfa, 0xf7, 0x17, 0x76, 0x58, 0x71, 0x32, 0xdf, 0x42, 0x36, 0xbe, 0x4c, 0x65, 0xe3, 0xa3, + 0xf1, 0x0f, 0x37, 0x51, 0x72, 0x45, 0x39, 0xd9, 0xcd, 0xe4, 0xe4, 0xce, 0x54, 0xe8, 0xd7, 0x67, + 0xe6, 0x5f, 0x25, 0xb0, 0x94, 0xd0, 0xbe, 0x85, 0x59, 0xec, 0xd3, 0xf4, 0x2c, 0xf6, 0x70, 0x9a, + 0x4d, 0x15, 0x0c, 0x63, 0xff, 0xae, 0xa6, 0x36, 0xf3, 0x0d, 0xa2, 0xff, 0xbf, 0x95, 0xc0, 0x4a, + 0xdf, 0x36, 0x7c, 0x93, 0xec, 0x1b, 0x58, 0x37, 0x43, 0x0d, 0x46, 0xa6, 0x6e, 0x18, 0x78, 0xb9, + 0x27, 0xe2, 0x7a, 0xba, 0x47, 0x89, 0x45, 0x5f, 0xc4, 0x18, 0xca, 0xb7, 0x85, 0xbf, 0x95, 0x17, + 0x23, 0x80, 0xd1, 0x48, 0x77, 0xf0, 0x87, 0x60, 0x81, 0xb1, 0x4a, 0x5d, 0x25, 0x6c, 0xd4, 0x15, + 0x7f, 0x76, 0x2c, 0x0b, 0xa0, 0x85, 0x4e, 0x2c, 0x42, 0x49, 0x3d, 0x78, 0x06, 0x96, 0x1d, 0xbb, + 0x77, 0x88, 0x2d, 0xac, 0x11, 0xf6, 0xd6, 0x1e, 0xf3, 0x7f, 0x49, 0xf9, 0x38, 0x30, 0xaf, 0x7c, + 0x14, 0xd2, 0xb7, 0xe3, 0xbc, 0xca, 0x5b, 0xc6, 0xa3, 0xf3, 0xcb, 0x9c, 0x8c, 0x8c, 0x82, 0x84, + 0x5f, 0x4a, 0xa0, 0xee, 0x8b, 0x47, 0x4f, 0x8c, 0x4b, 0xc1, 0xff, 0x1d, 0xca, 0x34, 0x79, 0x78, + 0x9a, 0x42, 0x8a, 0x7b, 0x5c, 0x7a, 0x1d, 0x65, 0x3c, 0x16, 0x8e, 0x3f, 0xb5, 0x69, 0xc6, 0x9f, + 0xd6, 0xdf, 0xcb, 0xe0, 0x6e, 0xae, 0xe0, 0xe1, 0x4f, 0xae, 0x99, 0x0b, 0xee, 0xfd, 0xdf, 0x66, + 0x82, 0x1c, 0x8d, 0x2d, 0x4f, 0x40, 0x63, 0xf7, 0xc0, 0x92, 0xea, 0xbb, 0x2e, 0xb1, 0x68, 0x66, + 0x16, 0x88, 0x06, 0x8a, 0xfd, 0xb4, 0x18, 0x65, 0xf5, 0x47, 0xcd, 0x24, 0xd5, 0x09, 0x67, 0x92, + 0x64, 0x14, 0x82, 0x37, 0x06, 0x79, 0x98, 0x8f, 0x42, 0xd0, 0xc7, 0xac, 0x3e, 0x7b, 0x03, 0x03, + 0xd4, 0x08, 0x61, 0x2e, 0xfd, 0x06, 0x9e, 0xa6, 0xa4, 0x28, 0xa3, 0xcd, 0x58, 0xe8, 0xbb, 0x85, + 0x59, 0x06, 0xf7, 0x52, 0xd4, 0x7c, 0x2b, 0x43, 0xcd, 0xbf, 0x53, 0x68, 0x98, 0x60, 0xe8, 0x5f, + 0x4a, 0xa3, 0x29, 0xfa, 0xf3, 0xe9, 0x28, 0xfa, 0x08, 0xfe, 0x78, 0x33, 0x57, 0x57, 0xb6, 0x2e, + 0xae, 0x9a, 0x33, 0x5f, 0x5d, 0x35, 0x67, 0xde, 0x5c, 0x35, 0x67, 0x7e, 0x33, 0x6c, 0x4a, 0x17, + 0xc3, 0xa6, 0xf4, 0xd5, 0xb0, 0x29, 0xbd, 0x19, 0x36, 0xa5, 0x7f, 0x0d, 0x9b, 0xd2, 0xef, 0xbf, + 0x6e, 0xce, 0xbc, 0x9c, 0x13, 0x1e, 0xff, 0x1b, 0x00, 0x00, 0xff, 0xff, 0x97, 0x69, 0x29, 0x49, + 0xe9, 0x1a, 0x00, 0x00, } diff --git a/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/generated.proto b/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/generated.proto index 537ae2d5..807fa3c5 100644 --- a/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/generated.proto +++ b/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/generated.proto @@ -19,19 +19,50 @@ limitations under the License. syntax = 'proto2'; -package k8s.io.kubernetes.pkg.apis.apps.v1beta1; +package k8s.io.client_go.pkg.apis.apps.v1beta1; import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; import "k8s.io/kubernetes/pkg/api/v1/generated.proto"; -import "k8s.io/kubernetes/pkg/apis/extensions/v1beta1/generated.proto"; +import "k8s.io/kubernetes/pkg/apis/policy/v1beta1/generated.proto"; // Package-wide variables from generator "generated". option go_package = "v1beta1"; +// ControllerRevision implements an immutable snapshot of state data. Clients +// are responsible for serializing and deserializing the objects that contain +// their internal state. +// Once a ControllerRevision has been successfully created, it can not be updated. +// The API Server will fail validation of all requests that attempt to mutate +// the Data field. ControllerRevisions may, however, be deleted. Note that, due to its use by both +// the DaemonSet and StatefulSet controllers for update and rollback, this object is beta. However, +// it may be subject to name and representation changes in future releases, and clients should not +// depend on its stability. It is primarily for internal use by controllers. +message ControllerRevision { + // Standard object's metadata. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + // +optional + optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; + + // Data is the serialized representation of the state. + optional k8s.io.apimachinery.pkg.runtime.RawExtension data = 2; + + // Revision indicates the revision of the state represented by Data. + optional int64 revision = 3; +} + +// ControllerRevisionList is a resource containing a list of ControllerRevision objects. +message ControllerRevisionList { + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + // +optional + optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; + + // Items is the list of ControllerRevisions + repeated ControllerRevision items = 2; +} + // Deployment enables declarative updates for Pods and ReplicaSets. message Deployment { // Standard object metadata. @@ -104,7 +135,7 @@ message DeploymentSpec { optional k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector selector = 2; // Template describes the pods that will be created. - optional k8s.io.kubernetes.pkg.api.v1.PodTemplateSpec template = 3; + optional k8s.io.client_go.pkg.api.v1.PodTemplateSpec template = 3; // The deployment strategy to use to replace existing pods with new ones. // +optional @@ -170,6 +201,12 @@ message DeploymentStatus { // +patchMergeKey=type // +patchStrategy=merge repeated DeploymentCondition conditions = 6; + + // Count of hash collisions for the Deployment. The Deployment controller uses this + // field as a collision avoidance mechanism when it needs to create the name for the + // newest ReplicaSet. + // +optional + optional int64 collisionCount = 8; } // DeploymentStrategy describes how to replace existing pods with new ones. @@ -188,7 +225,7 @@ message DeploymentStrategy { } message RollbackConfig { - // The revision to rollback to. If set to 0, rollbck to the last revision. + // The revision to rollback to. If set to 0, rollback to the last revision. // +optional optional int64 revision = 1; } @@ -223,17 +260,24 @@ message RollingUpdateDeployment { optional k8s.io.apimachinery.pkg.util.intstr.IntOrString maxSurge = 2; } +// RollingUpdateStatefulSetStrategy is used to communicate parameter for RollingUpdateStatefulSetStrategyType. +message RollingUpdateStatefulSetStrategy { + // Partition indicates the ordinal at which the StatefulSet should be + // partitioned. + optional int32 partition = 1; +} + // Scale represents a scaling request for a resource. message Scale { - // Standard object metadata; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata. + // Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; - // defines the behavior of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. + // defines the behavior of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. // +optional optional ScaleSpec spec = 2; - // current status of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. Read-only. + // current status of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. Read-only. // +optional optional ScaleStatus status = 3; } @@ -294,7 +338,7 @@ message StatefulSetList { // A StatefulSetSpec is the specification of a StatefulSet. message StatefulSetSpec { - // Replicas is the desired number of replicas of the given Template. + // replicas is the desired number of replicas of the given Template. // These are replicas in the sense that they are instantiations of the // same Template, but individual replicas also have a consistent identity. // If unspecified, defaults to 1. @@ -302,19 +346,19 @@ message StatefulSetSpec { // +optional optional int32 replicas = 1; - // Selector is a label query over pods that should match the replica count. + // selector is a label query over pods that should match the replica count. // If empty, defaulted to labels on the pod template. // More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector selector = 2; - // Template is the object that describes the pod that will be created if + // template is the object that describes the pod that will be created if // insufficient replicas are detected. Each pod stamped out by the StatefulSet // will fulfill this Template, but have a unique identity from the rest // of the StatefulSet. - optional k8s.io.kubernetes.pkg.api.v1.PodTemplateSpec template = 3; + optional k8s.io.client_go.pkg.api.v1.PodTemplateSpec template = 3; - // VolumeClaimTemplates is a list of claims that pods are allowed to reference. + // volumeClaimTemplates is a list of claims that pods are allowed to reference. // The StatefulSet controller is responsible for mapping network identities to // claims in a way that maintains the identity of a pod. Every claim in // this list must have at least one matching (by name) volumeMount in one @@ -322,23 +366,76 @@ message StatefulSetSpec { // any volumes in the template, with the same name. // TODO: Define the behavior if a claim already exists with the same name. // +optional - repeated k8s.io.kubernetes.pkg.api.v1.PersistentVolumeClaim volumeClaimTemplates = 4; + repeated k8s.io.client_go.pkg.api.v1.PersistentVolumeClaim volumeClaimTemplates = 4; - // ServiceName is the name of the service that governs this StatefulSet. + // serviceName is the name of the service that governs this StatefulSet. // This service must exist before the StatefulSet, and is responsible for // the network identity of the set. Pods get DNS/hostnames that follow the // pattern: pod-specific-string.serviceName.default.svc.cluster.local // where "pod-specific-string" is managed by the StatefulSet controller. optional string serviceName = 5; + + // podManagementPolicy controls how pods are created during initial scale up, + // when replacing pods on nodes, or when scaling down. The default policy is + // `OrderedReady`, where pods are created in increasing order (pod-0, then + // pod-1, etc) and the controller will wait until each pod is ready before + // continuing. When scaling down, the pods are removed in the opposite order. + // The alternative policy is `Parallel` which will create pods in parallel + // to match the desired scale without waiting, and on scale down will delete + // all pods at once. + // +optional + optional string podManagementPolicy = 6; + + // updateStrategy indicates the StatefulSetUpdateStrategy that will be + // employed to update Pods in the StatefulSet when a revision is made to + // Template. + optional StatefulSetUpdateStrategy updateStrategy = 7; + + // revisionHistoryLimit is the maximum number of revisions that will + // be maintained in the StatefulSet's revision history. The revision history + // consists of all revisions not represented by a currently applied + // StatefulSetSpec version. The default value is 10. + optional int32 revisionHistoryLimit = 8; } // StatefulSetStatus represents the current state of a StatefulSet. message StatefulSetStatus { - // most recent generation observed by this StatefulSet. + // observedGeneration is the most recent generation observed for this StatefulSet. It corresponds to the + // StatefulSet's generation, which is updated on mutation by the API Server. // +optional optional int64 observedGeneration = 1; - // Replicas is the number of actual replicas. + // replicas is the number of Pods created by the StatefulSet controller. optional int32 replicas = 2; + + // readyReplicas is the number of Pods created by the StatefulSet controller that have a Ready Condition. + optional int32 readyReplicas = 3; + + // currentReplicas is the number of Pods created by the StatefulSet controller from the StatefulSet version + // indicated by currentRevision. + optional int32 currentReplicas = 4; + + // updatedReplicas is the number of Pods created by the StatefulSet controller from the StatefulSet version + // indicated by updateRevision. + optional int32 updatedReplicas = 5; + + // currentRevision, if not empty, indicates the version of the StatefulSet used to generate Pods in the + // sequence [0,currentReplicas). + optional string currentRevision = 6; + + // updateRevision, if not empty, indicates the version of the StatefulSet used to generate Pods in the sequence + // [replicas-updatedReplicas,replicas) + optional string updateRevision = 7; +} + +// StatefulSetUpdateStrategy indicates the strategy that the StatefulSet +// controller will use to perform updates. It includes any additional parameters +// necessary to perform the update for the indicated strategy. +message StatefulSetUpdateStrategy { + // Type indicates the type of the StatefulSetUpdateStrategy. + optional string type = 1; + + // RollingUpdate is used to communicate parameters when Type is RollingUpdateStatefulSetStrategyType. + optional RollingUpdateStatefulSetStrategy rollingUpdate = 2; } diff --git a/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/register.go b/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/register.go index 07780965..5a4fd5bc 100644 --- a/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/register.go +++ b/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/register.go @@ -57,6 +57,8 @@ func addKnownTypes(scheme *runtime.Scheme) error { &Scale{}, &StatefulSet{}, &StatefulSetList{}, + &ControllerRevision{}, + &ControllerRevisionList{}, ) metav1.AddToGroupVersion(scheme, SchemeGroupVersion) return nil diff --git a/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/types.generated.go b/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/types.generated.go index 50a9d81e..a6c0bfb2 100644 --- a/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/types.generated.go +++ b/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/types.generated.go @@ -27,6 +27,7 @@ import ( codec1978 "github.com/ugorji/go/codec" pkg4_resource "k8s.io/apimachinery/pkg/api/resource" pkg1_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + pkg6_runtime "k8s.io/apimachinery/pkg/runtime" pkg2_types "k8s.io/apimachinery/pkg/types" pkg5_intstr "k8s.io/apimachinery/pkg/util/intstr" pkg3_v1 "k8s.io/client-go/pkg/api/v1" @@ -67,11 +68,12 @@ func init() { if false { // reference the types, but skip this branch at build/run time var v0 pkg4_resource.Quantity var v1 pkg1_v1.TypeMeta - var v2 pkg2_types.UID - var v3 pkg5_intstr.IntOrString - var v4 pkg3_v1.PodTemplateSpec - var v5 time.Time - _, _, _, _, _, _ = v0, v1, v2, v3, v4, v5 + var v2 pkg6_runtime.RawExtension + var v3 pkg2_types.UID + var v4 pkg5_intstr.IntOrString + var v5 pkg3_v1.PodTemplateSpec + var v6 time.Time + _, _, _, _, _, _, _ = v0, v1, v2, v3, v4, v5, v6 } } @@ -1340,6 +1342,474 @@ func (x *StatefulSet) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } +func (x PodManagementPolicyType) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x)) + } +} + +func (x *PodManagementPolicyType) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + *((*string)(x)) = r.DecodeString() + } +} + +func (x *StatefulSetUpdateStrategy) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [2]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.Type != "" + yyq2[1] = x.RollingUpdate != nil + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(2) + } else { + yynn2 = 0 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + x.Type.CodecEncodeSelf(e) + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("type")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + x.Type.CodecEncodeSelf(e) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + if x.RollingUpdate == nil { + r.EncodeNil() + } else { + x.RollingUpdate.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("rollingUpdate")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.RollingUpdate == nil { + r.EncodeNil() + } else { + x.RollingUpdate.CodecEncodeSelf(e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *StatefulSetUpdateStrategy) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *StatefulSetUpdateStrategy) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "type": + if r.TryDecodeAsNil() { + x.Type = "" + } else { + yyv4 := &x.Type + yyv4.CodecDecodeSelf(d) + } + case "rollingUpdate": + if r.TryDecodeAsNil() { + if x.RollingUpdate != nil { + x.RollingUpdate = nil + } + } else { + if x.RollingUpdate == nil { + x.RollingUpdate = new(RollingUpdateStatefulSetStrategy) + } + x.RollingUpdate.CodecDecodeSelf(d) + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *StatefulSetUpdateStrategy) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj6 int + var yyb6 bool + var yyhl6 bool = l >= 0 + yyj6++ + if yyhl6 { + yyb6 = yyj6 > l + } else { + yyb6 = r.CheckBreak() + } + if yyb6 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Type = "" + } else { + yyv7 := &x.Type + yyv7.CodecDecodeSelf(d) + } + yyj6++ + if yyhl6 { + yyb6 = yyj6 > l + } else { + yyb6 = r.CheckBreak() + } + if yyb6 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.RollingUpdate != nil { + x.RollingUpdate = nil + } + } else { + if x.RollingUpdate == nil { + x.RollingUpdate = new(RollingUpdateStatefulSetStrategy) + } + x.RollingUpdate.CodecDecodeSelf(d) + } + for { + yyj6++ + if yyhl6 { + yyb6 = yyj6 > l + } else { + yyb6 = r.CheckBreak() + } + if yyb6 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj6-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x StatefulSetUpdateStrategyType) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x)) + } +} + +func (x *StatefulSetUpdateStrategyType) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + *((*string)(x)) = r.DecodeString() + } +} + +func (x *RollingUpdateStatefulSetStrategy) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [1]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.Partition != nil + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(1) + } else { + yynn2 = 0 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + if x.Partition == nil { + r.EncodeNil() + } else { + yy4 := *x.Partition + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeInt(int64(yy4)) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("partition")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Partition == nil { + r.EncodeNil() + } else { + yy6 := *x.Partition + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeInt(int64(yy6)) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *RollingUpdateStatefulSetStrategy) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *RollingUpdateStatefulSetStrategy) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "partition": + if r.TryDecodeAsNil() { + if x.Partition != nil { + x.Partition = nil + } + } else { + if x.Partition == nil { + x.Partition = new(int32) + } + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*int32)(x.Partition)) = int32(r.DecodeInt(32)) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *RollingUpdateStatefulSetStrategy) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj6 int + var yyb6 bool + var yyhl6 bool = l >= 0 + yyj6++ + if yyhl6 { + yyb6 = yyj6 > l + } else { + yyb6 = r.CheckBreak() + } + if yyb6 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.Partition != nil { + x.Partition = nil + } + } else { + if x.Partition == nil { + x.Partition = new(int32) + } + yym8 := z.DecBinary() + _ = yym8 + if false { + } else { + *((*int32)(x.Partition)) = int32(r.DecodeInt(32)) + } + } + for { + yyj6++ + if yyhl6 { + yyb6 = yyj6 > l + } else { + yyb6 = r.CheckBreak() + } + if yyb6 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj6-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + func (x *StatefulSetSpec) CodecEncodeSelf(e *codec1978.Encoder) { var h codecSelfer1234 z, r := codec1978.GenHelperEncoder(e) @@ -1354,15 +1824,18 @@ func (x *StatefulSetSpec) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [5]bool + var yyq2 [8]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[0] = x.Replicas != nil yyq2[1] = x.Selector != nil yyq2[3] = len(x.VolumeClaimTemplates) != 0 + yyq2[5] = x.PodManagementPolicy != "" + yyq2[6] = true + yyq2[7] = x.RevisionHistoryLimit != nil var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(5) + r.EncodeArrayStart(8) } else { yynn2 = 2 for _, b := range yyq2 { @@ -1506,6 +1979,73 @@ func (x *StatefulSetSpec) CodecEncodeSelf(e *codec1978.Encoder) { r.EncodeString(codecSelferC_UTF81234, string(x.ServiceName)) } } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[5] { + x.PodManagementPolicy.CodecEncodeSelf(e) + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[5] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("podManagementPolicy")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + x.PodManagementPolicy.CodecEncodeSelf(e) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[6] { + yy26 := &x.UpdateStrategy + yy26.CodecEncodeSelf(e) + } else { + r.EncodeNil() + } + } else { + if yyq2[6] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("updateStrategy")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy28 := &x.UpdateStrategy + yy28.CodecEncodeSelf(e) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[7] { + if x.RevisionHistoryLimit == nil { + r.EncodeNil() + } else { + yy31 := *x.RevisionHistoryLimit + yym32 := z.EncBinary() + _ = yym32 + if false { + } else { + r.EncodeInt(int64(yy31)) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[7] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("revisionHistoryLimit")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.RevisionHistoryLimit == nil { + r.EncodeNil() + } else { + yy33 := *x.RevisionHistoryLimit + yym34 := z.EncBinary() + _ = yym34 + if false { + } else { + r.EncodeInt(int64(yy33)) + } + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -1631,6 +2171,36 @@ func (x *StatefulSetSpec) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { *((*string)(yyv11)) = r.DecodeString() } } + case "podManagementPolicy": + if r.TryDecodeAsNil() { + x.PodManagementPolicy = "" + } else { + yyv13 := &x.PodManagementPolicy + yyv13.CodecDecodeSelf(d) + } + case "updateStrategy": + if r.TryDecodeAsNil() { + x.UpdateStrategy = StatefulSetUpdateStrategy{} + } else { + yyv14 := &x.UpdateStrategy + yyv14.CodecDecodeSelf(d) + } + case "revisionHistoryLimit": + if r.TryDecodeAsNil() { + if x.RevisionHistoryLimit != nil { + x.RevisionHistoryLimit = nil + } + } else { + if x.RevisionHistoryLimit == nil { + x.RevisionHistoryLimit = new(int32) + } + yym16 := z.DecBinary() + _ = yym16 + if false { + } else { + *((*int32)(x.RevisionHistoryLimit)) = int32(r.DecodeInt(32)) + } + } default: z.DecStructFieldNotFound(-1, yys3) } // end switch yys3 @@ -1642,16 +2212,16 @@ func (x *StatefulSetSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj13 int - var yyb13 bool - var yyhl13 bool = l >= 0 - yyj13++ - if yyhl13 { - yyb13 = yyj13 > l + var yyj17 int + var yyb17 bool + var yyhl17 bool = l >= 0 + yyj17++ + if yyhl17 { + yyb17 = yyj17 > l } else { - yyb13 = r.CheckBreak() + yyb17 = r.CheckBreak() } - if yyb13 { + if yyb17 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -1664,20 +2234,20 @@ func (x *StatefulSetSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) if x.Replicas == nil { x.Replicas = new(int32) } - yym15 := z.DecBinary() - _ = yym15 + yym19 := z.DecBinary() + _ = yym19 if false { } else { *((*int32)(x.Replicas)) = int32(r.DecodeInt(32)) } } - yyj13++ - if yyhl13 { - yyb13 = yyj13 > l + yyj17++ + if yyhl17 { + yyb17 = yyj17 > l } else { - yyb13 = r.CheckBreak() + yyb17 = r.CheckBreak() } - if yyb13 { + if yyb17 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -1690,21 +2260,21 @@ func (x *StatefulSetSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) if x.Selector == nil { x.Selector = new(pkg1_v1.LabelSelector) } - yym17 := z.DecBinary() - _ = yym17 + yym21 := z.DecBinary() + _ = yym21 if false { } else if z.HasExtensions() && z.DecExt(x.Selector) { } else { z.DecFallback(x.Selector, false) } } - yyj13++ - if yyhl13 { - yyb13 = yyj13 > l + yyj17++ + if yyhl17 { + yyb17 = yyj17 > l } else { - yyb13 = r.CheckBreak() + yyb17 = r.CheckBreak() } - if yyb13 { + if yyb17 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -1712,16 +2282,16 @@ func (x *StatefulSetSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) if r.TryDecodeAsNil() { x.Template = pkg3_v1.PodTemplateSpec{} } else { - yyv18 := &x.Template - yyv18.CodecDecodeSelf(d) + yyv22 := &x.Template + yyv22.CodecDecodeSelf(d) } - yyj13++ - if yyhl13 { - yyb13 = yyj13 > l + yyj17++ + if yyhl17 { + yyb17 = yyj17 > l } else { - yyb13 = r.CheckBreak() + yyb17 = r.CheckBreak() } - if yyb13 { + if yyb17 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -1729,21 +2299,21 @@ func (x *StatefulSetSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) if r.TryDecodeAsNil() { x.VolumeClaimTemplates = nil } else { - yyv19 := &x.VolumeClaimTemplates - yym20 := z.DecBinary() - _ = yym20 + yyv23 := &x.VolumeClaimTemplates + yym24 := z.DecBinary() + _ = yym24 if false { } else { - h.decSlicev1_PersistentVolumeClaim((*[]pkg3_v1.PersistentVolumeClaim)(yyv19), d) + h.decSlicev1_PersistentVolumeClaim((*[]pkg3_v1.PersistentVolumeClaim)(yyv23), d) } } - yyj13++ - if yyhl13 { - yyb13 = yyj13 > l + yyj17++ + if yyhl17 { + yyb17 = yyj17 > l } else { - yyb13 = r.CheckBreak() + yyb17 = r.CheckBreak() } - if yyb13 { + if yyb17 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -1751,26 +2321,86 @@ func (x *StatefulSetSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) if r.TryDecodeAsNil() { x.ServiceName = "" } else { - yyv21 := &x.ServiceName - yym22 := z.DecBinary() - _ = yym22 + yyv25 := &x.ServiceName + yym26 := z.DecBinary() + _ = yym26 if false { } else { - *((*string)(yyv21)) = r.DecodeString() + *((*string)(yyv25)) = r.DecodeString() + } + } + yyj17++ + if yyhl17 { + yyb17 = yyj17 > l + } else { + yyb17 = r.CheckBreak() + } + if yyb17 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.PodManagementPolicy = "" + } else { + yyv27 := &x.PodManagementPolicy + yyv27.CodecDecodeSelf(d) + } + yyj17++ + if yyhl17 { + yyb17 = yyj17 > l + } else { + yyb17 = r.CheckBreak() + } + if yyb17 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.UpdateStrategy = StatefulSetUpdateStrategy{} + } else { + yyv28 := &x.UpdateStrategy + yyv28.CodecDecodeSelf(d) + } + yyj17++ + if yyhl17 { + yyb17 = yyj17 > l + } else { + yyb17 = r.CheckBreak() + } + if yyb17 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.RevisionHistoryLimit != nil { + x.RevisionHistoryLimit = nil + } + } else { + if x.RevisionHistoryLimit == nil { + x.RevisionHistoryLimit = new(int32) + } + yym30 := z.DecBinary() + _ = yym30 + if false { + } else { + *((*int32)(x.RevisionHistoryLimit)) = int32(r.DecodeInt(32)) } } for { - yyj13++ - if yyhl13 { - yyb13 = yyj13 > l + yyj17++ + if yyhl17 { + yyb17 = yyj17 > l } else { - yyb13 = r.CheckBreak() + yyb17 = r.CheckBreak() } - if yyb13 { + if yyb17 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj13-1, "") + z.DecStructFieldNotFound(yyj17-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -1789,13 +2419,18 @@ func (x *StatefulSetStatus) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [2]bool + var yyq2 [7]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[0] = x.ObservedGeneration != nil + yyq2[2] = x.ReadyReplicas != 0 + yyq2[3] = x.CurrentReplicas != 0 + yyq2[4] = x.UpdatedReplicas != 0 + yyq2[5] = x.CurrentRevision != "" + yyq2[6] = x.UpdateRevision != "" var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(2) + r.EncodeArrayStart(7) } else { yynn2 = 1 for _, b := range yyq2 { @@ -1860,6 +2495,131 @@ func (x *StatefulSetStatus) CodecEncodeSelf(e *codec1978.Encoder) { r.EncodeInt(int64(x.Replicas)) } } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yym12 := z.EncBinary() + _ = yym12 + if false { + } else { + r.EncodeInt(int64(x.ReadyReplicas)) + } + } else { + r.EncodeInt(0) + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("readyReplicas")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym13 := z.EncBinary() + _ = yym13 + if false { + } else { + r.EncodeInt(int64(x.ReadyReplicas)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[3] { + yym15 := z.EncBinary() + _ = yym15 + if false { + } else { + r.EncodeInt(int64(x.CurrentReplicas)) + } + } else { + r.EncodeInt(0) + } + } else { + if yyq2[3] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("currentReplicas")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym16 := z.EncBinary() + _ = yym16 + if false { + } else { + r.EncodeInt(int64(x.CurrentReplicas)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[4] { + yym18 := z.EncBinary() + _ = yym18 + if false { + } else { + r.EncodeInt(int64(x.UpdatedReplicas)) + } + } else { + r.EncodeInt(0) + } + } else { + if yyq2[4] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("updatedReplicas")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym19 := z.EncBinary() + _ = yym19 + if false { + } else { + r.EncodeInt(int64(x.UpdatedReplicas)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[5] { + yym21 := z.EncBinary() + _ = yym21 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.CurrentRevision)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[5] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("currentRevision")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym22 := z.EncBinary() + _ = yym22 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.CurrentRevision)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[6] { + yym24 := z.EncBinary() + _ = yym24 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.UpdateRevision)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[6] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("updateRevision")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym25 := z.EncBinary() + _ = yym25 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.UpdateRevision)) + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -1949,6 +2709,66 @@ func (x *StatefulSetStatus) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) *((*int32)(yyv6)) = int32(r.DecodeInt(32)) } } + case "readyReplicas": + if r.TryDecodeAsNil() { + x.ReadyReplicas = 0 + } else { + yyv8 := &x.ReadyReplicas + yym9 := z.DecBinary() + _ = yym9 + if false { + } else { + *((*int32)(yyv8)) = int32(r.DecodeInt(32)) + } + } + case "currentReplicas": + if r.TryDecodeAsNil() { + x.CurrentReplicas = 0 + } else { + yyv10 := &x.CurrentReplicas + yym11 := z.DecBinary() + _ = yym11 + if false { + } else { + *((*int32)(yyv10)) = int32(r.DecodeInt(32)) + } + } + case "updatedReplicas": + if r.TryDecodeAsNil() { + x.UpdatedReplicas = 0 + } else { + yyv12 := &x.UpdatedReplicas + yym13 := z.DecBinary() + _ = yym13 + if false { + } else { + *((*int32)(yyv12)) = int32(r.DecodeInt(32)) + } + } + case "currentRevision": + if r.TryDecodeAsNil() { + x.CurrentRevision = "" + } else { + yyv14 := &x.CurrentRevision + yym15 := z.DecBinary() + _ = yym15 + if false { + } else { + *((*string)(yyv14)) = r.DecodeString() + } + } + case "updateRevision": + if r.TryDecodeAsNil() { + x.UpdateRevision = "" + } else { + yyv16 := &x.UpdateRevision + yym17 := z.DecBinary() + _ = yym17 + if false { + } else { + *((*string)(yyv16)) = r.DecodeString() + } + } default: z.DecStructFieldNotFound(-1, yys3) } // end switch yys3 @@ -1960,16 +2780,16 @@ func (x *StatefulSetStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj8 int - var yyb8 bool - var yyhl8 bool = l >= 0 - yyj8++ - if yyhl8 { - yyb8 = yyj8 > l + var yyj18 int + var yyb18 bool + var yyhl18 bool = l >= 0 + yyj18++ + if yyhl18 { + yyb18 = yyj18 > l } else { - yyb8 = r.CheckBreak() + yyb18 = r.CheckBreak() } - if yyb8 { + if yyb18 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -1982,20 +2802,20 @@ func (x *StatefulSetStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder if x.ObservedGeneration == nil { x.ObservedGeneration = new(int64) } - yym10 := z.DecBinary() - _ = yym10 + yym20 := z.DecBinary() + _ = yym20 if false { } else { *((*int64)(x.ObservedGeneration)) = int64(r.DecodeInt(64)) } } - yyj8++ - if yyhl8 { - yyb8 = yyj8 > l + yyj18++ + if yyhl18 { + yyb18 = yyj18 > l } else { - yyb8 = r.CheckBreak() + yyb18 = r.CheckBreak() } - if yyb8 { + if yyb18 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2003,26 +2823,136 @@ func (x *StatefulSetStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder if r.TryDecodeAsNil() { x.Replicas = 0 } else { - yyv11 := &x.Replicas - yym12 := z.DecBinary() - _ = yym12 + yyv21 := &x.Replicas + yym22 := z.DecBinary() + _ = yym22 if false { } else { - *((*int32)(yyv11)) = int32(r.DecodeInt(32)) + *((*int32)(yyv21)) = int32(r.DecodeInt(32)) + } + } + yyj18++ + if yyhl18 { + yyb18 = yyj18 > l + } else { + yyb18 = r.CheckBreak() + } + if yyb18 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ReadyReplicas = 0 + } else { + yyv23 := &x.ReadyReplicas + yym24 := z.DecBinary() + _ = yym24 + if false { + } else { + *((*int32)(yyv23)) = int32(r.DecodeInt(32)) + } + } + yyj18++ + if yyhl18 { + yyb18 = yyj18 > l + } else { + yyb18 = r.CheckBreak() + } + if yyb18 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.CurrentReplicas = 0 + } else { + yyv25 := &x.CurrentReplicas + yym26 := z.DecBinary() + _ = yym26 + if false { + } else { + *((*int32)(yyv25)) = int32(r.DecodeInt(32)) + } + } + yyj18++ + if yyhl18 { + yyb18 = yyj18 > l + } else { + yyb18 = r.CheckBreak() + } + if yyb18 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.UpdatedReplicas = 0 + } else { + yyv27 := &x.UpdatedReplicas + yym28 := z.DecBinary() + _ = yym28 + if false { + } else { + *((*int32)(yyv27)) = int32(r.DecodeInt(32)) + } + } + yyj18++ + if yyhl18 { + yyb18 = yyj18 > l + } else { + yyb18 = r.CheckBreak() + } + if yyb18 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.CurrentRevision = "" + } else { + yyv29 := &x.CurrentRevision + yym30 := z.DecBinary() + _ = yym30 + if false { + } else { + *((*string)(yyv29)) = r.DecodeString() + } + } + yyj18++ + if yyhl18 { + yyb18 = yyj18 > l + } else { + yyb18 = r.CheckBreak() + } + if yyb18 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.UpdateRevision = "" + } else { + yyv31 := &x.UpdateRevision + yym32 := z.DecBinary() + _ = yym32 + if false { + } else { + *((*string)(yyv31)) = r.DecodeString() } } for { - yyj8++ - if yyhl8 { - yyb8 = yyj8 > l + yyj18++ + if yyhl18 { + yyb18 = yyj18 > l } else { - yyb8 = r.CheckBreak() + yyb18 = r.CheckBreak() } - if yyb8 { + if yyb18 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj8-1, "") + z.DecStructFieldNotFound(yyj18-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -4606,7 +5536,7 @@ func (x *DeploymentStatus) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [7]bool + var yyq2 [8]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[0] = x.ObservedGeneration != 0 @@ -4616,9 +5546,10 @@ func (x *DeploymentStatus) CodecEncodeSelf(e *codec1978.Encoder) { yyq2[4] = x.AvailableReplicas != 0 yyq2[5] = x.UnavailableReplicas != 0 yyq2[6] = len(x.Conditions) != 0 + yyq2[7] = x.CollisionCount != nil var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(7) + r.EncodeArrayStart(8) } else { yynn2 = 0 for _, b := range yyq2 { @@ -4812,6 +5743,41 @@ func (x *DeploymentStatus) CodecEncodeSelf(e *codec1978.Encoder) { } } } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[7] { + if x.CollisionCount == nil { + r.EncodeNil() + } else { + yy25 := *x.CollisionCount + yym26 := z.EncBinary() + _ = yym26 + if false { + } else { + r.EncodeInt(int64(yy25)) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[7] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("collisionCount")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.CollisionCount == nil { + r.EncodeNil() + } else { + yy27 := *x.CollisionCount + yym28 := z.EncBinary() + _ = yym28 + if false { + } else { + r.EncodeInt(int64(yy27)) + } + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -4957,6 +5923,22 @@ func (x *DeploymentStatus) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { h.decSliceDeploymentCondition((*[]DeploymentCondition)(yyv16), d) } } + case "collisionCount": + if r.TryDecodeAsNil() { + if x.CollisionCount != nil { + x.CollisionCount = nil + } + } else { + if x.CollisionCount == nil { + x.CollisionCount = new(int64) + } + yym19 := z.DecBinary() + _ = yym19 + if false { + } else { + *((*int64)(x.CollisionCount)) = int64(r.DecodeInt(64)) + } + } default: z.DecStructFieldNotFound(-1, yys3) } // end switch yys3 @@ -4968,16 +5950,16 @@ func (x *DeploymentStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj18 int - var yyb18 bool - var yyhl18 bool = l >= 0 - yyj18++ - if yyhl18 { - yyb18 = yyj18 > l + var yyj20 int + var yyb20 bool + var yyhl20 bool = l >= 0 + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l } else { - yyb18 = r.CheckBreak() + yyb20 = r.CheckBreak() } - if yyb18 { + if yyb20 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4985,21 +5967,21 @@ func (x *DeploymentStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) if r.TryDecodeAsNil() { x.ObservedGeneration = 0 } else { - yyv19 := &x.ObservedGeneration - yym20 := z.DecBinary() - _ = yym20 + yyv21 := &x.ObservedGeneration + yym22 := z.DecBinary() + _ = yym22 if false { } else { - *((*int64)(yyv19)) = int64(r.DecodeInt(64)) + *((*int64)(yyv21)) = int64(r.DecodeInt(64)) } } - yyj18++ - if yyhl18 { - yyb18 = yyj18 > l + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l } else { - yyb18 = r.CheckBreak() + yyb20 = r.CheckBreak() } - if yyb18 { + if yyb20 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -5007,29 +5989,7 @@ func (x *DeploymentStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) if r.TryDecodeAsNil() { x.Replicas = 0 } else { - yyv21 := &x.Replicas - yym22 := z.DecBinary() - _ = yym22 - if false { - } else { - *((*int32)(yyv21)) = int32(r.DecodeInt(32)) - } - } - yyj18++ - if yyhl18 { - yyb18 = yyj18 > l - } else { - yyb18 = r.CheckBreak() - } - if yyb18 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.UpdatedReplicas = 0 - } else { - yyv23 := &x.UpdatedReplicas + yyv23 := &x.Replicas yym24 := z.DecBinary() _ = yym24 if false { @@ -5037,21 +5997,21 @@ func (x *DeploymentStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) *((*int32)(yyv23)) = int32(r.DecodeInt(32)) } } - yyj18++ - if yyhl18 { - yyb18 = yyj18 > l + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l } else { - yyb18 = r.CheckBreak() + yyb20 = r.CheckBreak() } - if yyb18 { + if yyb20 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } z.DecSendContainerState(codecSelfer_containerArrayElem1234) if r.TryDecodeAsNil() { - x.ReadyReplicas = 0 + x.UpdatedReplicas = 0 } else { - yyv25 := &x.ReadyReplicas + yyv25 := &x.UpdatedReplicas yym26 := z.DecBinary() _ = yym26 if false { @@ -5059,21 +6019,21 @@ func (x *DeploymentStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) *((*int32)(yyv25)) = int32(r.DecodeInt(32)) } } - yyj18++ - if yyhl18 { - yyb18 = yyj18 > l + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l } else { - yyb18 = r.CheckBreak() + yyb20 = r.CheckBreak() } - if yyb18 { + if yyb20 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } z.DecSendContainerState(codecSelfer_containerArrayElem1234) if r.TryDecodeAsNil() { - x.AvailableReplicas = 0 + x.ReadyReplicas = 0 } else { - yyv27 := &x.AvailableReplicas + yyv27 := &x.ReadyReplicas yym28 := z.DecBinary() _ = yym28 if false { @@ -5081,21 +6041,21 @@ func (x *DeploymentStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) *((*int32)(yyv27)) = int32(r.DecodeInt(32)) } } - yyj18++ - if yyhl18 { - yyb18 = yyj18 > l + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l } else { - yyb18 = r.CheckBreak() + yyb20 = r.CheckBreak() } - if yyb18 { + if yyb20 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } z.DecSendContainerState(codecSelfer_containerArrayElem1234) if r.TryDecodeAsNil() { - x.UnavailableReplicas = 0 + x.AvailableReplicas = 0 } else { - yyv29 := &x.UnavailableReplicas + yyv29 := &x.AvailableReplicas yym30 := z.DecBinary() _ = yym30 if false { @@ -5103,13 +6063,35 @@ func (x *DeploymentStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) *((*int32)(yyv29)) = int32(r.DecodeInt(32)) } } - yyj18++ - if yyhl18 { - yyb18 = yyj18 > l + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l } else { - yyb18 = r.CheckBreak() + yyb20 = r.CheckBreak() } - if yyb18 { + if yyb20 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.UnavailableReplicas = 0 + } else { + yyv31 := &x.UnavailableReplicas + yym32 := z.DecBinary() + _ = yym32 + if false { + } else { + *((*int32)(yyv31)) = int32(r.DecodeInt(32)) + } + } + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l + } else { + yyb20 = r.CheckBreak() + } + if yyb20 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -5117,26 +6099,52 @@ func (x *DeploymentStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) if r.TryDecodeAsNil() { x.Conditions = nil } else { - yyv31 := &x.Conditions - yym32 := z.DecBinary() - _ = yym32 + yyv33 := &x.Conditions + yym34 := z.DecBinary() + _ = yym34 if false { } else { - h.decSliceDeploymentCondition((*[]DeploymentCondition)(yyv31), d) + h.decSliceDeploymentCondition((*[]DeploymentCondition)(yyv33), d) + } + } + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l + } else { + yyb20 = r.CheckBreak() + } + if yyb20 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.CollisionCount != nil { + x.CollisionCount = nil + } + } else { + if x.CollisionCount == nil { + x.CollisionCount = new(int64) + } + yym36 := z.DecBinary() + _ = yym36 + if false { + } else { + *((*int64)(x.CollisionCount)) = int64(r.DecodeInt(64)) } } for { - yyj18++ - if yyhl18 { - yyb18 = yyj18 > l + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l } else { - yyb18 = r.CheckBreak() + yyb20 = r.CheckBreak() } - if yyb18 { + if yyb20 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj18-1, "") + z.DecStructFieldNotFound(yyj20-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -6008,6 +7016,808 @@ func (x *DeploymentList) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } +func (x *ControllerRevision) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [5]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.Kind != "" + yyq2[1] = x.APIVersion != "" + yyq2[2] = true + yyq2[3] = true + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(5) + } else { + yynn2 = 1 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("kind")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("apiVersion")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yy10 := &x.ObjectMeta + yym11 := z.EncBinary() + _ = yym11 + if false { + } else if z.HasExtensions() && z.EncExt(yy10) { + } else { + z.EncFallback(yy10) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("metadata")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy12 := &x.ObjectMeta + yym13 := z.EncBinary() + _ = yym13 + if false { + } else if z.HasExtensions() && z.EncExt(yy12) { + } else { + z.EncFallback(yy12) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[3] { + yy15 := &x.Data + yym16 := z.EncBinary() + _ = yym16 + if false { + } else if z.HasExtensions() && z.EncExt(yy15) { + } else if !yym16 && z.IsJSONHandle() { + z.EncJSONMarshal(yy15) + } else { + z.EncFallback(yy15) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[3] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("data")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy17 := &x.Data + yym18 := z.EncBinary() + _ = yym18 + if false { + } else if z.HasExtensions() && z.EncExt(yy17) { + } else if !yym18 && z.IsJSONHandle() { + z.EncJSONMarshal(yy17) + } else { + z.EncFallback(yy17) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yym20 := z.EncBinary() + _ = yym20 + if false { + } else { + r.EncodeInt(int64(x.Revision)) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("revision")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym21 := z.EncBinary() + _ = yym21 + if false { + } else { + r.EncodeInt(int64(x.Revision)) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *ControllerRevision) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *ControllerRevision) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "kind": + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv4 := &x.Kind + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "apiVersion": + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv6 := &x.APIVersion + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + case "metadata": + if r.TryDecodeAsNil() { + x.ObjectMeta = pkg1_v1.ObjectMeta{} + } else { + yyv8 := &x.ObjectMeta + yym9 := z.DecBinary() + _ = yym9 + if false { + } else if z.HasExtensions() && z.DecExt(yyv8) { + } else { + z.DecFallback(yyv8, false) + } + } + case "data": + if r.TryDecodeAsNil() { + x.Data = pkg6_runtime.RawExtension{} + } else { + yyv10 := &x.Data + yym11 := z.DecBinary() + _ = yym11 + if false { + } else if z.HasExtensions() && z.DecExt(yyv10) { + } else if !yym11 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv10) + } else { + z.DecFallback(yyv10, false) + } + } + case "revision": + if r.TryDecodeAsNil() { + x.Revision = 0 + } else { + yyv12 := &x.Revision + yym13 := z.DecBinary() + _ = yym13 + if false { + } else { + *((*int64)(yyv12)) = int64(r.DecodeInt(64)) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *ControllerRevision) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj14 int + var yyb14 bool + var yyhl14 bool = l >= 0 + yyj14++ + if yyhl14 { + yyb14 = yyj14 > l + } else { + yyb14 = r.CheckBreak() + } + if yyb14 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv15 := &x.Kind + yym16 := z.DecBinary() + _ = yym16 + if false { + } else { + *((*string)(yyv15)) = r.DecodeString() + } + } + yyj14++ + if yyhl14 { + yyb14 = yyj14 > l + } else { + yyb14 = r.CheckBreak() + } + if yyb14 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv17 := &x.APIVersion + yym18 := z.DecBinary() + _ = yym18 + if false { + } else { + *((*string)(yyv17)) = r.DecodeString() + } + } + yyj14++ + if yyhl14 { + yyb14 = yyj14 > l + } else { + yyb14 = r.CheckBreak() + } + if yyb14 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ObjectMeta = pkg1_v1.ObjectMeta{} + } else { + yyv19 := &x.ObjectMeta + yym20 := z.DecBinary() + _ = yym20 + if false { + } else if z.HasExtensions() && z.DecExt(yyv19) { + } else { + z.DecFallback(yyv19, false) + } + } + yyj14++ + if yyhl14 { + yyb14 = yyj14 > l + } else { + yyb14 = r.CheckBreak() + } + if yyb14 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Data = pkg6_runtime.RawExtension{} + } else { + yyv21 := &x.Data + yym22 := z.DecBinary() + _ = yym22 + if false { + } else if z.HasExtensions() && z.DecExt(yyv21) { + } else if !yym22 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv21) + } else { + z.DecFallback(yyv21, false) + } + } + yyj14++ + if yyhl14 { + yyb14 = yyj14 > l + } else { + yyb14 = r.CheckBreak() + } + if yyb14 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Revision = 0 + } else { + yyv23 := &x.Revision + yym24 := z.DecBinary() + _ = yym24 + if false { + } else { + *((*int64)(yyv23)) = int64(r.DecodeInt(64)) + } + } + for { + yyj14++ + if yyhl14 { + yyb14 = yyj14 > l + } else { + yyb14 = r.CheckBreak() + } + if yyb14 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj14-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *ControllerRevisionList) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [4]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.Kind != "" + yyq2[1] = x.APIVersion != "" + yyq2[2] = true + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(4) + } else { + yynn2 = 1 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("kind")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("apiVersion")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yy10 := &x.ListMeta + yym11 := z.EncBinary() + _ = yym11 + if false { + } else if z.HasExtensions() && z.EncExt(yy10) { + } else { + z.EncFallback(yy10) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("metadata")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy12 := &x.ListMeta + yym13 := z.EncBinary() + _ = yym13 + if false { + } else if z.HasExtensions() && z.EncExt(yy12) { + } else { + z.EncFallback(yy12) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if x.Items == nil { + r.EncodeNil() + } else { + yym15 := z.EncBinary() + _ = yym15 + if false { + } else { + h.encSliceControllerRevision(([]ControllerRevision)(x.Items), e) + } + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("items")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Items == nil { + r.EncodeNil() + } else { + yym16 := z.EncBinary() + _ = yym16 + if false { + } else { + h.encSliceControllerRevision(([]ControllerRevision)(x.Items), e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *ControllerRevisionList) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *ControllerRevisionList) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "kind": + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv4 := &x.Kind + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "apiVersion": + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv6 := &x.APIVersion + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + case "metadata": + if r.TryDecodeAsNil() { + x.ListMeta = pkg1_v1.ListMeta{} + } else { + yyv8 := &x.ListMeta + yym9 := z.DecBinary() + _ = yym9 + if false { + } else if z.HasExtensions() && z.DecExt(yyv8) { + } else { + z.DecFallback(yyv8, false) + } + } + case "items": + if r.TryDecodeAsNil() { + x.Items = nil + } else { + yyv10 := &x.Items + yym11 := z.DecBinary() + _ = yym11 + if false { + } else { + h.decSliceControllerRevision((*[]ControllerRevision)(yyv10), d) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *ControllerRevisionList) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj12 int + var yyb12 bool + var yyhl12 bool = l >= 0 + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv13 := &x.Kind + yym14 := z.DecBinary() + _ = yym14 + if false { + } else { + *((*string)(yyv13)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv15 := &x.APIVersion + yym16 := z.DecBinary() + _ = yym16 + if false { + } else { + *((*string)(yyv15)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ListMeta = pkg1_v1.ListMeta{} + } else { + yyv17 := &x.ListMeta + yym18 := z.DecBinary() + _ = yym18 + if false { + } else if z.HasExtensions() && z.DecExt(yyv17) { + } else { + z.DecFallback(yyv17, false) + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Items = nil + } else { + yyv19 := &x.Items + yym20 := z.DecBinary() + _ = yym20 + if false { + } else { + h.decSliceControllerRevision((*[]ControllerRevision)(yyv19), d) + } + } + for { + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj12-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + func (x codecSelfer1234) encSlicev1_PersistentVolumeClaim(v []pkg3_v1.PersistentVolumeClaim, e *codec1978.Encoder) { var h codecSelfer1234 z, r := codec1978.GenHelperEncoder(e) @@ -6166,7 +7976,7 @@ func (x codecSelfer1234) decSliceStatefulSet(v *[]StatefulSet, d *codec1978.Deco yyrg1 := len(yyv1) > 0 yyv21 := yyv1 - yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 896) + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 984) if yyrt1 { if yyrl1 <= cap(yyv1) { yyv1 = yyv1[:yyrl1] @@ -6404,7 +8214,7 @@ func (x codecSelfer1234) decSliceDeployment(v *[]Deployment, d *codec1978.Decode yyrg1 := len(yyv1) > 0 yyv21 := yyv1 - yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 960) + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 968) if yyrt1 { if yyrl1 <= cap(yyv1) { yyv1 = yyv1[:yyrl1] @@ -6483,3 +8293,122 @@ func (x codecSelfer1234) decSliceDeployment(v *[]Deployment, d *codec1978.Decode *v = yyv1 } } + +func (x codecSelfer1234) encSliceControllerRevision(v []ControllerRevision, e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + r.EncodeArrayStart(len(v)) + for _, yyv1 := range v { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy2 := &yyv1 + yy2.CodecEncodeSelf(e) + } + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) decSliceControllerRevision(v *[]ControllerRevision, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + + yyv1 := *v + yyh1, yyl1 := z.DecSliceHelperStart() + var yyc1 bool + _ = yyc1 + if yyl1 == 0 { + if yyv1 == nil { + yyv1 = []ControllerRevision{} + yyc1 = true + } else if len(yyv1) != 0 { + yyv1 = yyv1[:0] + yyc1 = true + } + } else if yyl1 > 0 { + var yyrr1, yyrl1 int + var yyrt1 bool + _, _ = yyrl1, yyrt1 + yyrr1 = yyl1 // len(yyv1) + if yyl1 > cap(yyv1) { + + yyrg1 := len(yyv1) > 0 + yyv21 := yyv1 + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 312) + if yyrt1 { + if yyrl1 <= cap(yyv1) { + yyv1 = yyv1[:yyrl1] + } else { + yyv1 = make([]ControllerRevision, yyrl1) + } + } else { + yyv1 = make([]ControllerRevision, yyrl1) + } + yyc1 = true + yyrr1 = len(yyv1) + if yyrg1 { + copy(yyv1, yyv21) + } + } else if yyl1 != len(yyv1) { + yyv1 = yyv1[:yyl1] + yyc1 = true + } + yyj1 := 0 + for ; yyj1 < yyrr1; yyj1++ { + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = ControllerRevision{} + } else { + yyv2 := &yyv1[yyj1] + yyv2.CodecDecodeSelf(d) + } + + } + if yyrt1 { + for ; yyj1 < yyl1; yyj1++ { + yyv1 = append(yyv1, ControllerRevision{}) + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = ControllerRevision{} + } else { + yyv3 := &yyv1[yyj1] + yyv3.CodecDecodeSelf(d) + } + + } + } + + } else { + yyj1 := 0 + for ; !r.CheckBreak(); yyj1++ { + + if yyj1 >= len(yyv1) { + yyv1 = append(yyv1, ControllerRevision{}) // var yyz1 ControllerRevision + yyc1 = true + } + yyh1.ElemContainerState(yyj1) + if yyj1 < len(yyv1) { + if r.TryDecodeAsNil() { + yyv1[yyj1] = ControllerRevision{} + } else { + yyv4 := &yyv1[yyj1] + yyv4.CodecDecodeSelf(d) + } + + } else { + z.DecSwallow() + } + + } + if yyj1 < len(yyv1) { + yyv1 = yyv1[:yyj1] + yyc1 = true + } else if yyj1 == 0 && yyv1 == nil { + yyv1 = []ControllerRevision{} + yyc1 = true + } + } + yyh1.End() + if yyc1 { + *v = yyv1 + } +} diff --git a/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/types.go b/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/types.go index ee80fbc3..adfd8385 100644 --- a/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/types.go +++ b/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/types.go @@ -18,13 +18,16 @@ package v1beta1 import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/intstr" "k8s.io/client-go/pkg/api/v1" ) const ( // StatefulSetInitAnnotation if present, and set to false, indicates that a Pod's readiness should be ignored. - StatefulSetInitAnnotation = "pod.alpha.kubernetes.io/initialized" + StatefulSetInitAnnotation = "pod.alpha.kubernetes.io/initialized" + ControllerRevisionHashLabelKey = "controller-revision-hash" + StatefulSetRevisionLabel = ControllerRevisionHashLabelKey ) // ScaleSpec describes the attributes of a scale subresource @@ -59,15 +62,15 @@ type ScaleStatus struct { // Scale represents a scaling request for a resource. type Scale struct { metav1.TypeMeta `json:",inline"` - // Standard object metadata; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata. + // Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` - // defines the behavior of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. + // defines the behavior of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. // +optional Spec ScaleSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` - // current status of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. Read-only. + // current status of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. Read-only. // +optional Status ScaleStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } @@ -95,9 +98,60 @@ type StatefulSet struct { Status StatefulSetStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } +// PodManagementPolicyType defines the policy for creating pods under a stateful set. +type PodManagementPolicyType string + +const ( + // OrderedReadyPodManagement will create pods in strictly increasing order on + // scale up and strictly decreasing order on scale down, progressing only when + // the previous pod is ready or terminated. At most one pod will be changed + // at any time. + OrderedReadyPodManagement PodManagementPolicyType = "OrderedReady" + // ParallelPodManagement will create and delete pods as soon as the stateful set + // replica count is changed, and will not wait for pods to be ready or complete + // termination. + ParallelPodManagement = "Parallel" +) + +// StatefulSetUpdateStrategy indicates the strategy that the StatefulSet +// controller will use to perform updates. It includes any additional parameters +// necessary to perform the update for the indicated strategy. +type StatefulSetUpdateStrategy struct { + // Type indicates the type of the StatefulSetUpdateStrategy. + Type StatefulSetUpdateStrategyType `json:"type,omitempty" protobuf:"bytes,1,opt,name=type,casttype=StatefulSetStrategyType"` + // RollingUpdate is used to communicate parameters when Type is RollingUpdateStatefulSetStrategyType. + RollingUpdate *RollingUpdateStatefulSetStrategy `json:"rollingUpdate,omitempty" protobuf:"bytes,2,opt,name=rollingUpdate"` +} + +// StatefulSetUpdateStrategyType is a string enumeration type that enumerates +// all possible update strategies for the StatefulSet controller. +type StatefulSetUpdateStrategyType string + +const ( + // RollingUpdateStatefulSetStrategyType indicates that update will be + // applied to all Pods in the StatefulSet with respect to the StatefulSet + // ordering constraints. When a scale operation is performed with this + // strategy, new Pods will be created from the specification version indicated + // by the StatefulSet's updateRevision. + RollingUpdateStatefulSetStrategyType = "RollingUpdate" + // OnDeleteStatefulSetStrategyType triggers the legacy behavior. Version + // tracking and ordered rolling restarts are disabled. Pods are recreated + // from the StatefulSetSpec when they are manually deleted. When a scale + // operation is performed with this strategy,specification version indicated + // by the StatefulSet's currentRevision. + OnDeleteStatefulSetStrategyType = "OnDelete" +) + +// RollingUpdateStatefulSetStrategy is used to communicate parameter for RollingUpdateStatefulSetStrategyType. +type RollingUpdateStatefulSetStrategy struct { + // Partition indicates the ordinal at which the StatefulSet should be + // partitioned. + Partition *int32 `json:"partition,omitempty" protobuf:"varint,1,opt,name=partition"` +} + // A StatefulSetSpec is the specification of a StatefulSet. type StatefulSetSpec struct { - // Replicas is the desired number of replicas of the given Template. + // replicas is the desired number of replicas of the given Template. // These are replicas in the sense that they are instantiations of the // same Template, but individual replicas also have a consistent identity. // If unspecified, defaults to 1. @@ -105,19 +159,19 @@ type StatefulSetSpec struct { // +optional Replicas *int32 `json:"replicas,omitempty" protobuf:"varint,1,opt,name=replicas"` - // Selector is a label query over pods that should match the replica count. + // selector is a label query over pods that should match the replica count. // If empty, defaulted to labels on the pod template. // More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors // +optional Selector *metav1.LabelSelector `json:"selector,omitempty" protobuf:"bytes,2,opt,name=selector"` - // Template is the object that describes the pod that will be created if + // template is the object that describes the pod that will be created if // insufficient replicas are detected. Each pod stamped out by the StatefulSet // will fulfill this Template, but have a unique identity from the rest // of the StatefulSet. Template v1.PodTemplateSpec `json:"template" protobuf:"bytes,3,opt,name=template"` - // VolumeClaimTemplates is a list of claims that pods are allowed to reference. + // volumeClaimTemplates is a list of claims that pods are allowed to reference. // The StatefulSet controller is responsible for mapping network identities to // claims in a way that maintains the identity of a pod. Every claim in // this list must have at least one matching (by name) volumeMount in one @@ -127,22 +181,64 @@ type StatefulSetSpec struct { // +optional VolumeClaimTemplates []v1.PersistentVolumeClaim `json:"volumeClaimTemplates,omitempty" protobuf:"bytes,4,rep,name=volumeClaimTemplates"` - // ServiceName is the name of the service that governs this StatefulSet. + // serviceName is the name of the service that governs this StatefulSet. // This service must exist before the StatefulSet, and is responsible for // the network identity of the set. Pods get DNS/hostnames that follow the // pattern: pod-specific-string.serviceName.default.svc.cluster.local // where "pod-specific-string" is managed by the StatefulSet controller. ServiceName string `json:"serviceName" protobuf:"bytes,5,opt,name=serviceName"` + + // podManagementPolicy controls how pods are created during initial scale up, + // when replacing pods on nodes, or when scaling down. The default policy is + // `OrderedReady`, where pods are created in increasing order (pod-0, then + // pod-1, etc) and the controller will wait until each pod is ready before + // continuing. When scaling down, the pods are removed in the opposite order. + // The alternative policy is `Parallel` which will create pods in parallel + // to match the desired scale without waiting, and on scale down will delete + // all pods at once. + // +optional + PodManagementPolicy PodManagementPolicyType `json:"podManagementPolicy,omitempty" protobuf:"bytes,6,opt,name=podManagementPolicy,casttype=PodManagementPolicyType"` + + // updateStrategy indicates the StatefulSetUpdateStrategy that will be + // employed to update Pods in the StatefulSet when a revision is made to + // Template. + UpdateStrategy StatefulSetUpdateStrategy `json:"updateStrategy,omitempty" protobuf:"bytes,7,opt,name=updateStrategy"` + + // revisionHistoryLimit is the maximum number of revisions that will + // be maintained in the StatefulSet's revision history. The revision history + // consists of all revisions not represented by a currently applied + // StatefulSetSpec version. The default value is 10. + RevisionHistoryLimit *int32 `json:"revisionHistoryLimit,omitempty" protobuf:"varint,8,opt,name=revisionHistoryLimit"` } // StatefulSetStatus represents the current state of a StatefulSet. type StatefulSetStatus struct { - // most recent generation observed by this StatefulSet. + // observedGeneration is the most recent generation observed for this StatefulSet. It corresponds to the + // StatefulSet's generation, which is updated on mutation by the API Server. // +optional ObservedGeneration *int64 `json:"observedGeneration,omitempty" protobuf:"varint,1,opt,name=observedGeneration"` - // Replicas is the number of actual replicas. + // replicas is the number of Pods created by the StatefulSet controller. Replicas int32 `json:"replicas" protobuf:"varint,2,opt,name=replicas"` + + // readyReplicas is the number of Pods created by the StatefulSet controller that have a Ready Condition. + ReadyReplicas int32 `json:"readyReplicas,omitempty" protobuf:"varint,3,opt,name=readyReplicas"` + + // currentReplicas is the number of Pods created by the StatefulSet controller from the StatefulSet version + // indicated by currentRevision. + CurrentReplicas int32 `json:"currentReplicas,omitempty" protobuf:"varint,4,opt,name=currentReplicas"` + + // updatedReplicas is the number of Pods created by the StatefulSet controller from the StatefulSet version + // indicated by updateRevision. + UpdatedReplicas int32 `json:"updatedReplicas,omitempty" protobuf:"varint,5,opt,name=updatedReplicas"` + + // currentRevision, if not empty, indicates the version of the StatefulSet used to generate Pods in the + // sequence [0,currentReplicas). + CurrentRevision string `json:"currentRevision,omitempty" protobuf:"bytes,6,opt,name=currentRevision"` + + // updateRevision, if not empty, indicates the version of the StatefulSet used to generate Pods in the sequence + // [replicas-updatedReplicas,replicas) + UpdateRevision string `json:"updateRevision,omitempty" protobuf:"bytes,7,opt,name=updateRevision"` } // StatefulSetList is a collection of StatefulSets. @@ -233,7 +329,7 @@ type DeploymentRollback struct { } type RollbackConfig struct { - // The revision to rollback to. If set to 0, rollbck to the last revision. + // The revision to rollback to. If set to 0, rollback to the last revision. // +optional Revision int64 `json:"revision,omitempty" protobuf:"varint,1,opt,name=revision"` } @@ -330,6 +426,12 @@ type DeploymentStatus struct { // +patchMergeKey=type // +patchStrategy=merge Conditions []DeploymentCondition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,6,rep,name=conditions"` + + // Count of hash collisions for the Deployment. The Deployment controller uses this + // field as a collision avoidance mechanism when it needs to create the name for the + // newest ReplicaSet. + // +optional + CollisionCount *int64 `json:"collisionCount,omitempty" protobuf:"varint,8,opt,name=collisionCount"` } type DeploymentConditionType string @@ -375,3 +477,40 @@ type DeploymentList struct { // Items is the list of Deployments. Items []Deployment `json:"items" protobuf:"bytes,2,rep,name=items"` } + +// +genclient=true + +// ControllerRevision implements an immutable snapshot of state data. Clients +// are responsible for serializing and deserializing the objects that contain +// their internal state. +// Once a ControllerRevision has been successfully created, it can not be updated. +// The API Server will fail validation of all requests that attempt to mutate +// the Data field. ControllerRevisions may, however, be deleted. Note that, due to its use by both +// the DaemonSet and StatefulSet controllers for update and rollback, this object is beta. However, +// it may be subject to name and representation changes in future releases, and clients should not +// depend on its stability. It is primarily for internal use by controllers. +type ControllerRevision struct { + metav1.TypeMeta `json:",inline"` + // Standard object's metadata. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + // +optional + metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` + + // Data is the serialized representation of the state. + Data runtime.RawExtension `json:"data,omitempty" protobuf:"bytes,2,opt,name=data"` + + // Revision indicates the revision of the state represented by Data. + Revision int64 `json:"revision" protobuf:"varint,3,opt,name=revision"` +} + +// ControllerRevisionList is a resource containing a list of ControllerRevision objects. +type ControllerRevisionList struct { + metav1.TypeMeta `json:",inline"` + + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + // +optional + metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` + + // Items is the list of ControllerRevisions + Items []ControllerRevision `json:"items" protobuf:"bytes,2,rep,name=items"` +} diff --git a/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/types_swagger_doc_generated.go b/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/types_swagger_doc_generated.go index 15c73ae9..00d1a617 100644 --- a/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/types_swagger_doc_generated.go +++ b/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/types_swagger_doc_generated.go @@ -27,6 +27,27 @@ package v1beta1 // Those methods can be generated by using hack/update-generated-swagger-docs.sh // AUTO-GENERATED FUNCTIONS START HERE +var map_ControllerRevision = map[string]string{ + "": "ControllerRevision implements an immutable snapshot of state data. Clients are responsible for serializing and deserializing the objects that contain their internal state. Once a ControllerRevision has been successfully created, it can not be updated. The API Server will fail validation of all requests that attempt to mutate the Data field. ControllerRevisions may, however, be deleted. Note that, due to its use by both the DaemonSet and StatefulSet controllers for update and rollback, this object is beta. However, it may be subject to name and representation changes in future releases, and clients should not depend on its stability. It is primarily for internal use by controllers.", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "data": "Data is the serialized representation of the state.", + "revision": "Revision indicates the revision of the state represented by Data.", +} + +func (ControllerRevision) SwaggerDoc() map[string]string { + return map_ControllerRevision +} + +var map_ControllerRevisionList = map[string]string{ + "": "ControllerRevisionList is a resource containing a list of ControllerRevision objects.", + "metadata": "More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "items": "Items is the list of ControllerRevisions", +} + +func (ControllerRevisionList) SwaggerDoc() map[string]string { + return map_ControllerRevisionList +} + var map_Deployment = map[string]string{ "": "Deployment enables declarative updates for Pods and ReplicaSets.", "metadata": "Standard object metadata.", @@ -99,6 +120,7 @@ var map_DeploymentStatus = map[string]string{ "availableReplicas": "Total number of available pods (ready for at least minReadySeconds) targeted by this deployment.", "unavailableReplicas": "Total number of unavailable pods targeted by this deployment.", "conditions": "Represents the latest available observations of a deployment's current state.", + "collisionCount": "Count of hash collisions for the Deployment. The Deployment controller uses this field as a collision avoidance mechanism when it needs to create the name for the newest ReplicaSet.", } func (DeploymentStatus) SwaggerDoc() map[string]string { @@ -116,7 +138,7 @@ func (DeploymentStrategy) SwaggerDoc() map[string]string { } var map_RollbackConfig = map[string]string{ - "revision": "The revision to rollback to. If set to 0, rollbck to the last revision.", + "revision": "The revision to rollback to. If set to 0, rollback to the last revision.", } func (RollbackConfig) SwaggerDoc() map[string]string { @@ -133,11 +155,20 @@ func (RollingUpdateDeployment) SwaggerDoc() map[string]string { return map_RollingUpdateDeployment } +var map_RollingUpdateStatefulSetStrategy = map[string]string{ + "": "RollingUpdateStatefulSetStrategy is used to communicate parameter for RollingUpdateStatefulSetStrategyType.", + "partition": "Partition indicates the ordinal at which the StatefulSet should be partitioned.", +} + +func (RollingUpdateStatefulSetStrategy) SwaggerDoc() map[string]string { + return map_RollingUpdateStatefulSetStrategy +} + var map_Scale = map[string]string{ "": "Scale represents a scaling request for a resource.", - "metadata": "Standard object metadata; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata.", - "spec": "defines the behavior of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status.", - "status": "current status of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. Read-only.", + "metadata": "Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata.", + "spec": "defines the behavior of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status.", + "status": "current status of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. Read-only.", } func (Scale) SwaggerDoc() map[string]string { @@ -184,11 +215,14 @@ func (StatefulSetList) SwaggerDoc() map[string]string { var map_StatefulSetSpec = map[string]string{ "": "A StatefulSetSpec is the specification of a StatefulSet.", - "replicas": "Replicas is the desired number of replicas of the given Template. These are replicas in the sense that they are instantiations of the same Template, but individual replicas also have a consistent identity. If unspecified, defaults to 1.", - "selector": "Selector is a label query over pods that should match the replica count. If empty, defaulted to labels on the pod template. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors", - "template": "Template is the object that describes the pod that will be created if insufficient replicas are detected. Each pod stamped out by the StatefulSet will fulfill this Template, but have a unique identity from the rest of the StatefulSet.", - "volumeClaimTemplates": "VolumeClaimTemplates is a list of claims that pods are allowed to reference. The StatefulSet controller is responsible for mapping network identities to claims in a way that maintains the identity of a pod. Every claim in this list must have at least one matching (by name) volumeMount in one container in the template. A claim in this list takes precedence over any volumes in the template, with the same name.", - "serviceName": "ServiceName is the name of the service that governs this StatefulSet. This service must exist before the StatefulSet, and is responsible for the network identity of the set. Pods get DNS/hostnames that follow the pattern: pod-specific-string.serviceName.default.svc.cluster.local where \"pod-specific-string\" is managed by the StatefulSet controller.", + "replicas": "replicas is the desired number of replicas of the given Template. These are replicas in the sense that they are instantiations of the same Template, but individual replicas also have a consistent identity. If unspecified, defaults to 1.", + "selector": "selector is a label query over pods that should match the replica count. If empty, defaulted to labels on the pod template. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors", + "template": "template is the object that describes the pod that will be created if insufficient replicas are detected. Each pod stamped out by the StatefulSet will fulfill this Template, but have a unique identity from the rest of the StatefulSet.", + "volumeClaimTemplates": "volumeClaimTemplates is a list of claims that pods are allowed to reference. The StatefulSet controller is responsible for mapping network identities to claims in a way that maintains the identity of a pod. Every claim in this list must have at least one matching (by name) volumeMount in one container in the template. A claim in this list takes precedence over any volumes in the template, with the same name.", + "serviceName": "serviceName is the name of the service that governs this StatefulSet. This service must exist before the StatefulSet, and is responsible for the network identity of the set. Pods get DNS/hostnames that follow the pattern: pod-specific-string.serviceName.default.svc.cluster.local where \"pod-specific-string\" is managed by the StatefulSet controller.", + "podManagementPolicy": "podManagementPolicy controls how pods are created during initial scale up, when replacing pods on nodes, or when scaling down. The default policy is `OrderedReady`, where pods are created in increasing order (pod-0, then pod-1, etc) and the controller will wait until each pod is ready before continuing. When scaling down, the pods are removed in the opposite order. The alternative policy is `Parallel` which will create pods in parallel to match the desired scale without waiting, and on scale down will delete all pods at once.", + "updateStrategy": "updateStrategy indicates the StatefulSetUpdateStrategy that will be employed to update Pods in the StatefulSet when a revision is made to Template.", + "revisionHistoryLimit": "revisionHistoryLimit is the maximum number of revisions that will be maintained in the StatefulSet's revision history. The revision history consists of all revisions not represented by a currently applied StatefulSetSpec version. The default value is 10.", } func (StatefulSetSpec) SwaggerDoc() map[string]string { @@ -197,12 +231,27 @@ func (StatefulSetSpec) SwaggerDoc() map[string]string { var map_StatefulSetStatus = map[string]string{ "": "StatefulSetStatus represents the current state of a StatefulSet.", - "observedGeneration": "most recent generation observed by this StatefulSet.", - "replicas": "Replicas is the number of actual replicas.", + "observedGeneration": "observedGeneration is the most recent generation observed for this StatefulSet. It corresponds to the StatefulSet's generation, which is updated on mutation by the API Server.", + "replicas": "replicas is the number of Pods created by the StatefulSet controller.", + "readyReplicas": "readyReplicas is the number of Pods created by the StatefulSet controller that have a Ready Condition.", + "currentReplicas": "currentReplicas is the number of Pods created by the StatefulSet controller from the StatefulSet version indicated by currentRevision.", + "updatedReplicas": "updatedReplicas is the number of Pods created by the StatefulSet controller from the StatefulSet version indicated by updateRevision.", + "currentRevision": "currentRevision, if not empty, indicates the version of the StatefulSet used to generate Pods in the sequence [0,currentReplicas).", + "updateRevision": "updateRevision, if not empty, indicates the version of the StatefulSet used to generate Pods in the sequence [replicas-updatedReplicas,replicas)", } func (StatefulSetStatus) SwaggerDoc() map[string]string { return map_StatefulSetStatus } +var map_StatefulSetUpdateStrategy = map[string]string{ + "": "StatefulSetUpdateStrategy indicates the strategy that the StatefulSet controller will use to perform updates. It includes any additional parameters necessary to perform the update for the indicated strategy.", + "type": "Type indicates the type of the StatefulSetUpdateStrategy.", + "rollingUpdate": "RollingUpdate is used to communicate parameters when Type is RollingUpdateStatefulSetStrategyType.", +} + +func (StatefulSetUpdateStrategy) SwaggerDoc() map[string]string { + return map_StatefulSetUpdateStrategy +} + // AUTO-GENERATED FUNCTIONS END HERE diff --git a/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/zz_generated.conversion.go b/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/zz_generated.conversion.go index 55e36637..c2c25db8 100644 --- a/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/zz_generated.conversion.go +++ b/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/zz_generated.conversion.go @@ -38,6 +38,12 @@ func init() { // Public to allow building arbitrary schemes. func RegisterConversions(scheme *runtime.Scheme) error { return scheme.AddGeneratedConversionFuncs( + Convert_v1beta1_ControllerRevision_To_apps_ControllerRevision, + Convert_apps_ControllerRevision_To_v1beta1_ControllerRevision, + Convert_v1beta1_ControllerRevisionList_To_apps_ControllerRevisionList, + Convert_apps_ControllerRevisionList_To_v1beta1_ControllerRevisionList, + Convert_v1beta1_RollingUpdateStatefulSetStrategy_To_apps_RollingUpdateStatefulSetStrategy, + Convert_apps_RollingUpdateStatefulSetStrategy_To_v1beta1_RollingUpdateStatefulSetStrategy, Convert_v1beta1_StatefulSet_To_apps_StatefulSet, Convert_apps_StatefulSet_To_v1beta1_StatefulSet, Convert_v1beta1_StatefulSetList_To_apps_StatefulSetList, @@ -46,9 +52,105 @@ func RegisterConversions(scheme *runtime.Scheme) error { Convert_apps_StatefulSetSpec_To_v1beta1_StatefulSetSpec, Convert_v1beta1_StatefulSetStatus_To_apps_StatefulSetStatus, Convert_apps_StatefulSetStatus_To_v1beta1_StatefulSetStatus, + Convert_v1beta1_StatefulSetUpdateStrategy_To_apps_StatefulSetUpdateStrategy, + Convert_apps_StatefulSetUpdateStrategy_To_v1beta1_StatefulSetUpdateStrategy, ) } +func autoConvert_v1beta1_ControllerRevision_To_apps_ControllerRevision(in *ControllerRevision, out *apps.ControllerRevision, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + if err := runtime.Convert_runtime_RawExtension_To_runtime_Object(&in.Data, &out.Data, s); err != nil { + return err + } + out.Revision = in.Revision + return nil +} + +// Convert_v1beta1_ControllerRevision_To_apps_ControllerRevision is an autogenerated conversion function. +func Convert_v1beta1_ControllerRevision_To_apps_ControllerRevision(in *ControllerRevision, out *apps.ControllerRevision, s conversion.Scope) error { + return autoConvert_v1beta1_ControllerRevision_To_apps_ControllerRevision(in, out, s) +} + +func autoConvert_apps_ControllerRevision_To_v1beta1_ControllerRevision(in *apps.ControllerRevision, out *ControllerRevision, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + if err := runtime.Convert_runtime_Object_To_runtime_RawExtension(&in.Data, &out.Data, s); err != nil { + return err + } + out.Revision = in.Revision + return nil +} + +// Convert_apps_ControllerRevision_To_v1beta1_ControllerRevision is an autogenerated conversion function. +func Convert_apps_ControllerRevision_To_v1beta1_ControllerRevision(in *apps.ControllerRevision, out *ControllerRevision, s conversion.Scope) error { + return autoConvert_apps_ControllerRevision_To_v1beta1_ControllerRevision(in, out, s) +} + +func autoConvert_v1beta1_ControllerRevisionList_To_apps_ControllerRevisionList(in *ControllerRevisionList, out *apps.ControllerRevisionList, s conversion.Scope) error { + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]apps.ControllerRevision, len(*in)) + for i := range *in { + if err := Convert_v1beta1_ControllerRevision_To_apps_ControllerRevision(&(*in)[i], &(*out)[i], s); err != nil { + return err + } + } + } else { + out.Items = nil + } + return nil +} + +// Convert_v1beta1_ControllerRevisionList_To_apps_ControllerRevisionList is an autogenerated conversion function. +func Convert_v1beta1_ControllerRevisionList_To_apps_ControllerRevisionList(in *ControllerRevisionList, out *apps.ControllerRevisionList, s conversion.Scope) error { + return autoConvert_v1beta1_ControllerRevisionList_To_apps_ControllerRevisionList(in, out, s) +} + +func autoConvert_apps_ControllerRevisionList_To_v1beta1_ControllerRevisionList(in *apps.ControllerRevisionList, out *ControllerRevisionList, s conversion.Scope) error { + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]ControllerRevision, len(*in)) + for i := range *in { + if err := Convert_apps_ControllerRevision_To_v1beta1_ControllerRevision(&(*in)[i], &(*out)[i], s); err != nil { + return err + } + } + } else { + out.Items = make([]ControllerRevision, 0) + } + return nil +} + +// Convert_apps_ControllerRevisionList_To_v1beta1_ControllerRevisionList is an autogenerated conversion function. +func Convert_apps_ControllerRevisionList_To_v1beta1_ControllerRevisionList(in *apps.ControllerRevisionList, out *ControllerRevisionList, s conversion.Scope) error { + return autoConvert_apps_ControllerRevisionList_To_v1beta1_ControllerRevisionList(in, out, s) +} + +func autoConvert_v1beta1_RollingUpdateStatefulSetStrategy_To_apps_RollingUpdateStatefulSetStrategy(in *RollingUpdateStatefulSetStrategy, out *apps.RollingUpdateStatefulSetStrategy, s conversion.Scope) error { + if err := v1.Convert_Pointer_int32_To_int32(&in.Partition, &out.Partition, s); err != nil { + return err + } + return nil +} + +// Convert_v1beta1_RollingUpdateStatefulSetStrategy_To_apps_RollingUpdateStatefulSetStrategy is an autogenerated conversion function. +func Convert_v1beta1_RollingUpdateStatefulSetStrategy_To_apps_RollingUpdateStatefulSetStrategy(in *RollingUpdateStatefulSetStrategy, out *apps.RollingUpdateStatefulSetStrategy, s conversion.Scope) error { + return autoConvert_v1beta1_RollingUpdateStatefulSetStrategy_To_apps_RollingUpdateStatefulSetStrategy(in, out, s) +} + +func autoConvert_apps_RollingUpdateStatefulSetStrategy_To_v1beta1_RollingUpdateStatefulSetStrategy(in *apps.RollingUpdateStatefulSetStrategy, out *RollingUpdateStatefulSetStrategy, s conversion.Scope) error { + if err := v1.Convert_int32_To_Pointer_int32(&in.Partition, &out.Partition, s); err != nil { + return err + } + return nil +} + +// Convert_apps_RollingUpdateStatefulSetStrategy_To_v1beta1_RollingUpdateStatefulSetStrategy is an autogenerated conversion function. +func Convert_apps_RollingUpdateStatefulSetStrategy_To_v1beta1_RollingUpdateStatefulSetStrategy(in *apps.RollingUpdateStatefulSetStrategy, out *RollingUpdateStatefulSetStrategy, s conversion.Scope) error { + return autoConvert_apps_RollingUpdateStatefulSetStrategy_To_v1beta1_RollingUpdateStatefulSetStrategy(in, out, s) +} + func autoConvert_v1beta1_StatefulSet_To_apps_StatefulSet(in *StatefulSet, out *apps.StatefulSet, s conversion.Scope) error { out.ObjectMeta = in.ObjectMeta if err := Convert_v1beta1_StatefulSetSpec_To_apps_StatefulSetSpec(&in.Spec, &out.Spec, s); err != nil { @@ -133,6 +235,11 @@ func autoConvert_v1beta1_StatefulSetSpec_To_apps_StatefulSetSpec(in *StatefulSet } out.VolumeClaimTemplates = *(*[]api.PersistentVolumeClaim)(unsafe.Pointer(&in.VolumeClaimTemplates)) out.ServiceName = in.ServiceName + out.PodManagementPolicy = apps.PodManagementPolicyType(in.PodManagementPolicy) + if err := Convert_v1beta1_StatefulSetUpdateStrategy_To_apps_StatefulSetUpdateStrategy(&in.UpdateStrategy, &out.UpdateStrategy, s); err != nil { + return err + } + out.RevisionHistoryLimit = (*int32)(unsafe.Pointer(in.RevisionHistoryLimit)) return nil } @@ -146,12 +253,22 @@ func autoConvert_apps_StatefulSetSpec_To_v1beta1_StatefulSetSpec(in *apps.Statef } out.VolumeClaimTemplates = *(*[]api_v1.PersistentVolumeClaim)(unsafe.Pointer(&in.VolumeClaimTemplates)) out.ServiceName = in.ServiceName + out.PodManagementPolicy = PodManagementPolicyType(in.PodManagementPolicy) + if err := Convert_apps_StatefulSetUpdateStrategy_To_v1beta1_StatefulSetUpdateStrategy(&in.UpdateStrategy, &out.UpdateStrategy, s); err != nil { + return err + } + out.RevisionHistoryLimit = (*int32)(unsafe.Pointer(in.RevisionHistoryLimit)) return nil } func autoConvert_v1beta1_StatefulSetStatus_To_apps_StatefulSetStatus(in *StatefulSetStatus, out *apps.StatefulSetStatus, s conversion.Scope) error { out.ObservedGeneration = (*int64)(unsafe.Pointer(in.ObservedGeneration)) out.Replicas = in.Replicas + out.ReadyReplicas = in.ReadyReplicas + out.CurrentReplicas = in.CurrentReplicas + out.UpdatedReplicas = in.UpdatedReplicas + out.CurrentRevision = in.CurrentRevision + out.UpdateRevision = in.UpdateRevision return nil } @@ -163,6 +280,11 @@ func Convert_v1beta1_StatefulSetStatus_To_apps_StatefulSetStatus(in *StatefulSet func autoConvert_apps_StatefulSetStatus_To_v1beta1_StatefulSetStatus(in *apps.StatefulSetStatus, out *StatefulSetStatus, s conversion.Scope) error { out.ObservedGeneration = (*int64)(unsafe.Pointer(in.ObservedGeneration)) out.Replicas = in.Replicas + out.ReadyReplicas = in.ReadyReplicas + out.CurrentReplicas = in.CurrentReplicas + out.UpdatedReplicas = in.UpdatedReplicas + out.CurrentRevision = in.CurrentRevision + out.UpdateRevision = in.UpdateRevision return nil } @@ -170,3 +292,31 @@ func autoConvert_apps_StatefulSetStatus_To_v1beta1_StatefulSetStatus(in *apps.St func Convert_apps_StatefulSetStatus_To_v1beta1_StatefulSetStatus(in *apps.StatefulSetStatus, out *StatefulSetStatus, s conversion.Scope) error { return autoConvert_apps_StatefulSetStatus_To_v1beta1_StatefulSetStatus(in, out, s) } + +func autoConvert_v1beta1_StatefulSetUpdateStrategy_To_apps_StatefulSetUpdateStrategy(in *StatefulSetUpdateStrategy, out *apps.StatefulSetUpdateStrategy, s conversion.Scope) error { + out.Type = apps.StatefulSetUpdateStrategyType(in.Type) + if in.RollingUpdate != nil { + in, out := &in.RollingUpdate, &out.RollingUpdate + *out = new(apps.RollingUpdateStatefulSetStrategy) + if err := Convert_v1beta1_RollingUpdateStatefulSetStrategy_To_apps_RollingUpdateStatefulSetStrategy(*in, *out, s); err != nil { + return err + } + } else { + out.RollingUpdate = nil + } + return nil +} + +func autoConvert_apps_StatefulSetUpdateStrategy_To_v1beta1_StatefulSetUpdateStrategy(in *apps.StatefulSetUpdateStrategy, out *StatefulSetUpdateStrategy, s conversion.Scope) error { + out.Type = StatefulSetUpdateStrategyType(in.Type) + if in.RollingUpdate != nil { + in, out := &in.RollingUpdate, &out.RollingUpdate + *out = new(RollingUpdateStatefulSetStrategy) + if err := Convert_apps_RollingUpdateStatefulSetStrategy_To_v1beta1_RollingUpdateStatefulSetStrategy(*in, *out, s); err != nil { + return err + } + } else { + out.RollingUpdate = nil + } + return nil +} diff --git a/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/zz_generated.deepcopy.go b/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/zz_generated.deepcopy.go index 6047da92..5be34398 100644 --- a/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/zz_generated.deepcopy.go +++ b/vendor/k8s.io/client-go/pkg/apis/apps/v1beta1/zz_generated.deepcopy.go @@ -37,6 +37,8 @@ func init() { // to allow building arbitrary schemes. func RegisterDeepCopies(scheme *runtime.Scheme) error { return scheme.AddGeneratedDeepCopyFuncs( + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_ControllerRevision, InType: reflect.TypeOf(&ControllerRevision{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_ControllerRevisionList, InType: reflect.TypeOf(&ControllerRevisionList{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_Deployment, InType: reflect.TypeOf(&Deployment{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_DeploymentCondition, InType: reflect.TypeOf(&DeploymentCondition{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_DeploymentList, InType: reflect.TypeOf(&DeploymentList{})}, @@ -46,6 +48,7 @@ func RegisterDeepCopies(scheme *runtime.Scheme) error { conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_DeploymentStrategy, InType: reflect.TypeOf(&DeploymentStrategy{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_RollbackConfig, InType: reflect.TypeOf(&RollbackConfig{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_RollingUpdateDeployment, InType: reflect.TypeOf(&RollingUpdateDeployment{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_RollingUpdateStatefulSetStrategy, InType: reflect.TypeOf(&RollingUpdateStatefulSetStrategy{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_Scale, InType: reflect.TypeOf(&Scale{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_ScaleSpec, InType: reflect.TypeOf(&ScaleSpec{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_ScaleStatus, InType: reflect.TypeOf(&ScaleStatus{})}, @@ -53,9 +56,49 @@ func RegisterDeepCopies(scheme *runtime.Scheme) error { conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_StatefulSetList, InType: reflect.TypeOf(&StatefulSetList{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_StatefulSetSpec, InType: reflect.TypeOf(&StatefulSetSpec{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_StatefulSetStatus, InType: reflect.TypeOf(&StatefulSetStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_StatefulSetUpdateStrategy, InType: reflect.TypeOf(&StatefulSetUpdateStrategy{})}, ) } +// DeepCopy_v1beta1_ControllerRevision is an autogenerated deepcopy function. +func DeepCopy_v1beta1_ControllerRevision(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ControllerRevision) + out := out.(*ControllerRevision) + *out = *in + if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { + return err + } else { + out.ObjectMeta = *newVal.(*v1.ObjectMeta) + } + if newVal, err := c.DeepCopy(&in.Data); err != nil { + return err + } else { + out.Data = *newVal.(*runtime.RawExtension) + } + return nil + } +} + +// DeepCopy_v1beta1_ControllerRevisionList is an autogenerated deepcopy function. +func DeepCopy_v1beta1_ControllerRevisionList(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ControllerRevisionList) + out := out.(*ControllerRevisionList) + *out = *in + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]ControllerRevision, len(*in)) + for i := range *in { + if err := DeepCopy_v1beta1_ControllerRevision(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} + // DeepCopy_v1beta1_Deployment is an autogenerated deepcopy function. func DeepCopy_v1beta1_Deployment(in interface{}, out interface{}, c *conversion.Cloner) error { { @@ -184,6 +227,11 @@ func DeepCopy_v1beta1_DeploymentStatus(in interface{}, out interface{}, c *conve } } } + if in.CollisionCount != nil { + in, out := &in.CollisionCount, &out.CollisionCount + *out = new(int64) + **out = **in + } return nil } } @@ -235,6 +283,21 @@ func DeepCopy_v1beta1_RollingUpdateDeployment(in interface{}, out interface{}, c } } +// DeepCopy_v1beta1_RollingUpdateStatefulSetStrategy is an autogenerated deepcopy function. +func DeepCopy_v1beta1_RollingUpdateStatefulSetStrategy(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*RollingUpdateStatefulSetStrategy) + out := out.(*RollingUpdateStatefulSetStrategy) + *out = *in + if in.Partition != nil { + in, out := &in.Partition, &out.Partition + *out = new(int32) + **out = **in + } + return nil + } +} + // DeepCopy_v1beta1_Scale is an autogenerated deepcopy function. func DeepCopy_v1beta1_Scale(in interface{}, out interface{}, c *conversion.Cloner) error { { @@ -351,6 +414,14 @@ func DeepCopy_v1beta1_StatefulSetSpec(in interface{}, out interface{}, c *conver } } } + if err := DeepCopy_v1beta1_StatefulSetUpdateStrategy(&in.UpdateStrategy, &out.UpdateStrategy, c); err != nil { + return err + } + if in.RevisionHistoryLimit != nil { + in, out := &in.RevisionHistoryLimit, &out.RevisionHistoryLimit + *out = new(int32) + **out = **in + } return nil } } @@ -369,3 +440,20 @@ func DeepCopy_v1beta1_StatefulSetStatus(in interface{}, out interface{}, c *conv return nil } } + +// DeepCopy_v1beta1_StatefulSetUpdateStrategy is an autogenerated deepcopy function. +func DeepCopy_v1beta1_StatefulSetUpdateStrategy(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*StatefulSetUpdateStrategy) + out := out.(*StatefulSetUpdateStrategy) + *out = *in + if in.RollingUpdate != nil { + in, out := &in.RollingUpdate, &out.RollingUpdate + *out = new(RollingUpdateStatefulSetStrategy) + if err := DeepCopy_v1beta1_RollingUpdateStatefulSetStrategy(*in, *out, c); err != nil { + return err + } + } + return nil + } +} diff --git a/vendor/k8s.io/client-go/pkg/apis/apps/zz_generated.deepcopy.go b/vendor/k8s.io/client-go/pkg/apis/apps/zz_generated.deepcopy.go index 4ad88dc2..ff37ef9b 100644 --- a/vendor/k8s.io/client-go/pkg/apis/apps/zz_generated.deepcopy.go +++ b/vendor/k8s.io/client-go/pkg/apis/apps/zz_generated.deepcopy.go @@ -36,13 +36,69 @@ func init() { // to allow building arbitrary schemes. func RegisterDeepCopies(scheme *runtime.Scheme) error { return scheme.AddGeneratedDeepCopyFuncs( + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_apps_ControllerRevision, InType: reflect.TypeOf(&ControllerRevision{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_apps_ControllerRevisionList, InType: reflect.TypeOf(&ControllerRevisionList{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_apps_RollingUpdateStatefulSetStrategy, InType: reflect.TypeOf(&RollingUpdateStatefulSetStrategy{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_apps_StatefulSet, InType: reflect.TypeOf(&StatefulSet{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_apps_StatefulSetList, InType: reflect.TypeOf(&StatefulSetList{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_apps_StatefulSetSpec, InType: reflect.TypeOf(&StatefulSetSpec{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_apps_StatefulSetStatus, InType: reflect.TypeOf(&StatefulSetStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_apps_StatefulSetUpdateStrategy, InType: reflect.TypeOf(&StatefulSetUpdateStrategy{})}, ) } +// DeepCopy_apps_ControllerRevision is an autogenerated deepcopy function. +func DeepCopy_apps_ControllerRevision(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ControllerRevision) + out := out.(*ControllerRevision) + *out = *in + if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { + return err + } else { + out.ObjectMeta = *newVal.(*v1.ObjectMeta) + } + // in.Data is kind 'Interface' + if in.Data != nil { + if newVal, err := c.DeepCopy(&in.Data); err != nil { + return err + } else { + out.Data = *newVal.(*runtime.Object) + } + } + return nil + } +} + +// DeepCopy_apps_ControllerRevisionList is an autogenerated deepcopy function. +func DeepCopy_apps_ControllerRevisionList(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ControllerRevisionList) + out := out.(*ControllerRevisionList) + *out = *in + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]ControllerRevision, len(*in)) + for i := range *in { + if err := DeepCopy_apps_ControllerRevision(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} + +// DeepCopy_apps_RollingUpdateStatefulSetStrategy is an autogenerated deepcopy function. +func DeepCopy_apps_RollingUpdateStatefulSetStrategy(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*RollingUpdateStatefulSetStrategy) + out := out.(*RollingUpdateStatefulSetStrategy) + *out = *in + return nil + } +} + // DeepCopy_apps_StatefulSet is an autogenerated deepcopy function. func DeepCopy_apps_StatefulSet(in interface{}, out interface{}, c *conversion.Cloner) error { { @@ -109,6 +165,14 @@ func DeepCopy_apps_StatefulSetSpec(in interface{}, out interface{}, c *conversio } } } + if err := DeepCopy_apps_StatefulSetUpdateStrategy(&in.UpdateStrategy, &out.UpdateStrategy, c); err != nil { + return err + } + if in.RevisionHistoryLimit != nil { + in, out := &in.RevisionHistoryLimit, &out.RevisionHistoryLimit + *out = new(int32) + **out = **in + } return nil } } @@ -127,3 +191,18 @@ func DeepCopy_apps_StatefulSetStatus(in interface{}, out interface{}, c *convers return nil } } + +// DeepCopy_apps_StatefulSetUpdateStrategy is an autogenerated deepcopy function. +func DeepCopy_apps_StatefulSetUpdateStrategy(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*StatefulSetUpdateStrategy) + out := out.(*StatefulSetUpdateStrategy) + *out = *in + if in.RollingUpdate != nil { + in, out := &in.RollingUpdate, &out.RollingUpdate + *out = new(RollingUpdateStatefulSetStrategy) + **out = **in + } + return nil + } +} diff --git a/vendor/k8s.io/client-go/pkg/apis/authentication/v1/generated.pb.go b/vendor/k8s.io/client-go/pkg/apis/authentication/v1/generated.pb.go index 5c7149b4..e2648113 100644 --- a/vendor/k8s.io/client-go/pkg/apis/authentication/v1/generated.pb.go +++ b/vendor/k8s.io/client-go/pkg/apis/authentication/v1/generated.pb.go @@ -37,9 +37,10 @@ import proto "github.com/gogo/protobuf/proto" import fmt "fmt" import math "math" +import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + import strings "strings" import reflect "reflect" -import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" import io "io" @@ -255,10 +256,15 @@ func (m *UserInfo) MarshalTo(dAtA []byte) (int, error) { } } if len(m.Extra) > 0 { + keysForExtra := make([]string, 0, len(m.Extra)) for k := range m.Extra { + keysForExtra = append(keysForExtra, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForExtra) + for _, k := range keysForExtra { dAtA[i] = 0x22 i++ - v := m.Extra[k] + v := m.Extra[string(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -1251,46 +1257,45 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 655 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x53, 0xcd, 0x6e, 0xd3, 0x4c, - 0x14, 0xb5, 0xf3, 0x53, 0x25, 0x93, 0xaf, 0x1f, 0x65, 0x24, 0xa4, 0x28, 0x12, 0x4e, 0x14, 0x58, - 0x74, 0x51, 0xc6, 0xa4, 0xa0, 0x52, 0x15, 0x10, 0xaa, 0x45, 0x85, 0xba, 0x00, 0xa4, 0x81, 0x22, - 0xc4, 0x06, 0x26, 0xce, 0xad, 0x63, 0x52, 0xff, 0x68, 0x3c, 0x36, 0xed, 0xae, 0x8f, 0xc0, 0x92, - 0x25, 0xaf, 0xc1, 0x1b, 0x74, 0x47, 0x77, 0xb0, 0x40, 0x15, 0x0d, 0x2f, 0x82, 0x66, 0x3c, 0xd4, - 0x2e, 0x69, 0x85, 0xda, 0xdd, 0xcc, 0x99, 0x7b, 0xce, 0xbd, 0xe7, 0xde, 0xb9, 0xe8, 0xc1, 0x64, - 0x35, 0x21, 0x7e, 0x64, 0x4f, 0xd2, 0x21, 0xf0, 0x10, 0x04, 0x24, 0x76, 0x3c, 0xf1, 0x6c, 0x16, - 0xfb, 0x89, 0xcd, 0x52, 0x31, 0x86, 0x50, 0xf8, 0x2e, 0x13, 0x7e, 0x14, 0xda, 0xd9, 0xc0, 0xf6, - 0x20, 0x04, 0xce, 0x04, 0x8c, 0x48, 0xcc, 0x23, 0x11, 0xe1, 0xa5, 0x9c, 0x4d, 0x0a, 0x36, 0x89, - 0x27, 0x1e, 0x91, 0x6c, 0x72, 0x9a, 0x4d, 0xb2, 0x41, 0xe7, 0x96, 0xe7, 0x8b, 0x71, 0x3a, 0x24, - 0x6e, 0x14, 0xd8, 0x5e, 0xe4, 0x45, 0xb6, 0x12, 0x19, 0xa6, 0xdb, 0xea, 0xa6, 0x2e, 0xea, 0x94, - 0x8b, 0x77, 0xee, 0xea, 0xd2, 0x58, 0xec, 0x07, 0xcc, 0x1d, 0xfb, 0x21, 0xf0, 0xbd, 0xa2, 0xb8, - 0x00, 0x04, 0x3b, 0xa3, 0xa4, 0x8e, 0x7d, 0x1e, 0x8b, 0xa7, 0xa1, 0xf0, 0x03, 0x98, 0x21, 0xac, - 0xfc, 0x8b, 0x90, 0xb8, 0x63, 0x08, 0xd8, 0x0c, 0xef, 0xce, 0x79, 0xbc, 0x54, 0xf8, 0x3b, 0xb6, - 0x1f, 0x8a, 0x44, 0xf0, 0x19, 0x52, 0xc9, 0x53, 0x02, 0x3c, 0x03, 0x5e, 0x18, 0x82, 0x5d, 0x16, - 0xc4, 0x3b, 0x70, 0x86, 0xa7, 0xfe, 0x3d, 0x84, 0x36, 0x76, 0x05, 0x67, 0xaf, 0xd8, 0x4e, 0x0a, - 0xb8, 0x8b, 0xea, 0xbe, 0x80, 0x20, 0x69, 0x9b, 0xbd, 0xea, 0x62, 0xd3, 0x69, 0x4e, 0x8f, 0xba, - 0xf5, 0x4d, 0x09, 0xd0, 0x1c, 0x5f, 0x6b, 0x7c, 0xfa, 0xdc, 0x35, 0xf6, 0x7f, 0xf4, 0x8c, 0xfe, - 0x97, 0x0a, 0x6a, 0xbd, 0x8c, 0x26, 0x10, 0x52, 0xc8, 0x7c, 0xf8, 0x80, 0xdf, 0xa1, 0x86, 0xec, - 0xdb, 0x88, 0x09, 0xd6, 0x36, 0x7b, 0xe6, 0x62, 0x6b, 0xf9, 0x36, 0xd1, 0x23, 0x2c, 0xdb, 0x28, - 0x86, 0x28, 0xa3, 0x49, 0x36, 0x20, 0xcf, 0x87, 0xef, 0xc1, 0x15, 0x4f, 0x41, 0x30, 0x07, 0x1f, - 0x1c, 0x75, 0x8d, 0xe9, 0x51, 0x17, 0x15, 0x18, 0x3d, 0x51, 0xc5, 0x6f, 0x51, 0x2d, 0x89, 0xc1, - 0x6d, 0x57, 0x94, 0xfa, 0x43, 0x72, 0x91, 0x0f, 0x42, 0x4a, 0xa5, 0xbe, 0x88, 0xc1, 0x75, 0xfe, - 0xd3, 0xa9, 0x6a, 0xf2, 0x46, 0x95, 0x30, 0xf6, 0xd0, 0x5c, 0x22, 0x98, 0x48, 0x93, 0x76, 0x55, - 0xa5, 0x78, 0x74, 0xf9, 0x14, 0x4a, 0xc6, 0xf9, 0x5f, 0x27, 0x99, 0xcb, 0xef, 0x54, 0xcb, 0xf7, - 0x57, 0xd0, 0x95, 0xbf, 0xea, 0xc1, 0x37, 0x50, 0x5d, 0x48, 0x48, 0xf5, 0xae, 0xe9, 0xcc, 0x6b, - 0x66, 0x3d, 0x8f, 0xcb, 0xdf, 0xfa, 0x5f, 0x4d, 0x74, 0x75, 0x26, 0x0b, 0xbe, 0x8f, 0xe6, 0x4b, - 0xc5, 0xc0, 0x48, 0x49, 0x34, 0x9c, 0x6b, 0x5a, 0x62, 0x7e, 0xbd, 0xfc, 0x48, 0x4f, 0xc7, 0xe2, - 0xd7, 0xa8, 0x96, 0x26, 0xc0, 0x75, 0x53, 0x57, 0x2e, 0xe6, 0x78, 0x2b, 0x01, 0xbe, 0x19, 0x6e, - 0x47, 0x45, 0x37, 0x25, 0x42, 0x95, 0xa2, 0x74, 0x04, 0x9c, 0x47, 0x5c, 0x35, 0xb3, 0xe4, 0x68, - 0x43, 0x82, 0x34, 0x7f, 0xeb, 0x7f, 0xab, 0xa0, 0xc6, 0x1f, 0x15, 0xbc, 0x84, 0x1a, 0x92, 0x19, - 0xb2, 0x00, 0x74, 0x1b, 0x16, 0x34, 0x49, 0xc5, 0x48, 0x9c, 0x9e, 0x44, 0xe0, 0xeb, 0xa8, 0x9a, - 0xfa, 0x23, 0x55, 0x78, 0xd3, 0x69, 0xe9, 0xc0, 0xea, 0xd6, 0xe6, 0x63, 0x2a, 0x71, 0xdc, 0x47, - 0x73, 0x1e, 0x8f, 0xd2, 0x58, 0x0e, 0x53, 0xfe, 0x65, 0x24, 0xe7, 0xf0, 0x44, 0x21, 0x54, 0xbf, - 0xe0, 0x6d, 0x54, 0x07, 0xf9, 0xf9, 0xdb, 0xb5, 0x5e, 0x75, 0xb1, 0xb5, 0xbc, 0x7e, 0x39, 0xf7, - 0x44, 0x2d, 0xd0, 0x46, 0x28, 0xf8, 0x5e, 0xc9, 0xa5, 0xc4, 0x68, 0x2e, 0xdf, 0xe1, 0x7a, 0xc9, - 0x54, 0x0c, 0x5e, 0x40, 0xd5, 0x09, 0xec, 0xe5, 0x0e, 0xa9, 0x3c, 0xe2, 0x67, 0xa8, 0x9e, 0xc9, - 0xfd, 0xd3, 0x53, 0x58, 0xbd, 0x58, 0x1d, 0xc5, 0xfe, 0xd2, 0x5c, 0x66, 0xad, 0xb2, 0x6a, 0x3a, - 0x37, 0x0f, 0x8e, 0x2d, 0xe3, 0xf0, 0xd8, 0x32, 0xbe, 0x1f, 0x5b, 0xc6, 0xfe, 0xd4, 0x32, 0x0f, - 0xa6, 0x96, 0x79, 0x38, 0xb5, 0xcc, 0x9f, 0x53, 0xcb, 0xfc, 0xf8, 0xcb, 0x32, 0xde, 0x54, 0xb2, - 0xc1, 0xef, 0x00, 0x00, 0x00, 0xff, 0xff, 0xbb, 0x6b, 0x11, 0x20, 0xa4, 0x05, 0x00, 0x00, + // 640 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x53, 0xcd, 0x6e, 0xd3, 0x40, + 0x10, 0xb6, 0xf3, 0x53, 0x25, 0x1b, 0x0a, 0x65, 0x25, 0xa4, 0x28, 0x12, 0x4e, 0x14, 0x2e, 0x39, + 0x94, 0x35, 0x29, 0xa8, 0x54, 0x05, 0x84, 0x6a, 0x51, 0xa1, 0x1e, 0x00, 0x69, 0xa1, 0x08, 0x71, + 0x81, 0x8d, 0x33, 0x75, 0x96, 0xd4, 0x3f, 0x5a, 0xaf, 0x03, 0xbd, 0xf5, 0x11, 0x38, 0x72, 0xe4, + 0x35, 0x78, 0x83, 0xde, 0xe8, 0x8d, 0x1e, 0x50, 0x45, 0xcd, 0x8b, 0xa0, 0x5d, 0x2f, 0x4d, 0xda, + 0x52, 0xa1, 0xf6, 0xe6, 0xfd, 0x66, 0xbe, 0x6f, 0xbe, 0x99, 0xf1, 0xa0, 0x87, 0xe3, 0x95, 0x94, + 0xf0, 0xd8, 0x1d, 0x67, 0x03, 0x10, 0x11, 0x48, 0x48, 0xdd, 0x64, 0x1c, 0xb8, 0x2c, 0xe1, 0xa9, + 0xcb, 0x32, 0x39, 0x82, 0x48, 0x72, 0x9f, 0x49, 0x1e, 0x47, 0xee, 0xa4, 0xef, 0x06, 0x10, 0x81, + 0x60, 0x12, 0x86, 0x24, 0x11, 0xb1, 0x8c, 0xf1, 0x62, 0xc1, 0x26, 0x53, 0x36, 0x49, 0xc6, 0x01, + 0x51, 0x6c, 0x72, 0x92, 0x4d, 0x26, 0xfd, 0xd6, 0xed, 0x80, 0xcb, 0x51, 0x36, 0x20, 0x7e, 0x1c, + 0xba, 0x41, 0x1c, 0xc4, 0xae, 0x16, 0x19, 0x64, 0x5b, 0xfa, 0xa5, 0x1f, 0xfa, 0xab, 0x10, 0x6f, + 0xdd, 0x33, 0xd6, 0x58, 0xc2, 0x43, 0xe6, 0x8f, 0x78, 0x04, 0x62, 0x67, 0x6a, 0x2e, 0x04, 0xc9, + 0xfe, 0x61, 0xa9, 0xe5, 0x9e, 0xc7, 0x12, 0x59, 0x24, 0x79, 0x08, 0x67, 0x08, 0xcb, 0xff, 0x23, + 0xa4, 0xfe, 0x08, 0x42, 0x76, 0x86, 0x77, 0xf7, 0x3c, 0x5e, 0x26, 0xf9, 0xb6, 0xcb, 0x23, 0x99, + 0x4a, 0x71, 0x9a, 0xd4, 0xbd, 0x8f, 0xd0, 0xfa, 0x27, 0x29, 0xd8, 0x6b, 0xb6, 0x9d, 0x01, 0x6e, + 0xa3, 0x2a, 0x97, 0x10, 0xa6, 0x4d, 0xbb, 0x53, 0xee, 0xd5, 0xbd, 0x7a, 0x7e, 0xd8, 0xae, 0x6e, + 0x28, 0x80, 0x16, 0xf8, 0x6a, 0xed, 0xcb, 0xd7, 0xb6, 0xb5, 0xfb, 0xb3, 0x63, 0x75, 0xbf, 0x95, + 0x50, 0xe3, 0x55, 0x3c, 0x86, 0x88, 0xc2, 0x84, 0xc3, 0x47, 0xfc, 0x1e, 0xd5, 0xd4, 0x04, 0x86, + 0x4c, 0xb2, 0xa6, 0xdd, 0xb1, 0x7b, 0x8d, 0xa5, 0x3b, 0xc4, 0x2c, 0x63, 0xd6, 0xd0, 0x74, 0x1d, + 0x2a, 0x9b, 0x4c, 0xfa, 0xe4, 0xc5, 0xe0, 0x03, 0xf8, 0xf2, 0x19, 0x48, 0xe6, 0xe1, 0xbd, 0xc3, + 0xb6, 0x95, 0x1f, 0xb6, 0xd1, 0x14, 0xa3, 0xc7, 0xaa, 0xf8, 0x1d, 0xaa, 0xa4, 0x09, 0xf8, 0xcd, + 0x92, 0x56, 0x7f, 0x44, 0x2e, 0xb2, 0x6a, 0x32, 0x63, 0xf5, 0x65, 0x02, 0xbe, 0x77, 0xc5, 0x94, + 0xaa, 0xa8, 0x17, 0xd5, 0xc2, 0x38, 0x40, 0x73, 0xa9, 0x64, 0x32, 0x4b, 0x9b, 0x65, 0x5d, 0xe2, + 0xf1, 0xe5, 0x4b, 0x68, 0x19, 0xef, 0xaa, 0x29, 0x32, 0x57, 0xbc, 0xa9, 0x91, 0xef, 0x2e, 0xa3, + 0x6b, 0xa7, 0xfc, 0xe0, 0x5b, 0xa8, 0x2a, 0x15, 0xa4, 0x67, 0x57, 0xf7, 0xe6, 0x0d, 0xb3, 0x5a, + 0xe4, 0x15, 0xb1, 0xee, 0x77, 0x1b, 0x5d, 0x3f, 0x53, 0x05, 0x3f, 0x40, 0xf3, 0x33, 0x66, 0x60, + 0xa8, 0x25, 0x6a, 0xde, 0x0d, 0x23, 0x31, 0xbf, 0x36, 0x1b, 0xa4, 0x27, 0x73, 0xf1, 0x1b, 0x54, + 0xc9, 0x52, 0x10, 0x66, 0xa8, 0xcb, 0x17, 0xeb, 0x78, 0x33, 0x05, 0xb1, 0x11, 0x6d, 0xc5, 0xd3, + 0x69, 0x2a, 0x84, 0x6a, 0x45, 0xd5, 0x11, 0x08, 0x11, 0x0b, 0x3d, 0xcc, 0x99, 0x8e, 0xd6, 0x15, + 0x48, 0x8b, 0x58, 0xf7, 0x47, 0x09, 0xd5, 0xfe, 0xaa, 0xe0, 0x45, 0x54, 0x53, 0xcc, 0x88, 0x85, + 0x60, 0xc6, 0xb0, 0x60, 0x48, 0x3a, 0x47, 0xe1, 0xf4, 0x38, 0x03, 0xdf, 0x44, 0xe5, 0x8c, 0x0f, + 0xb5, 0xf1, 0xba, 0xd7, 0x30, 0x89, 0xe5, 0xcd, 0x8d, 0x27, 0x54, 0xe1, 0xb8, 0x8b, 0xe6, 0x02, + 0x11, 0x67, 0x89, 0x5a, 0xa6, 0xfa, 0x97, 0x91, 0xda, 0xc3, 0x53, 0x8d, 0x50, 0x13, 0xc1, 0x5b, + 0xa8, 0x0a, 0xea, 0xe7, 0x6f, 0x56, 0x3a, 0xe5, 0x5e, 0x63, 0x69, 0xed, 0x72, 0xdd, 0x13, 0x7d, + 0x40, 0xeb, 0x91, 0x14, 0x3b, 0x33, 0x5d, 0x2a, 0x8c, 0x16, 0xf2, 0x2d, 0x61, 0x8e, 0x4c, 0xe7, + 0xe0, 0x05, 0x54, 0x1e, 0xc3, 0x4e, 0xd1, 0x21, 0x55, 0x9f, 0xf8, 0x39, 0xaa, 0x4e, 0xd4, 0xfd, + 0x99, 0x2d, 0xac, 0x5c, 0xcc, 0xc7, 0xf4, 0x7e, 0x69, 0x21, 0xb3, 0x5a, 0x5a, 0xb1, 0xbd, 0xde, + 0xde, 0x91, 0x63, 0xed, 0x1f, 0x39, 0xd6, 0xc1, 0x91, 0x63, 0xed, 0xe6, 0x8e, 0xbd, 0x97, 0x3b, + 0xf6, 0x7e, 0xee, 0xd8, 0x07, 0xb9, 0x63, 0xff, 0xca, 0x1d, 0xfb, 0xf3, 0x6f, 0xc7, 0x7a, 0x5b, + 0x9a, 0xf4, 0xff, 0x04, 0x00, 0x00, 0xff, 0xff, 0x01, 0xcb, 0xf3, 0xc9, 0x72, 0x05, 0x00, 0x00, } diff --git a/vendor/k8s.io/client-go/pkg/apis/authentication/v1/generated.proto b/vendor/k8s.io/client-go/pkg/apis/authentication/v1/generated.proto index ea5203d3..41106584 100644 --- a/vendor/k8s.io/client-go/pkg/apis/authentication/v1/generated.proto +++ b/vendor/k8s.io/client-go/pkg/apis/authentication/v1/generated.proto @@ -19,13 +19,12 @@ limitations under the License. syntax = 'proto2'; -package k8s.io.kubernetes.pkg.apis.authentication.v1; +package k8s.io.client_go.pkg.apis.authentication.v1; import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; // Package-wide variables from generator "generated". option go_package = "v1"; diff --git a/vendor/k8s.io/client-go/pkg/apis/authentication/v1beta1/generated.pb.go b/vendor/k8s.io/client-go/pkg/apis/authentication/v1beta1/generated.pb.go index 6363a7c4..9917cdc6 100644 --- a/vendor/k8s.io/client-go/pkg/apis/authentication/v1beta1/generated.pb.go +++ b/vendor/k8s.io/client-go/pkg/apis/authentication/v1beta1/generated.pb.go @@ -37,9 +37,10 @@ import proto "github.com/gogo/protobuf/proto" import fmt "fmt" import math "math" +import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + import strings "strings" import reflect "reflect" -import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" import io "io" @@ -255,10 +256,15 @@ func (m *UserInfo) MarshalTo(dAtA []byte) (int, error) { } } if len(m.Extra) > 0 { + keysForExtra := make([]string, 0, len(m.Extra)) for k := range m.Extra { + keysForExtra = append(keysForExtra, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForExtra) + for _, k := range keysForExtra { dAtA[i] = 0x22 i++ - v := m.Extra[k] + v := m.Extra[string(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -1251,47 +1257,46 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 660 bytes of a gzipped FileDescriptorProto + // 647 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x53, 0x4f, 0x6f, 0xd3, 0x4e, - 0x10, 0x8d, 0xf3, 0xa7, 0xbf, 0x64, 0xf3, 0x2b, 0x94, 0x95, 0x90, 0xa2, 0x48, 0x38, 0x51, 0xb8, - 0x14, 0x09, 0xd6, 0xa4, 0xa0, 0x52, 0xb5, 0xe2, 0x50, 0xab, 0x05, 0xf5, 0x80, 0x90, 0xb6, 0x94, - 0x03, 0x12, 0x12, 0x1b, 0x67, 0xea, 0x18, 0xc7, 0x7f, 0xb4, 0x5e, 0xa7, 0xed, 0xad, 0x1f, 0x81, - 0x23, 0x47, 0xbe, 0x0b, 0x97, 0x1e, 0x7b, 0xe0, 0xc0, 0x01, 0x55, 0x24, 0x7c, 0x11, 0xb4, 0xeb, - 0xa5, 0x76, 0x09, 0x15, 0xa2, 0xbd, 0x79, 0xdf, 0xcc, 0x7b, 0x33, 0x6f, 0xc6, 0x83, 0x36, 0xfd, - 0xb5, 0x84, 0x78, 0x91, 0xe5, 0xa7, 0x03, 0xe0, 0x21, 0x08, 0x48, 0xac, 0xd8, 0x77, 0x2d, 0x16, - 0x7b, 0x89, 0xc5, 0x52, 0x31, 0x82, 0x50, 0x78, 0x0e, 0x13, 0x5e, 0x14, 0x5a, 0x93, 0xfe, 0x00, - 0x04, 0xeb, 0x5b, 0x2e, 0x84, 0xc0, 0x99, 0x80, 0x21, 0x89, 0x79, 0x24, 0x22, 0xdc, 0xcf, 0x24, - 0x48, 0x2e, 0x41, 0x62, 0xdf, 0x25, 0x52, 0x82, 0x5c, 0x94, 0x20, 0x5a, 0xa2, 0xfd, 0xc0, 0xf5, - 0xc4, 0x28, 0x1d, 0x10, 0x27, 0x0a, 0x2c, 0x37, 0x72, 0x23, 0x4b, 0x29, 0x0d, 0xd2, 0x7d, 0xf5, - 0x52, 0x0f, 0xf5, 0x95, 0x55, 0x68, 0x3f, 0xd6, 0x4d, 0xb2, 0xd8, 0x0b, 0x98, 0x33, 0xf2, 0x42, - 0xe0, 0x47, 0x79, 0x9b, 0x01, 0x08, 0x66, 0x4d, 0xe6, 0xfa, 0x6a, 0x5b, 0x97, 0xb1, 0x78, 0x1a, - 0x0a, 0x2f, 0x80, 0x39, 0xc2, 0xea, 0xdf, 0x08, 0x89, 0x33, 0x82, 0x80, 0xcd, 0xf1, 0x1e, 0x5d, - 0xc6, 0x4b, 0x85, 0x37, 0xb6, 0xbc, 0x50, 0x24, 0x82, 0xcf, 0x91, 0x0a, 0x9e, 0x12, 0xe0, 0x13, - 0xe0, 0xb9, 0x21, 0x38, 0x64, 0x41, 0x3c, 0x86, 0x3f, 0x78, 0xea, 0x3d, 0x41, 0x68, 0xfb, 0x50, - 0x70, 0xf6, 0x9a, 0x8d, 0x53, 0xc0, 0x1d, 0x54, 0xf3, 0x04, 0x04, 0x49, 0xcb, 0xe8, 0x56, 0x96, - 0x1b, 0x76, 0x63, 0x76, 0xd6, 0xa9, 0xed, 0x48, 0x80, 0x66, 0xf8, 0x7a, 0xfd, 0xe3, 0xa7, 0x4e, - 0xe9, 0xf8, 0x5b, 0xb7, 0xd4, 0xfb, 0x5c, 0x46, 0xcd, 0x57, 0x91, 0x0f, 0x21, 0x85, 0x89, 0x07, - 0x07, 0xf8, 0x1d, 0xaa, 0xcb, 0xb9, 0x0d, 0x99, 0x60, 0x2d, 0xa3, 0x6b, 0x2c, 0x37, 0x57, 0x1e, - 0x12, 0xbd, 0xc7, 0xa2, 0x8d, 0x7c, 0x93, 0x32, 0x9b, 0x4c, 0xfa, 0xe4, 0xe5, 0xe0, 0x3d, 0x38, - 0xe2, 0x05, 0x08, 0x66, 0xe3, 0x93, 0xb3, 0x4e, 0x69, 0x76, 0xd6, 0x41, 0x39, 0x46, 0xcf, 0x55, - 0xf1, 0x10, 0x55, 0x93, 0x18, 0x9c, 0x56, 0x59, 0xa9, 0xdb, 0xe4, 0x9f, 0xff, 0x12, 0x52, 0xe8, - 0x77, 0x37, 0x06, 0xc7, 0xfe, 0x5f, 0xd7, 0xab, 0xca, 0x17, 0x55, 0xea, 0x78, 0x8c, 0x16, 0x12, - 0xc1, 0x44, 0x9a, 0xb4, 0x2a, 0xaa, 0xce, 0xd6, 0x35, 0xeb, 0x28, 0x2d, 0xfb, 0x86, 0xae, 0xb4, - 0x90, 0xbd, 0xa9, 0xae, 0xd1, 0x5b, 0x45, 0x37, 0x7f, 0x6b, 0x0a, 0xdf, 0x45, 0x35, 0x21, 0x21, - 0x35, 0xc5, 0x86, 0xbd, 0xa8, 0x99, 0xb5, 0x2c, 0x2f, 0x8b, 0xf5, 0xbe, 0x18, 0xe8, 0xd6, 0x5c, - 0x15, 0xbc, 0x81, 0x16, 0x0b, 0x1d, 0xc1, 0x50, 0x49, 0xd4, 0xed, 0xdb, 0x5a, 0x62, 0x71, 0xb3, - 0x18, 0xa4, 0x17, 0x73, 0xf1, 0x5b, 0x54, 0x4d, 0x13, 0xe0, 0x7a, 0xbc, 0x1b, 0x57, 0xb0, 0xbd, - 0x97, 0x00, 0xdf, 0x09, 0xf7, 0xa3, 0x7c, 0xae, 0x12, 0xa1, 0x4a, 0x56, 0xda, 0x02, 0xce, 0x23, - 0xae, 0xc6, 0x5a, 0xb0, 0xb5, 0x2d, 0x41, 0x9a, 0xc5, 0x7a, 0xd3, 0x32, 0xaa, 0xff, 0x52, 0xc1, - 0xf7, 0x51, 0x5d, 0x32, 0x43, 0x16, 0x80, 0x9e, 0xc5, 0x92, 0x26, 0xa9, 0x1c, 0x89, 0xd3, 0xf3, - 0x0c, 0x7c, 0x07, 0x55, 0x52, 0x6f, 0xa8, 0xba, 0x6f, 0xd8, 0x4d, 0x9d, 0x58, 0xd9, 0xdb, 0xd9, - 0xa2, 0x12, 0xc7, 0x3d, 0xb4, 0xe0, 0xf2, 0x28, 0x8d, 0xe5, 0x5a, 0xe5, 0xaf, 0x8d, 0xe4, 0x32, - 0x9e, 0x2b, 0x84, 0xea, 0x08, 0xf6, 0x51, 0x0d, 0xe4, 0x2d, 0xb4, 0xaa, 0xdd, 0xca, 0x72, 0x73, - 0xe5, 0xd9, 0x35, 0x46, 0x40, 0xd4, 0x51, 0x6d, 0x87, 0x82, 0x1f, 0x15, 0xac, 0x4a, 0x8c, 0x66, - 0x35, 0xda, 0x07, 0xfa, 0xf0, 0x54, 0x0e, 0x5e, 0x42, 0x15, 0x1f, 0x8e, 0x32, 0x9b, 0x54, 0x7e, - 0xe2, 0x5d, 0x54, 0x9b, 0xc8, 0x9b, 0xd4, 0xfb, 0x78, 0x7a, 0x85, 0x66, 0xf2, 0xc3, 0xa6, 0x99, - 0xd6, 0x7a, 0x79, 0xcd, 0xb0, 0xef, 0x9d, 0x4c, 0xcd, 0xd2, 0xe9, 0xd4, 0x2c, 0x7d, 0x9d, 0x9a, - 0xa5, 0xe3, 0x99, 0x69, 0x9c, 0xcc, 0x4c, 0xe3, 0x74, 0x66, 0x1a, 0xdf, 0x67, 0xa6, 0xf1, 0xe1, - 0x87, 0x59, 0x7a, 0xf3, 0x9f, 0x16, 0xf8, 0x19, 0x00, 0x00, 0xff, 0xff, 0xc6, 0x0a, 0xc4, 0x2e, - 0xcc, 0x05, 0x00, 0x00, + 0x10, 0xb5, 0xf3, 0xa7, 0xbf, 0x64, 0xf3, 0x2b, 0x94, 0x95, 0x90, 0xa2, 0x48, 0x38, 0x51, 0xb8, + 0xf4, 0x40, 0xd7, 0xa4, 0xa0, 0x52, 0xb5, 0xe2, 0x50, 0xab, 0x05, 0xf5, 0x80, 0x90, 0xb6, 0x94, + 0x03, 0x12, 0x12, 0x1b, 0x67, 0xea, 0x18, 0xd7, 0x7f, 0xb4, 0x5e, 0xa7, 0xf4, 0xd6, 0x8f, 0xc0, + 0x91, 0x23, 0xdf, 0x85, 0x4b, 0x8f, 0x3d, 0x70, 0xe8, 0x01, 0x45, 0xc4, 0x7c, 0x11, 0xb4, 0xeb, + 0xa5, 0x49, 0x1b, 0x55, 0x88, 0xf6, 0xe6, 0x7d, 0x33, 0xef, 0xcd, 0x9b, 0x19, 0x0f, 0xda, 0x0a, + 0xd6, 0x53, 0xe2, 0xc7, 0x76, 0x90, 0xf5, 0x81, 0x47, 0x20, 0x20, 0xb5, 0x93, 0xc0, 0xb3, 0x59, + 0xe2, 0xa7, 0x36, 0xcb, 0xc4, 0x10, 0x22, 0xe1, 0xbb, 0x4c, 0xf8, 0x71, 0x64, 0x8f, 0x7a, 0x7d, + 0x10, 0xac, 0x67, 0x7b, 0x10, 0x01, 0x67, 0x02, 0x06, 0x24, 0xe1, 0xb1, 0x88, 0x71, 0xaf, 0x90, + 0x20, 0x53, 0x09, 0x92, 0x04, 0x1e, 0x91, 0x12, 0xe4, 0xb2, 0x04, 0xd1, 0x12, 0xad, 0x15, 0xcf, + 0x17, 0xc3, 0xac, 0x4f, 0xdc, 0x38, 0xb4, 0xbd, 0xd8, 0x8b, 0x6d, 0xa5, 0xd4, 0xcf, 0x0e, 0xd4, + 0x4b, 0x3d, 0xd4, 0x57, 0x51, 0xa1, 0xf5, 0x54, 0x9b, 0x64, 0x89, 0x1f, 0x32, 0x77, 0xe8, 0x47, + 0xc0, 0x8f, 0xa7, 0x36, 0x43, 0x10, 0xcc, 0x1e, 0xcd, 0xf9, 0x6a, 0xd9, 0xd7, 0xb1, 0x78, 0x16, + 0x09, 0x3f, 0x84, 0x39, 0xc2, 0xda, 0xdf, 0x08, 0xa9, 0x3b, 0x84, 0x90, 0xcd, 0xf1, 0x9e, 0x5c, + 0xc7, 0xcb, 0x84, 0x7f, 0x68, 0xfb, 0x91, 0x48, 0x05, 0xbf, 0x4a, 0xea, 0x3e, 0x43, 0x68, 0xe7, + 0x93, 0xe0, 0xec, 0x2d, 0x3b, 0xcc, 0x00, 0xb7, 0x51, 0xd5, 0x17, 0x10, 0xa6, 0x4d, 0xb3, 0x53, + 0x5e, 0xae, 0x3b, 0xf5, 0x7c, 0xdc, 0xae, 0xee, 0x4a, 0x80, 0x16, 0xf8, 0x46, 0xed, 0xcb, 0xd7, + 0xb6, 0x71, 0xf2, 0xa3, 0x63, 0x74, 0xbf, 0x95, 0x50, 0xe3, 0x4d, 0x1c, 0x40, 0x44, 0x61, 0xe4, + 0xc3, 0x11, 0xfe, 0x80, 0x6a, 0x72, 0x02, 0x03, 0x26, 0x58, 0xd3, 0xec, 0x98, 0xcb, 0x8d, 0xd5, + 0xc7, 0x44, 0x6f, 0x64, 0xd6, 0xd0, 0x74, 0x27, 0x32, 0x9b, 0x8c, 0x7a, 0xe4, 0x75, 0xff, 0x23, + 0xb8, 0xe2, 0x15, 0x08, 0xe6, 0xe0, 0xd3, 0x71, 0xdb, 0xc8, 0xc7, 0x6d, 0x34, 0xc5, 0xe8, 0x85, + 0x2a, 0x1e, 0xa0, 0x4a, 0x9a, 0x80, 0xdb, 0x2c, 0x29, 0x75, 0x87, 0xfc, 0xf3, 0xbe, 0xc9, 0x8c, + 0xdf, 0xbd, 0x04, 0x5c, 0xe7, 0x7f, 0x5d, 0xaf, 0x22, 0x5f, 0x54, 0xa9, 0xe3, 0x43, 0xb4, 0x90, + 0x0a, 0x26, 0xb2, 0xb4, 0x59, 0x56, 0x75, 0xb6, 0x6f, 0x59, 0x47, 0x69, 0x39, 0x77, 0x74, 0xa5, + 0x85, 0xe2, 0x4d, 0x75, 0x8d, 0xee, 0x1a, 0xba, 0x7b, 0xc5, 0x14, 0x7e, 0x88, 0xaa, 0x42, 0x42, + 0x6a, 0x8a, 0x75, 0x67, 0x51, 0x33, 0xab, 0x45, 0x5e, 0x11, 0xeb, 0x7e, 0x37, 0xd1, 0xbd, 0xb9, + 0x2a, 0x78, 0x13, 0x2d, 0xce, 0x38, 0x82, 0x81, 0x92, 0xa8, 0x39, 0xf7, 0xb5, 0xc4, 0xe2, 0xd6, + 0x6c, 0x90, 0x5e, 0xce, 0xc5, 0xef, 0x51, 0x25, 0x4b, 0x81, 0xeb, 0xf1, 0x6e, 0xde, 0xa0, 0xed, + 0xfd, 0x14, 0xf8, 0x6e, 0x74, 0x10, 0x4f, 0xe7, 0x2a, 0x11, 0xaa, 0x64, 0x65, 0x5b, 0xc0, 0x79, + 0xcc, 0xd5, 0x58, 0x67, 0xda, 0xda, 0x91, 0x20, 0x2d, 0x62, 0xdd, 0x49, 0x09, 0xd5, 0xfe, 0xa8, + 0xe0, 0x47, 0xa8, 0x26, 0x99, 0x11, 0x0b, 0x41, 0xcf, 0x62, 0x49, 0x93, 0x54, 0x8e, 0xc4, 0xe9, + 0x45, 0x06, 0x7e, 0x80, 0xca, 0x99, 0x3f, 0x50, 0xee, 0xeb, 0x4e, 0x43, 0x27, 0x96, 0xf7, 0x77, + 0xb7, 0xa9, 0xc4, 0x71, 0x17, 0x2d, 0x78, 0x3c, 0xce, 0x12, 0xb9, 0x56, 0xf9, 0x6b, 0x23, 0xb9, + 0x8c, 0x97, 0x0a, 0xa1, 0x3a, 0x82, 0x03, 0x54, 0x05, 0x79, 0x0b, 0xcd, 0x4a, 0xa7, 0xbc, 0xdc, + 0x58, 0x7d, 0x71, 0x8b, 0x11, 0x10, 0x75, 0x54, 0x3b, 0x91, 0xe0, 0xc7, 0x33, 0xad, 0x4a, 0x8c, + 0x16, 0x35, 0x5a, 0x47, 0xfa, 0xf0, 0x54, 0x0e, 0x5e, 0x42, 0xe5, 0x00, 0x8e, 0x8b, 0x36, 0xa9, + 0xfc, 0xc4, 0x7b, 0xa8, 0x3a, 0x92, 0x37, 0xa9, 0xf7, 0xf1, 0xfc, 0x06, 0x66, 0xa6, 0x87, 0x4d, + 0x0b, 0xad, 0x8d, 0xd2, 0xba, 0xe9, 0xac, 0x9c, 0x4e, 0x2c, 0xe3, 0x6c, 0x62, 0x19, 0xe7, 0x13, + 0xcb, 0x38, 0xc9, 0x2d, 0xf3, 0x34, 0xb7, 0xcc, 0xb3, 0xdc, 0x32, 0xcf, 0x73, 0xcb, 0xfc, 0x99, + 0x5b, 0xe6, 0xe7, 0x5f, 0x96, 0xf1, 0xee, 0x3f, 0x2d, 0xf2, 0x3b, 0x00, 0x00, 0xff, 0xff, 0x35, + 0x3c, 0x74, 0xb0, 0x9a, 0x05, 0x00, 0x00, } diff --git a/vendor/k8s.io/client-go/pkg/apis/authentication/v1beta1/generated.proto b/vendor/k8s.io/client-go/pkg/apis/authentication/v1beta1/generated.proto index e0d3f0dd..316a62e8 100644 --- a/vendor/k8s.io/client-go/pkg/apis/authentication/v1beta1/generated.proto +++ b/vendor/k8s.io/client-go/pkg/apis/authentication/v1beta1/generated.proto @@ -19,13 +19,12 @@ limitations under the License. syntax = 'proto2'; -package k8s.io.kubernetes.pkg.apis.authentication.v1beta1; +package k8s.io.client_go.pkg.apis.authentication.v1beta1; import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; // Package-wide variables from generator "generated". option go_package = "v1beta1"; diff --git a/vendor/k8s.io/client-go/pkg/apis/authorization/v1/generated.pb.go b/vendor/k8s.io/client-go/pkg/apis/authorization/v1/generated.pb.go index 937d6b8e..0204e88d 100644 --- a/vendor/k8s.io/client-go/pkg/apis/authorization/v1/generated.pb.go +++ b/vendor/k8s.io/client-go/pkg/apis/authorization/v1/generated.pb.go @@ -41,9 +41,10 @@ import proto "github.com/gogo/protobuf/proto" import fmt "fmt" import math "math" +import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + import strings "strings" import reflect "reflect" -import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" import io "io" @@ -435,10 +436,15 @@ func (m *SubjectAccessReviewSpec) MarshalTo(dAtA []byte) (int, error) { } } if len(m.Extra) > 0 { + keysForExtra := make([]string, 0, len(m.Extra)) for k := range m.Extra { + keysForExtra = append(keysForExtra, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForExtra) + for _, k := range keysForExtra { dAtA[i] = 0x2a i++ - v := m.Extra[k] + v := m.Extra[string(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -2298,62 +2304,61 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 898 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x56, 0x4f, 0x6f, 0x1b, 0x45, - 0x14, 0xf7, 0xfa, 0x5f, 0xec, 0x09, 0x90, 0x32, 0x55, 0xc9, 0x36, 0x48, 0xb6, 0x65, 0x10, 0x0a, - 0x02, 0x76, 0x49, 0xf9, 0xd3, 0xaa, 0x1c, 0x50, 0x56, 0x84, 0x3f, 0x12, 0x6d, 0xd1, 0x44, 0xe4, - 0x00, 0x17, 0xc6, 0x9b, 0x17, 0x7b, 0x6b, 0xef, 0xce, 0x32, 0x33, 0xbb, 0x6d, 0x38, 0xf5, 0xc6, - 0x15, 0x89, 0x0b, 0x47, 0xbe, 0x02, 0x1f, 0x00, 0xce, 0xb9, 0xd1, 0x03, 0x12, 0x1c, 0x90, 0x45, - 0x96, 0x0b, 0x1f, 0x03, 0xcd, 0xec, 0xc4, 0x6b, 0xe3, 0x0d, 0x95, 0xa1, 0x12, 0x1c, 0x72, 0xdb, - 0x79, 0xef, 0xf7, 0x7b, 0xef, 0xf7, 0x66, 0xde, 0xec, 0x1b, 0xf4, 0xd6, 0xf8, 0x86, 0x70, 0x02, - 0xe6, 0x8e, 0x93, 0x01, 0xf0, 0x08, 0x24, 0x08, 0x37, 0x1e, 0x0f, 0x5d, 0x1a, 0x07, 0xc2, 0xa5, - 0x89, 0x1c, 0x31, 0x1e, 0x7c, 0x41, 0x65, 0xc0, 0x22, 0x37, 0xdd, 0x71, 0x87, 0x10, 0x01, 0xa7, - 0x12, 0x0e, 0x9d, 0x98, 0x33, 0xc9, 0xf0, 0x4b, 0x39, 0xd9, 0x29, 0xc8, 0x4e, 0x3c, 0x1e, 0x3a, - 0x8a, 0xec, 0x2c, 0x90, 0x9d, 0x74, 0x67, 0xeb, 0x95, 0x61, 0x20, 0x47, 0xc9, 0xc0, 0xf1, 0x59, - 0xe8, 0x0e, 0xd9, 0x90, 0xb9, 0x3a, 0xc6, 0x20, 0x39, 0xd2, 0x2b, 0xbd, 0xd0, 0x5f, 0x79, 0xec, - 0xad, 0xd7, 0x8d, 0x30, 0x1a, 0x07, 0x21, 0xf5, 0x47, 0x41, 0x04, 0xfc, 0xb8, 0x90, 0x16, 0x82, - 0xa4, 0x25, 0x8a, 0xb6, 0xdc, 0xf3, 0x58, 0x3c, 0x89, 0x64, 0x10, 0xc2, 0x12, 0xe1, 0xcd, 0x47, - 0x11, 0x84, 0x3f, 0x82, 0x90, 0x2e, 0xf1, 0x5e, 0x3b, 0x8f, 0x97, 0xc8, 0x60, 0xe2, 0x06, 0x91, - 0x14, 0x92, 0x2f, 0x91, 0xe6, 0x6a, 0x12, 0xc0, 0x53, 0xe0, 0x45, 0x41, 0x70, 0x9f, 0x86, 0xf1, - 0x04, 0x4a, 0x6a, 0xea, 0x5f, 0x47, 0x68, 0xef, 0xbe, 0xe4, 0xf4, 0x80, 0x4e, 0x12, 0xc0, 0x5d, - 0xd4, 0x08, 0x24, 0x84, 0xc2, 0xb6, 0x7a, 0xb5, 0xed, 0xb6, 0xd7, 0xce, 0xa6, 0xdd, 0xc6, 0x07, - 0xca, 0x40, 0x72, 0xfb, 0xcd, 0xd6, 0x37, 0xdf, 0x76, 0x2b, 0x0f, 0x7e, 0xed, 0x55, 0xfa, 0x3f, - 0x55, 0x91, 0xfd, 0x21, 0xf3, 0xe9, 0x64, 0x3f, 0x19, 0xdc, 0x05, 0x5f, 0xee, 0xfa, 0x3e, 0x08, - 0x41, 0x20, 0x0d, 0xe0, 0x1e, 0xfe, 0x0c, 0xb5, 0xd4, 0x26, 0x1e, 0x52, 0x49, 0x6d, 0xab, 0x67, - 0x6d, 0xaf, 0x5f, 0x7b, 0xd5, 0x31, 0xc7, 0x39, 0x5f, 0x53, 0x71, 0xa0, 0x0a, 0xed, 0xa4, 0x3b, - 0xce, 0x1d, 0x1d, 0xeb, 0x16, 0x48, 0xea, 0xe1, 0x93, 0x69, 0xb7, 0x92, 0x4d, 0xbb, 0xa8, 0xb0, - 0x91, 0x59, 0x54, 0x7c, 0x84, 0xea, 0x22, 0x06, 0xdf, 0xae, 0xea, 0xe8, 0xef, 0x38, 0x2b, 0x34, - 0x8b, 0x53, 0xa2, 0x78, 0x3f, 0x06, 0xdf, 0x7b, 0xc2, 0x64, 0xac, 0xab, 0x15, 0xd1, 0xf1, 0x71, - 0x84, 0x9a, 0x42, 0x52, 0x99, 0x08, 0xbb, 0xa6, 0x33, 0xbd, 0xfb, 0xaf, 0x33, 0xe9, 0x68, 0xde, - 0x53, 0x26, 0x57, 0x33, 0x5f, 0x13, 0x93, 0xa5, 0xff, 0x29, 0xba, 0x72, 0x9b, 0x45, 0x04, 0x04, - 0x4b, 0xb8, 0x0f, 0xbb, 0x52, 0xf2, 0x60, 0x90, 0x48, 0x10, 0xb8, 0x87, 0xea, 0x31, 0x95, 0x23, - 0xbd, 0x9d, 0xed, 0x42, 0xea, 0x47, 0x54, 0x8e, 0x88, 0xf6, 0x28, 0x44, 0x0a, 0x7c, 0xa0, 0xb7, - 0x64, 0x0e, 0x71, 0x00, 0x7c, 0x40, 0xb4, 0xa7, 0xff, 0x43, 0x15, 0xe1, 0x92, 0xd0, 0x2e, 0x6a, - 0x47, 0x34, 0x04, 0x11, 0x53, 0x1f, 0x4c, 0xfc, 0xa7, 0x0d, 0xbb, 0x7d, 0xfb, 0xcc, 0x41, 0x0a, - 0xcc, 0xa3, 0x33, 0xe1, 0xe7, 0x50, 0x63, 0xc8, 0x59, 0x12, 0xeb, 0x5d, 0x6b, 0x7b, 0x4f, 0x1a, - 0x48, 0xe3, 0x3d, 0x65, 0x24, 0xb9, 0x0f, 0xbf, 0x88, 0xd6, 0x52, 0xe0, 0x22, 0x60, 0x91, 0x5d, - 0xd7, 0xb0, 0x0d, 0x03, 0x5b, 0x3b, 0xc8, 0xcd, 0xe4, 0xcc, 0x8f, 0x5f, 0x46, 0x2d, 0x6e, 0x84, - 0xdb, 0x0d, 0x8d, 0xbd, 0x64, 0xb0, 0xad, 0xb3, 0x82, 0xc8, 0x0c, 0x81, 0xdf, 0x40, 0xeb, 0x22, - 0x19, 0xcc, 0x08, 0x4d, 0x4d, 0xb8, 0x6c, 0x08, 0xeb, 0xfb, 0x85, 0x8b, 0xcc, 0xe3, 0x54, 0x59, - 0xaa, 0x46, 0x7b, 0x6d, 0xb1, 0x2c, 0xb5, 0x05, 0x44, 0x7b, 0xfa, 0x3f, 0x57, 0xd1, 0xe6, 0x3e, - 0x4c, 0x8e, 0xfe, 0x9b, 0x9e, 0xbf, 0xbb, 0xd0, 0xf3, 0xef, 0xaf, 0xd6, 0x89, 0xe5, 0xaa, 0xff, - 0x37, 0x7d, 0xff, 0x7d, 0x15, 0x3d, 0xfb, 0x37, 0x1a, 0xf1, 0x97, 0x16, 0xc2, 0x7c, 0xa9, 0x75, - 0xcd, 0x46, 0xbf, 0xbd, 0x92, 0xb8, 0xe5, 0x1b, 0xe0, 0x3d, 0x93, 0x4d, 0xbb, 0x25, 0x37, 0x83, - 0x94, 0xa4, 0xc4, 0x5f, 0x5b, 0xe8, 0x4a, 0x54, 0x76, 0x45, 0xcd, 0xb9, 0x78, 0x2b, 0x89, 0x29, - 0xbd, 0xec, 0xde, 0xd5, 0x6c, 0xda, 0x2d, 0xff, 0x0f, 0x90, 0xf2, 0xdc, 0xfd, 0x1f, 0xab, 0xe8, - 0xf2, 0xc5, 0x9f, 0xf8, 0x71, 0x76, 0xe4, 0x1f, 0x75, 0xb4, 0x79, 0xd1, 0x8d, 0xff, 0xa8, 0x1b, - 0x67, 0x03, 0xa2, 0xb6, 0xf8, 0x27, 0xfd, 0x58, 0x00, 0x37, 0x03, 0xa2, 0x8f, 0x9a, 0x7a, 0x08, - 0x08, 0xbb, 0xae, 0x9f, 0x1a, 0x48, 0x9d, 0x80, 0x9e, 0x0e, 0x82, 0x18, 0x0f, 0x96, 0xa8, 0x01, - 0xea, 0x6d, 0x62, 0x37, 0x7a, 0xb5, 0xed, 0xf5, 0x6b, 0x77, 0x1e, 0x47, 0x6b, 0x39, 0xfa, 0xb5, - 0xb3, 0x17, 0x49, 0x7e, 0x5c, 0x4c, 0x25, 0x6d, 0x23, 0x79, 0xb2, 0xad, 0xcf, 0xcd, 0x8b, 0x48, - 0x63, 0xf0, 0x25, 0x54, 0x1b, 0xc3, 0x71, 0x3e, 0x15, 0x89, 0xfa, 0xc4, 0xb7, 0x50, 0x23, 0x55, - 0x8f, 0x25, 0xb3, 0xc1, 0xd7, 0x57, 0x52, 0x55, 0xbc, 0xb5, 0x48, 0x1e, 0xe5, 0x66, 0xf5, 0x86, - 0xd5, 0xff, 0xce, 0x42, 0x57, 0xcf, 0x6d, 0x50, 0x35, 0x26, 0xe9, 0x64, 0xc2, 0xee, 0xc1, 0xa1, - 0x96, 0xd1, 0x2a, 0xc6, 0xe4, 0x6e, 0x6e, 0x26, 0x67, 0x7e, 0xfc, 0x02, 0x6a, 0x72, 0xa0, 0x82, - 0x45, 0x66, 0x34, 0xcf, 0x7a, 0x9b, 0x68, 0x2b, 0x31, 0x5e, 0xbc, 0x8b, 0x36, 0x40, 0xa5, 0xd7, - 0xba, 0xf6, 0x38, 0x67, 0xdc, 0x1c, 0xd5, 0xa6, 0x21, 0x6c, 0xec, 0x2d, 0xba, 0xc9, 0x5f, 0xf1, - 0xde, 0xf3, 0x27, 0xa7, 0x9d, 0xca, 0xc3, 0xd3, 0x4e, 0xe5, 0x97, 0xd3, 0x4e, 0xe5, 0x41, 0xd6, - 0xb1, 0x4e, 0xb2, 0x8e, 0xf5, 0x30, 0xeb, 0x58, 0xbf, 0x65, 0x1d, 0xeb, 0xab, 0xdf, 0x3b, 0x95, - 0x4f, 0xaa, 0xe9, 0xce, 0x9f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x43, 0x53, 0x67, 0x22, 0x02, 0x0c, - 0x00, 0x00, + // 885 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x56, 0x4f, 0x6f, 0xdc, 0x44, + 0x14, 0x5f, 0xef, 0xbf, 0xec, 0x4e, 0x80, 0x94, 0xa9, 0x4a, 0xdc, 0x20, 0x79, 0x57, 0x8b, 0x84, + 0x82, 0x00, 0x9b, 0x94, 0x3f, 0xad, 0xca, 0x01, 0xc5, 0x22, 0xfc, 0x91, 0x68, 0x8b, 0x26, 0x22, + 0x07, 0xb8, 0x30, 0x76, 0x5e, 0x76, 0xdd, 0xdd, 0xf5, 0x98, 0x99, 0xb1, 0x4b, 0x38, 0xf5, 0xc6, + 0x15, 0x89, 0x0b, 0x47, 0xbe, 0x02, 0x1f, 0x00, 0xce, 0xb9, 0xd1, 0x03, 0x12, 0x3d, 0xa0, 0x15, + 0x31, 0x17, 0x3e, 0x06, 0x9a, 0xf1, 0x64, 0x9d, 0x6d, 0x1c, 0xaa, 0x85, 0x4a, 0x70, 0xc8, 0xcd, + 0xf3, 0xde, 0xef, 0xf7, 0xde, 0x6f, 0xde, 0xbc, 0xf1, 0x1b, 0xf4, 0xf6, 0xf8, 0x86, 0x70, 0x23, + 0xe6, 0x8d, 0xd3, 0x00, 0x78, 0x0c, 0x12, 0x84, 0x97, 0x8c, 0x87, 0x1e, 0x4d, 0x22, 0xe1, 0xd1, + 0x54, 0x8e, 0x18, 0x8f, 0xbe, 0xa2, 0x32, 0x62, 0xb1, 0x97, 0x6d, 0x79, 0x43, 0x88, 0x81, 0x53, + 0x09, 0xfb, 0x6e, 0xc2, 0x99, 0x64, 0xf8, 0xe5, 0x82, 0xec, 0x96, 0x64, 0x37, 0x19, 0x0f, 0x5d, + 0x45, 0x76, 0x17, 0xc8, 0x6e, 0xb6, 0xb5, 0xf1, 0xea, 0x30, 0x92, 0xa3, 0x34, 0x70, 0x43, 0x36, + 0xf5, 0x86, 0x6c, 0xc8, 0x3c, 0x1d, 0x23, 0x48, 0x0f, 0xf4, 0x4a, 0x2f, 0xf4, 0x57, 0x11, 0x7b, + 0xe3, 0x0d, 0x23, 0x8c, 0x26, 0xd1, 0x94, 0x86, 0xa3, 0x28, 0x06, 0x7e, 0x58, 0x4a, 0x9b, 0x82, + 0xa4, 0x15, 0x8a, 0x36, 0xbc, 0xf3, 0x58, 0x3c, 0x8d, 0x65, 0x34, 0x85, 0x33, 0x84, 0xb7, 0x1e, + 0x47, 0x10, 0xe1, 0x08, 0xa6, 0xf4, 0x0c, 0xef, 0xf5, 0xf3, 0x78, 0xa9, 0x8c, 0x26, 0x5e, 0x14, + 0x4b, 0x21, 0xf9, 0xa3, 0xa4, 0xc1, 0x75, 0x84, 0x76, 0xbe, 0x94, 0x9c, 0xee, 0xd1, 0x49, 0x0a, + 0xb8, 0x87, 0x5a, 0x91, 0x84, 0xa9, 0xb0, 0xad, 0x7e, 0x63, 0xb3, 0xeb, 0x77, 0xf3, 0x59, 0xaf, + 0xf5, 0xa1, 0x32, 0x90, 0xc2, 0x7e, 0xb3, 0xf3, 0xdd, 0xf7, 0xbd, 0xda, 0xfd, 0xdf, 0xfa, 0xb5, + 0xc1, 0x2f, 0x75, 0x64, 0x7f, 0xc4, 0x42, 0x3a, 0xd9, 0x4d, 0x83, 0xbb, 0x10, 0xca, 0xed, 0x30, + 0x04, 0x21, 0x08, 0x64, 0x11, 0xdc, 0xc3, 0x9f, 0xa3, 0x8e, 0x2a, 0xc7, 0x3e, 0x95, 0xd4, 0xb6, + 0xfa, 0xd6, 0xe6, 0xea, 0xb5, 0xd7, 0x5c, 0x73, 0x30, 0xa7, 0xd5, 0x95, 0x47, 0xa3, 0xd0, 0x6e, + 0xb6, 0xe5, 0xde, 0xd1, 0xb1, 0x6e, 0x81, 0xa4, 0x3e, 0x3e, 0x9a, 0xf5, 0x6a, 0xf9, 0xac, 0x87, + 0x4a, 0x1b, 0x99, 0x47, 0xc5, 0x07, 0xa8, 0x29, 0x12, 0x08, 0xed, 0xba, 0x8e, 0xfe, 0xae, 0xbb, + 0xc4, 0xb1, 0xbb, 0x15, 0x8a, 0x77, 0x13, 0x08, 0xfd, 0xa7, 0x4c, 0xc6, 0xa6, 0x5a, 0x11, 0x1d, + 0x1f, 0xc7, 0xa8, 0x2d, 0x24, 0x95, 0xa9, 0xb0, 0x1b, 0x3a, 0xd3, 0x7b, 0xff, 0x3a, 0x93, 0x8e, + 0xe6, 0x3f, 0x63, 0x72, 0xb5, 0x8b, 0x35, 0x31, 0x59, 0x06, 0x9f, 0xa1, 0x2b, 0xb7, 0x59, 0x4c, + 0x40, 0xb0, 0x94, 0x87, 0xb0, 0x2d, 0x25, 0x8f, 0x82, 0x54, 0x82, 0xc0, 0x7d, 0xd4, 0x4c, 0xa8, + 0x1c, 0xe9, 0x72, 0x76, 0x4b, 0xa9, 0x1f, 0x53, 0x39, 0x22, 0xda, 0xa3, 0x10, 0x19, 0xf0, 0x40, + 0x97, 0xe4, 0x14, 0x62, 0x0f, 0x78, 0x40, 0xb4, 0x67, 0xf0, 0x53, 0x1d, 0xe1, 0x8a, 0xd0, 0x1e, + 0xea, 0xc6, 0x74, 0x0a, 0x22, 0xa1, 0x21, 0x98, 0xf8, 0xcf, 0x1a, 0x76, 0xf7, 0xf6, 0x89, 0x83, + 0x94, 0x98, 0xc7, 0x67, 0xc2, 0x2f, 0xa0, 0xd6, 0x90, 0xb3, 0x34, 0xd1, 0x55, 0xeb, 0xfa, 0x4f, + 0x1b, 0x48, 0xeb, 0x7d, 0x65, 0x24, 0x85, 0x0f, 0xbf, 0x84, 0x56, 0x32, 0xe0, 0x22, 0x62, 0xb1, + 0xdd, 0xd4, 0xb0, 0x35, 0x03, 0x5b, 0xd9, 0x2b, 0xcc, 0xe4, 0xc4, 0x8f, 0x5f, 0x41, 0x1d, 0x6e, + 0x84, 0xdb, 0x2d, 0x8d, 0xbd, 0x64, 0xb0, 0x9d, 0x93, 0x0d, 0x91, 0x39, 0x02, 0xbf, 0x89, 0x56, + 0x45, 0x1a, 0xcc, 0x09, 0x6d, 0x4d, 0xb8, 0x6c, 0x08, 0xab, 0xbb, 0xa5, 0x8b, 0x9c, 0xc6, 0xa9, + 0x6d, 0xa9, 0x3d, 0xda, 0x2b, 0x8b, 0xdb, 0x52, 0x25, 0x20, 0xda, 0x33, 0xf8, 0xb5, 0x8e, 0xd6, + 0x77, 0x61, 0x72, 0xf0, 0xdf, 0xf4, 0xfc, 0xdd, 0x85, 0x9e, 0xff, 0x60, 0xb9, 0x4e, 0xac, 0x56, + 0xfd, 0xbf, 0xe9, 0xfb, 0x1f, 0xeb, 0xe8, 0xf9, 0xbf, 0xd1, 0x88, 0xbf, 0xb6, 0x10, 0xe6, 0x67, + 0x5a, 0xd7, 0x14, 0xfa, 0x9d, 0xa5, 0xc4, 0x9d, 0xbd, 0x01, 0xfe, 0x73, 0xf9, 0xac, 0x57, 0x71, + 0x33, 0x48, 0x45, 0x4a, 0xfc, 0xad, 0x85, 0xae, 0xc4, 0x55, 0x57, 0xd4, 0x9c, 0x8b, 0xbf, 0x94, + 0x98, 0xca, 0xcb, 0xee, 0x5f, 0xcd, 0x67, 0xbd, 0xea, 0xff, 0x00, 0xa9, 0xce, 0x3d, 0xf8, 0xb9, + 0x8e, 0x2e, 0x5f, 0xfc, 0x89, 0x9f, 0x64, 0x47, 0xfe, 0xd9, 0x44, 0xeb, 0x17, 0xdd, 0xf8, 0x8f, + 0xba, 0x71, 0x3e, 0x20, 0x1a, 0x8b, 0x7f, 0xd2, 0x4f, 0x04, 0x70, 0x33, 0x20, 0x06, 0xa8, 0xad, + 0x87, 0x80, 0xb0, 0x9b, 0xfa, 0xa9, 0x81, 0xd4, 0x09, 0xe8, 0xe9, 0x20, 0x88, 0xf1, 0x60, 0x89, + 0x5a, 0xa0, 0xde, 0x26, 0x76, 0xab, 0xdf, 0xd8, 0x5c, 0xbd, 0x76, 0xe7, 0x49, 0xb4, 0x96, 0xab, + 0x5f, 0x3b, 0x3b, 0xb1, 0xe4, 0x87, 0xe5, 0x54, 0xd2, 0x36, 0x52, 0x24, 0xdb, 0xf8, 0xc2, 0xbc, + 0x88, 0x34, 0x06, 0x5f, 0x42, 0x8d, 0x31, 0x1c, 0x16, 0x53, 0x91, 0xa8, 0x4f, 0x7c, 0x0b, 0xb5, + 0x32, 0xf5, 0x58, 0x32, 0x05, 0xbe, 0xbe, 0x94, 0xaa, 0xf2, 0xad, 0x45, 0x8a, 0x28, 0x37, 0xeb, + 0x37, 0xac, 0xc1, 0x0f, 0x16, 0xba, 0x7a, 0x6e, 0x83, 0xaa, 0x31, 0x49, 0x27, 0x13, 0x76, 0x0f, + 0xf6, 0xb5, 0x8c, 0x4e, 0x39, 0x26, 0xb7, 0x0b, 0x33, 0x39, 0xf1, 0xe3, 0x17, 0x51, 0x9b, 0x03, + 0x15, 0x2c, 0x36, 0xa3, 0x79, 0xde, 0xdb, 0x44, 0x5b, 0x89, 0xf1, 0xe2, 0x6d, 0xb4, 0x06, 0x2a, + 0xbd, 0xd6, 0xb5, 0xc3, 0x39, 0xe3, 0xe6, 0xa8, 0xd6, 0x0d, 0x61, 0x6d, 0x67, 0xd1, 0x4d, 0x1e, + 0xc5, 0xfb, 0x9b, 0x47, 0xc7, 0x4e, 0xed, 0xc1, 0xb1, 0x53, 0x7b, 0x78, 0xec, 0xd4, 0xee, 0xe7, + 0x8e, 0x75, 0x94, 0x3b, 0xd6, 0x83, 0xdc, 0xb1, 0x1e, 0xe6, 0x8e, 0xf5, 0x7b, 0xee, 0x58, 0xdf, + 0xfc, 0xe1, 0xd4, 0x3e, 0xad, 0x67, 0x5b, 0x7f, 0x05, 0x00, 0x00, 0xff, 0xff, 0x38, 0xb6, 0x9a, + 0xe3, 0xd0, 0x0b, 0x00, 0x00, } diff --git a/vendor/k8s.io/client-go/pkg/apis/authorization/v1/generated.proto b/vendor/k8s.io/client-go/pkg/apis/authorization/v1/generated.proto index 334e6a37..9048e4fa 100644 --- a/vendor/k8s.io/client-go/pkg/apis/authorization/v1/generated.proto +++ b/vendor/k8s.io/client-go/pkg/apis/authorization/v1/generated.proto @@ -19,13 +19,12 @@ limitations under the License. syntax = 'proto2'; -package k8s.io.kubernetes.pkg.apis.authorization.v1; +package k8s.io.client_go.pkg.apis.authorization.v1; import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; // Package-wide variables from generator "generated". option go_package = "v1"; diff --git a/vendor/k8s.io/client-go/pkg/apis/authorization/v1beta1/generated.pb.go b/vendor/k8s.io/client-go/pkg/apis/authorization/v1beta1/generated.pb.go index 725e9559..b2e66e61 100644 --- a/vendor/k8s.io/client-go/pkg/apis/authorization/v1beta1/generated.pb.go +++ b/vendor/k8s.io/client-go/pkg/apis/authorization/v1beta1/generated.pb.go @@ -41,9 +41,10 @@ import proto "github.com/gogo/protobuf/proto" import fmt "fmt" import math "math" +import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + import strings "strings" import reflect "reflect" -import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" import io "io" @@ -435,10 +436,15 @@ func (m *SubjectAccessReviewSpec) MarshalTo(dAtA []byte) (int, error) { } } if len(m.Extra) > 0 { + keysForExtra := make([]string, 0, len(m.Extra)) for k := range m.Extra { + keysForExtra = append(keysForExtra, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForExtra) + for _, k := range keysForExtra { dAtA[i] = 0x2a i++ - v := m.Extra[k] + v := m.Extra[string(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -2298,62 +2304,61 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 898 bytes of a gzipped FileDescriptorProto + // 886 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x56, 0x4f, 0x6f, 0xdc, 0x44, - 0x14, 0x5f, 0xef, 0x9f, 0x64, 0x77, 0x02, 0xa4, 0x4c, 0x55, 0xe2, 0x06, 0x69, 0x77, 0xb5, 0x48, - 0x28, 0x95, 0xc0, 0x6e, 0xca, 0xbf, 0xaa, 0xe2, 0x40, 0x2c, 0xa2, 0xaa, 0x82, 0x16, 0x34, 0x81, - 0x1c, 0xe0, 0xc2, 0xd8, 0x79, 0xdd, 0x35, 0xbb, 0xf6, 0x58, 0x33, 0x63, 0xb7, 0xe1, 0xd4, 0x0f, - 0xc0, 0x81, 0x63, 0x8f, 0x7c, 0x05, 0xbe, 0x00, 0x57, 0x72, 0xec, 0x11, 0x24, 0xb4, 0x22, 0xe6, - 0x5b, 0x70, 0x42, 0x33, 0x9e, 0x5d, 0x67, 0x59, 0x87, 0x6a, 0xa1, 0x88, 0x1e, 0x72, 0xb3, 0xdf, - 0xfb, 0xbd, 0xdf, 0xfb, 0xbd, 0x99, 0x37, 0xf3, 0x06, 0x7d, 0x30, 0xbe, 0x29, 0x9c, 0x90, 0xb9, - 0xe3, 0xd4, 0x07, 0x1e, 0x83, 0x04, 0xe1, 0x26, 0xe3, 0xa1, 0x4b, 0x93, 0x50, 0xb8, 0x34, 0x95, - 0x23, 0xc6, 0xc3, 0x6f, 0xa8, 0x0c, 0x59, 0xec, 0x66, 0xbb, 0x3e, 0x48, 0xba, 0xeb, 0x0e, 0x21, - 0x06, 0x4e, 0x25, 0x1c, 0x39, 0x09, 0x67, 0x92, 0xe1, 0xeb, 0x05, 0x83, 0x53, 0x32, 0x38, 0xc9, - 0x78, 0xe8, 0x28, 0x06, 0x67, 0x81, 0xc1, 0x31, 0x0c, 0xdb, 0x6f, 0x0e, 0x43, 0x39, 0x4a, 0x7d, - 0x27, 0x60, 0x91, 0x3b, 0x64, 0x43, 0xe6, 0x6a, 0x22, 0x3f, 0xbd, 0xaf, 0xff, 0xf4, 0x8f, 0xfe, - 0x2a, 0x12, 0x6c, 0xbf, 0x6d, 0x24, 0xd2, 0x24, 0x8c, 0x68, 0x30, 0x0a, 0x63, 0xe0, 0xc7, 0xa5, - 0xc8, 0x08, 0x24, 0x75, 0xb3, 0x25, 0x59, 0xdb, 0xee, 0x79, 0x51, 0x3c, 0x8d, 0x65, 0x18, 0xc1, - 0x52, 0xc0, 0xbb, 0x4f, 0x0b, 0x10, 0xc1, 0x08, 0x22, 0xba, 0x14, 0xf7, 0xd6, 0x79, 0x71, 0xa9, - 0x0c, 0x27, 0x6e, 0x18, 0x4b, 0x21, 0xf9, 0x52, 0xd0, 0x99, 0x9a, 0x04, 0xf0, 0x0c, 0x78, 0x59, - 0x10, 0x3c, 0xa4, 0x51, 0x32, 0x81, 0x8a, 0x9a, 0x06, 0xef, 0x21, 0xb4, 0xff, 0x50, 0x72, 0x7a, - 0x48, 0x27, 0x29, 0xe0, 0x1e, 0x6a, 0x85, 0x12, 0x22, 0x61, 0x5b, 0xfd, 0xc6, 0x4e, 0xc7, 0xeb, - 0xe4, 0xd3, 0x5e, 0xeb, 0x8e, 0x32, 0x90, 0xc2, 0x7e, 0xab, 0xfd, 0xf8, 0xfb, 0x5e, 0xed, 0xd1, - 0xaf, 0xfd, 0xda, 0x60, 0x5a, 0x47, 0xf6, 0xc7, 0x2c, 0xa0, 0x93, 0x83, 0xd4, 0xff, 0x1a, 0x02, - 0xb9, 0x17, 0x04, 0x20, 0x04, 0x81, 0x2c, 0x84, 0x07, 0xf8, 0x2b, 0xd4, 0x56, 0x8b, 0x78, 0x44, - 0x25, 0xb5, 0xad, 0xbe, 0xb5, 0xb3, 0x71, 0xe3, 0xba, 0x63, 0xf6, 0xf4, 0x6c, 0x4d, 0xe5, 0xae, - 0x2a, 0xb4, 0x93, 0xed, 0x3a, 0x9f, 0x68, 0xae, 0xbb, 0x20, 0xa9, 0x87, 0x4f, 0xa6, 0xbd, 0x5a, - 0x3e, 0xed, 0xa1, 0xd2, 0x46, 0xe6, 0xac, 0x78, 0x8c, 0x9a, 0x22, 0x81, 0xc0, 0xae, 0x6b, 0xf6, - 0x3b, 0xce, 0xaa, 0x1d, 0xe3, 0x54, 0xc8, 0x3e, 0x48, 0x20, 0xf0, 0x5e, 0x30, 0x69, 0x9b, 0xea, - 0x8f, 0xe8, 0x24, 0x58, 0xa0, 0x35, 0x21, 0xa9, 0x4c, 0x85, 0xdd, 0xd0, 0xe9, 0x3e, 0x7a, 0x36, - 0xe9, 0x34, 0xa5, 0xf7, 0x92, 0x49, 0xb8, 0x56, 0xfc, 0x13, 0x93, 0x6a, 0xf0, 0x25, 0xba, 0x72, - 0x8f, 0xc5, 0x04, 0x04, 0x4b, 0x79, 0x00, 0x7b, 0x52, 0xf2, 0xd0, 0x4f, 0x25, 0x08, 0xdc, 0x47, - 0xcd, 0x84, 0xca, 0x91, 0x5e, 0xd8, 0x4e, 0xa9, 0xf7, 0x53, 0x2a, 0x47, 0x44, 0x7b, 0x14, 0x22, - 0x03, 0xee, 0xeb, 0xc5, 0x39, 0x83, 0x38, 0x04, 0xee, 0x13, 0xed, 0x19, 0xfc, 0x58, 0x47, 0xb8, - 0x82, 0xda, 0x45, 0x9d, 0x98, 0x46, 0x20, 0x12, 0x1a, 0x80, 0xe1, 0x7f, 0xd9, 0x44, 0x77, 0xee, - 0xcd, 0x1c, 0xa4, 0xc4, 0x3c, 0x3d, 0x13, 0x7e, 0x0d, 0xb5, 0x86, 0x9c, 0xa5, 0x89, 0x5e, 0xba, - 0x8e, 0xf7, 0xa2, 0x81, 0xb4, 0x6e, 0x2b, 0x23, 0x29, 0x7c, 0xf8, 0x1a, 0x5a, 0xcf, 0x80, 0x8b, - 0x90, 0xc5, 0x76, 0x53, 0xc3, 0x36, 0x0d, 0x6c, 0xfd, 0xb0, 0x30, 0x93, 0x99, 0x1f, 0xbf, 0x81, - 0xda, 0xdc, 0x08, 0xb7, 0x5b, 0x1a, 0x7b, 0xc9, 0x60, 0xdb, 0xb3, 0x82, 0xc8, 0x1c, 0x81, 0xdf, - 0x41, 0x1b, 0x22, 0xf5, 0xe7, 0x01, 0x6b, 0x3a, 0xe0, 0xb2, 0x09, 0xd8, 0x38, 0x28, 0x5d, 0xe4, - 0x2c, 0x4e, 0x95, 0xa5, 0x6a, 0xb4, 0xd7, 0x17, 0xcb, 0x52, 0x4b, 0x40, 0xb4, 0x67, 0x70, 0x5a, - 0x47, 0x5b, 0x07, 0x30, 0xb9, 0xff, 0xff, 0x74, 0x3f, 0x5b, 0xe8, 0xfe, 0xbb, 0xff, 0xa0, 0x1d, - 0xab, 0xa5, 0x3f, 0x5f, 0x27, 0xe0, 0xa7, 0x3a, 0x7a, 0xf5, 0x6f, 0x84, 0xe2, 0x6f, 0x2d, 0x84, - 0xf9, 0x52, 0x13, 0x9b, 0x25, 0xff, 0x70, 0x75, 0x85, 0xcb, 0x07, 0xc2, 0x7b, 0x25, 0x9f, 0xf6, - 0x2a, 0x0e, 0x0a, 0xa9, 0xc8, 0x8b, 0x1f, 0x5b, 0xe8, 0x4a, 0x5c, 0x75, 0x62, 0xcd, 0x36, 0xdd, - 0x5e, 0x5d, 0x51, 0xe5, 0x05, 0xe0, 0x5d, 0xcd, 0xa7, 0xbd, 0xea, 0xbb, 0x81, 0x54, 0x0b, 0x18, - 0xfc, 0x52, 0x47, 0x97, 0x2f, 0xee, 0xe9, 0xff, 0xa6, 0x4b, 0xff, 0x68, 0xa2, 0xad, 0x8b, 0x0e, - 0xfd, 0x97, 0x1d, 0x3a, 0x1f, 0x24, 0x8d, 0xc5, 0x1b, 0xf7, 0x73, 0x01, 0xdc, 0x0c, 0x92, 0xfe, - 0x6c, 0x90, 0x34, 0xf5, 0xdb, 0x04, 0xa9, 0xad, 0xd0, 0x43, 0x44, 0xcc, 0xa6, 0xc8, 0x31, 0x6a, - 0x81, 0x7a, 0xcb, 0xd8, 0xad, 0x7e, 0x63, 0x67, 0xe3, 0xc6, 0x67, 0xcf, 0xac, 0xd9, 0x1c, 0xfd, - 0x44, 0xda, 0x8f, 0x25, 0x3f, 0x2e, 0x07, 0x98, 0xb6, 0x91, 0x22, 0xe3, 0x76, 0x66, 0x9e, 0x51, - 0x1a, 0x83, 0x2f, 0xa1, 0xc6, 0x18, 0x8e, 0x8b, 0x01, 0x4a, 0xd4, 0x27, 0x26, 0xa8, 0x95, 0xa9, - 0x17, 0x96, 0x59, 0xe8, 0xf7, 0x57, 0x97, 0x56, 0xbe, 0xd2, 0x48, 0x41, 0x75, 0xab, 0x7e, 0xd3, - 0x1a, 0xfc, 0x60, 0xa1, 0xab, 0xe7, 0xb6, 0xac, 0x1a, 0xab, 0x74, 0x32, 0x61, 0x0f, 0xe0, 0x48, - 0x6b, 0x69, 0x97, 0x63, 0x75, 0xaf, 0x30, 0x93, 0x99, 0x1f, 0xbf, 0x8e, 0xd6, 0x38, 0x50, 0xc1, - 0x62, 0x33, 0xca, 0xe7, 0xdd, 0x4e, 0xb4, 0x95, 0x18, 0x2f, 0xde, 0x43, 0x9b, 0xa0, 0xd2, 0x6b, - 0x71, 0xfb, 0x9c, 0x33, 0x6e, 0xb6, 0x6c, 0xcb, 0x04, 0x6c, 0xee, 0x2f, 0xba, 0xc9, 0x5f, 0xf1, - 0xde, 0xb5, 0x93, 0xd3, 0x6e, 0xed, 0xc9, 0x69, 0xb7, 0xf6, 0xf3, 0x69, 0xb7, 0xf6, 0x28, 0xef, - 0x5a, 0x27, 0x79, 0xd7, 0x7a, 0x92, 0x77, 0xad, 0xdf, 0xf2, 0xae, 0xf5, 0xdd, 0xef, 0xdd, 0xda, - 0x17, 0xeb, 0xa6, 0xe8, 0x3f, 0x03, 0x00, 0x00, 0xff, 0xff, 0x2a, 0x8e, 0xe3, 0x5a, 0x4b, 0x0c, - 0x00, 0x00, + 0x14, 0x5f, 0xef, 0x9f, 0x64, 0x77, 0x02, 0xa4, 0x4c, 0x55, 0xe2, 0x06, 0xc9, 0xbb, 0x5a, 0x24, + 0x14, 0x24, 0x6a, 0x37, 0xe5, 0x5f, 0x55, 0x71, 0x20, 0x16, 0x51, 0x55, 0x41, 0x0b, 0x9a, 0x40, + 0x0e, 0x70, 0x61, 0xec, 0xbc, 0xee, 0x9a, 0xdd, 0xf5, 0x58, 0x33, 0x63, 0x97, 0x70, 0xea, 0x07, + 0xe0, 0xc0, 0xb1, 0x47, 0xbe, 0x02, 0x5f, 0x80, 0x2b, 0x39, 0xf6, 0x58, 0x24, 0xb4, 0x22, 0xe6, + 0x5b, 0x70, 0x42, 0x33, 0x9e, 0x5d, 0x67, 0xbb, 0x0e, 0xd5, 0x42, 0x11, 0x1c, 0x72, 0xb3, 0xdf, + 0xfb, 0xbd, 0xdf, 0xfb, 0xcd, 0x9b, 0x37, 0xf3, 0x06, 0x7d, 0x30, 0xba, 0x29, 0xdc, 0x88, 0x79, + 0xa3, 0x34, 0x00, 0x1e, 0x83, 0x04, 0xe1, 0x25, 0xa3, 0x81, 0x47, 0x93, 0x48, 0x78, 0x34, 0x95, + 0x43, 0xc6, 0xa3, 0x6f, 0xa9, 0x8c, 0x58, 0xec, 0x65, 0xbb, 0x01, 0x48, 0xba, 0xeb, 0x0d, 0x20, + 0x06, 0x4e, 0x25, 0x1c, 0xb9, 0x09, 0x67, 0x92, 0xe1, 0xeb, 0x05, 0x83, 0x5b, 0x32, 0xb8, 0xc9, + 0x68, 0xe0, 0x2a, 0x06, 0x77, 0x81, 0xc1, 0x35, 0x0c, 0xdb, 0xd7, 0x06, 0x91, 0x1c, 0xa6, 0x81, + 0x1b, 0xb2, 0x89, 0x37, 0x60, 0x03, 0xe6, 0x69, 0xa2, 0x20, 0xbd, 0xaf, 0xff, 0xf4, 0x8f, 0xfe, + 0x2a, 0x12, 0x6c, 0xbf, 0x6d, 0x24, 0xd2, 0x24, 0x9a, 0xd0, 0x70, 0x18, 0xc5, 0xc0, 0x8f, 0x4b, + 0x91, 0x13, 0x90, 0xd4, 0xcb, 0x96, 0x64, 0x6d, 0x7b, 0xe7, 0x45, 0xf1, 0x34, 0x96, 0xd1, 0x04, + 0x96, 0x02, 0xde, 0x7d, 0x56, 0x80, 0x08, 0x87, 0x30, 0xa1, 0x4b, 0x71, 0x6f, 0x9d, 0x17, 0x97, + 0xca, 0x68, 0xec, 0x45, 0xb1, 0x14, 0x92, 0x3f, 0x1d, 0xd4, 0x7f, 0x0f, 0xa1, 0xfd, 0x6f, 0x24, + 0xa7, 0x87, 0x74, 0x9c, 0x02, 0xee, 0xa2, 0x56, 0x24, 0x61, 0x22, 0x6c, 0xab, 0xd7, 0xd8, 0xe9, + 0xf8, 0x9d, 0x7c, 0xda, 0x6d, 0xdd, 0x51, 0x06, 0x52, 0xd8, 0x6f, 0xb5, 0x1f, 0xfd, 0xd0, 0xad, + 0x3d, 0xfc, 0xb5, 0x57, 0xeb, 0x4f, 0xeb, 0xc8, 0xfe, 0x98, 0x85, 0x74, 0x7c, 0x90, 0x06, 0x5f, + 0x43, 0x28, 0xf7, 0xc2, 0x10, 0x84, 0x20, 0x90, 0x45, 0xf0, 0x00, 0x7f, 0x85, 0xda, 0xaa, 0x1c, + 0x47, 0x54, 0x52, 0xdb, 0xea, 0x59, 0x3b, 0x1b, 0x37, 0xae, 0xbb, 0x66, 0x77, 0xce, 0xaa, 0x2b, + 0xf7, 0x47, 0xa1, 0xdd, 0x6c, 0xd7, 0xfd, 0x44, 0x73, 0xdd, 0x05, 0x49, 0x7d, 0x7c, 0x32, 0xed, + 0xd6, 0xf2, 0x69, 0x17, 0x95, 0x36, 0x32, 0x67, 0xc5, 0x23, 0xd4, 0x14, 0x09, 0x84, 0x76, 0x5d, + 0xb3, 0xdf, 0x71, 0x57, 0xdd, 0x7b, 0xb7, 0x42, 0xf6, 0x41, 0x02, 0xa1, 0xff, 0x82, 0x49, 0xdb, + 0x54, 0x7f, 0x44, 0x27, 0xc1, 0x02, 0xad, 0x09, 0x49, 0x65, 0x2a, 0xec, 0x86, 0x4e, 0xf7, 0xd1, + 0xf3, 0x49, 0xa7, 0x29, 0xfd, 0x97, 0x4c, 0xc2, 0xb5, 0xe2, 0x9f, 0x98, 0x54, 0xfd, 0x2f, 0xd1, + 0x95, 0x7b, 0x2c, 0x26, 0x20, 0x58, 0xca, 0x43, 0xd8, 0x93, 0x92, 0x47, 0x41, 0x2a, 0x41, 0xe0, + 0x1e, 0x6a, 0x26, 0x54, 0x0e, 0x75, 0x61, 0x3b, 0xa5, 0xde, 0x4f, 0xa9, 0x1c, 0x12, 0xed, 0x51, + 0x88, 0x0c, 0x78, 0xa0, 0x8b, 0x73, 0x06, 0x71, 0x08, 0x3c, 0x20, 0xda, 0xd3, 0xff, 0xa9, 0x8e, + 0x70, 0x05, 0xb5, 0x87, 0x3a, 0x31, 0x9d, 0x80, 0x48, 0x68, 0x08, 0x86, 0xff, 0x65, 0x13, 0xdd, + 0xb9, 0x37, 0x73, 0x90, 0x12, 0xf3, 0xec, 0x4c, 0xf8, 0x35, 0xd4, 0x1a, 0x70, 0x96, 0x26, 0xba, + 0x74, 0x1d, 0xff, 0x45, 0x03, 0x69, 0xdd, 0x56, 0x46, 0x52, 0xf8, 0xf0, 0x1b, 0x68, 0x3d, 0x03, + 0x2e, 0x22, 0x16, 0xdb, 0x4d, 0x0d, 0xdb, 0x34, 0xb0, 0xf5, 0xc3, 0xc2, 0x4c, 0x66, 0x7e, 0xfc, + 0x26, 0x6a, 0x73, 0x23, 0xdc, 0x6e, 0x69, 0xec, 0x25, 0x83, 0x6d, 0xcf, 0x16, 0x44, 0xe6, 0x08, + 0xfc, 0x0e, 0xda, 0x10, 0x69, 0x30, 0x0f, 0x58, 0xd3, 0x01, 0x97, 0x4d, 0xc0, 0xc6, 0x41, 0xe9, + 0x22, 0x67, 0x71, 0x6a, 0x59, 0x6a, 0x8d, 0xf6, 0xfa, 0xe2, 0xb2, 0x54, 0x09, 0x88, 0xf6, 0xf4, + 0x4f, 0xeb, 0x68, 0xeb, 0x00, 0xc6, 0xf7, 0xff, 0x9b, 0xee, 0x67, 0x0b, 0xdd, 0x7f, 0xf7, 0x6f, + 0xb4, 0x63, 0xb5, 0xf4, 0xff, 0xd7, 0x09, 0xf8, 0xb9, 0x8e, 0x5e, 0xfd, 0x0b, 0xa1, 0xf8, 0x3b, + 0x0b, 0x61, 0xbe, 0xd4, 0xc4, 0xa6, 0xe4, 0x1f, 0xae, 0xae, 0x70, 0xf9, 0x40, 0xf8, 0xaf, 0xe4, + 0xd3, 0x6e, 0xc5, 0x41, 0x21, 0x15, 0x79, 0xf1, 0x23, 0x0b, 0x5d, 0x89, 0xab, 0x4e, 0xac, 0xd9, + 0xa6, 0xdb, 0xab, 0x2b, 0xaa, 0xbc, 0x00, 0xfc, 0xab, 0xf9, 0xb4, 0x5b, 0x7d, 0x37, 0x90, 0x6a, + 0x01, 0xfd, 0x5f, 0xea, 0xe8, 0xf2, 0xc5, 0x3d, 0xfd, 0xef, 0x74, 0xe9, 0x1f, 0x4d, 0xb4, 0x75, + 0xd1, 0xa1, 0xff, 0xb0, 0x43, 0xe7, 0x83, 0xa4, 0xb1, 0x78, 0xe3, 0x7e, 0x2e, 0x80, 0x9b, 0x41, + 0xd2, 0x9b, 0x0d, 0x92, 0xa6, 0x7e, 0x9b, 0x20, 0xb5, 0x15, 0x7a, 0x88, 0x88, 0xd9, 0x14, 0x39, + 0x46, 0x2d, 0x50, 0x6f, 0x19, 0xbb, 0xd5, 0x6b, 0xec, 0x6c, 0xdc, 0xf8, 0xec, 0xb9, 0x35, 0x9b, + 0xab, 0x9f, 0x48, 0xfb, 0xb1, 0xe4, 0xc7, 0xe5, 0x00, 0xd3, 0x36, 0x52, 0x64, 0xdc, 0xce, 0xcc, + 0x33, 0x4a, 0x63, 0xf0, 0x25, 0xd4, 0x18, 0xc1, 0x71, 0x31, 0x40, 0x89, 0xfa, 0xc4, 0x04, 0xb5, + 0x32, 0xf5, 0xc2, 0x32, 0x85, 0x7e, 0x7f, 0x75, 0x69, 0xe5, 0x2b, 0x8d, 0x14, 0x54, 0xb7, 0xea, + 0x37, 0xad, 0xfe, 0x8f, 0x16, 0xba, 0x7a, 0x6e, 0xcb, 0xaa, 0xb1, 0x4a, 0xc7, 0x63, 0xf6, 0x00, + 0x8e, 0xb4, 0x96, 0x76, 0x39, 0x56, 0xf7, 0x0a, 0x33, 0x99, 0xf9, 0xf1, 0xeb, 0x68, 0x8d, 0x03, + 0x15, 0x2c, 0x36, 0xa3, 0x7c, 0xde, 0xed, 0x44, 0x5b, 0x89, 0xf1, 0xe2, 0x3d, 0xb4, 0x09, 0x2a, + 0xbd, 0x16, 0xb7, 0xcf, 0x39, 0xe3, 0x66, 0xcb, 0xb6, 0x4c, 0xc0, 0xe6, 0xfe, 0xa2, 0x9b, 0x3c, + 0x8d, 0xf7, 0xaf, 0x9d, 0x9c, 0x3a, 0xb5, 0xc7, 0xa7, 0x4e, 0xed, 0xc9, 0xa9, 0x53, 0x7b, 0x98, + 0x3b, 0xd6, 0x49, 0xee, 0x58, 0x8f, 0x73, 0xc7, 0x7a, 0x92, 0x3b, 0xd6, 0x6f, 0xb9, 0x63, 0x7d, + 0xff, 0xbb, 0x53, 0xfb, 0x62, 0xdd, 0x2c, 0xfc, 0xcf, 0x00, 0x00, 0x00, 0xff, 0xff, 0x24, 0x8e, + 0x13, 0x84, 0x19, 0x0c, 0x00, 0x00, } diff --git a/vendor/k8s.io/client-go/pkg/apis/authorization/v1beta1/generated.proto b/vendor/k8s.io/client-go/pkg/apis/authorization/v1beta1/generated.proto index 9258e4e0..104e3573 100644 --- a/vendor/k8s.io/client-go/pkg/apis/authorization/v1beta1/generated.proto +++ b/vendor/k8s.io/client-go/pkg/apis/authorization/v1beta1/generated.proto @@ -19,13 +19,12 @@ limitations under the License. syntax = 'proto2'; -package k8s.io.kubernetes.pkg.apis.authorization.v1beta1; +package k8s.io.client_go.pkg.apis.authorization.v1beta1; import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; // Package-wide variables from generator "generated". option go_package = "v1beta1"; diff --git a/vendor/k8s.io/client-go/pkg/apis/autoscaling/annotations.go b/vendor/k8s.io/client-go/pkg/apis/autoscaling/annotations.go index 4c377561..c6586ea7 100644 --- a/vendor/k8s.io/client-go/pkg/apis/autoscaling/annotations.go +++ b/vendor/k8s.io/client-go/pkg/apis/autoscaling/annotations.go @@ -24,6 +24,10 @@ const MetricSpecsAnnotation = "autoscaling.alpha.kubernetes.io/metrics" // statuses when converting the `CurrentMetrics` field from autoscaling/v2alpha1 const MetricStatusesAnnotation = "autoscaling.alpha.kubernetes.io/current-metrics" +// HorizontalPodAutoscalerConditionsAnnotation is the annotation which holds the conditions +// of an HPA when converting the `Conditions` field from autoscaling/v2alpha1 +const HorizontalPodAutoscalerConditionsAnnotation = "autoscaling.alpha.kubernetes.io/conditions" + // DefaultCPUUtilization is the default value for CPU utilization, provided no other // metrics are present. This is here because it's used by both the v2alpha1 defaulting // logic, and the pseudo-defaulting done in v1 conversion. diff --git a/vendor/k8s.io/client-go/pkg/apis/autoscaling/types.go b/vendor/k8s.io/client-go/pkg/apis/autoscaling/types.go index 67f7fb25..19fdc8a4 100644 --- a/vendor/k8s.io/client-go/pkg/apis/autoscaling/types.go +++ b/vendor/k8s.io/client-go/pkg/apis/autoscaling/types.go @@ -25,15 +25,15 @@ import ( // Scale represents a scaling request for a resource. type Scale struct { metav1.TypeMeta - // Standard object metadata; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata. + // Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. // +optional metav1.ObjectMeta - // defines the behavior of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. + // defines the behavior of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. // +optional Spec ScaleSpec - // current status of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. Read-only. + // current status of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. Read-only. // +optional Status ScaleStatus } @@ -60,7 +60,7 @@ type ScaleStatus struct { // CrossVersionObjectReference contains enough information to let you identify the referred resource. type CrossVersionObjectReference struct { - // Kind of the referent; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds" + // Kind of the referent; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds" Kind string // Name of the referent; More info: http://kubernetes.io/docs/user-guide/identifiers#names Name string @@ -174,7 +174,7 @@ type ResourceMetricSource struct { // the requested value of the resource for the pods. // +optional TargetAverageUtilization *int32 - // TargetAverageValue is the the target value of the average of the + // TargetAverageValue is the target value of the average of the // resource metric across all relevant pods, as a raw value (instead of as // a percentage of the request), similar to the "pods" metric source type. // +optional @@ -202,6 +202,59 @@ type HorizontalPodAutoscalerStatus struct { // CurrentMetrics is the last read state of the metrics used by this autoscaler. CurrentMetrics []MetricStatus + + // Conditions is the set of conditions required for this autoscaler to scale its target, + // and indicates whether or not those conditions are met. + Conditions []HorizontalPodAutoscalerCondition +} + +// ConditionStatus indicates the status of a condition (true, false, or unknown). +type ConditionStatus string + +// These are valid condition statuses. "ConditionTrue" means a resource is in the condition; +// "ConditionFalse" means a resource is not in the condition; "ConditionUnknown" means kubernetes +// can't decide if a resource is in the condition or not. In the future, we could add other +// intermediate conditions, e.g. ConditionDegraded. +const ( + ConditionTrue ConditionStatus = "True" + ConditionFalse ConditionStatus = "False" + ConditionUnknown ConditionStatus = "Unknown" +) + +// HorizontalPodAutoscalerConditionType are the valid conditions of +// a HorizontalPodAutoscaler. +type HorizontalPodAutoscalerConditionType string + +var ( + // ScalingActive indicates that the HPA controller is able to scale if necessary: + // it's correctly configured, can fetch the desired metrics, and isn't disabled. + ScalingActive HorizontalPodAutoscalerConditionType = "ScalingActive" + // AbleToScale indicates a lack of transient issues which prevent scaling from occuring, + // such as being in a backoff window, or being unable to access/update the target scale. + AbleToScale HorizontalPodAutoscalerConditionType = "AbleToScale" + // ScalingLimited indicates that the calculated scale based on metrics would be above or + // below the range for the HPA, and has thus been capped. + ScalingLimited HorizontalPodAutoscalerConditionType = "ScalingLimited" +) + +// HorizontalPodAutoscalerCondition describes the state of +// a HorizontalPodAutoscaler at a certain point. +type HorizontalPodAutoscalerCondition struct { + // Type describes the current condition + Type HorizontalPodAutoscalerConditionType + // Status is the status of the condition (True, False, Unknown) + Status ConditionStatus + // LastTransitionTime is the last time the condition transitioned from + // one status to another + // +optional + LastTransitionTime metav1.Time + // Reason is the reason for the condition's last transition. + // +optional + Reason string + // Message is a human-readable explanation containing details about + // the transition + // +optional + Message string } // MetricStatus describes the last-read state of a single metric. @@ -264,7 +317,7 @@ type ResourceMetricStatus struct { // specification. // +optional CurrentAverageUtilization *int32 - // CurrentAverageValue is the the current value of the average of the + // CurrentAverageValue is the current value of the average of the // resource metric across all relevant pods, as a raw value (instead of as // a percentage of the request), similar to the "pods" metric source type. // It will always be set, regardless of the corresponding metric specification. @@ -279,12 +332,12 @@ type ResourceMetricStatus struct { type HorizontalPodAutoscaler struct { metav1.TypeMeta // Metadata is the standard object metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta // Spec is the specification for the behaviour of the autoscaler. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. // +optional Spec HorizontalPodAutoscalerSpec diff --git a/vendor/k8s.io/client-go/pkg/apis/autoscaling/v1/conversion.go b/vendor/k8s.io/client-go/pkg/apis/autoscaling/v1/conversion.go index 6b830692..3e6a320a 100644 --- a/vendor/k8s.io/client-go/pkg/apis/autoscaling/v1/conversion.go +++ b/vendor/k8s.io/client-go/pkg/apis/autoscaling/v1/conversion.go @@ -68,9 +68,17 @@ func Convert_autoscaling_HorizontalPodAutoscaler_To_v1_HorizontalPodAutoscaler(i } } - if len(otherMetrics) > 0 || len(in.Status.CurrentMetrics) > 0 { + // store HPA conditions in an annotation + currentConditions := make([]HorizontalPodAutoscalerCondition, len(in.Status.Conditions)) + for i, currentCondition := range in.Status.Conditions { + if err := Convert_autoscaling_HorizontalPodAutoscalerCondition_To_v1_HorizontalPodAutoscalerCondition(¤tCondition, ¤tConditions[i], s); err != nil { + return err + } + } + + if len(otherMetrics) > 0 || len(in.Status.CurrentMetrics) > 0 || len(currentConditions) > 0 { old := out.Annotations - out.Annotations = make(map[string]string, len(old)+2) + out.Annotations = make(map[string]string, len(old)+3) if old != nil { for k, v := range old { out.Annotations[k] = v @@ -94,6 +102,14 @@ func Convert_autoscaling_HorizontalPodAutoscaler_To_v1_HorizontalPodAutoscaler(i out.Annotations[autoscaling.MetricStatusesAnnotation] = string(currentMetricsEnc) } + if len(in.Status.Conditions) > 0 { + currentConditionsEnc, err := json.Marshal(currentConditions) + if err != nil { + return err + } + out.Annotations[autoscaling.HorizontalPodAutoscalerConditionsAnnotation] = string(currentConditionsEnc) + } + return nil } @@ -154,6 +170,21 @@ func Convert_v1_HorizontalPodAutoscaler_To_autoscaling_HorizontalPodAutoscaler(i *out.Spec.Metrics[0].Resource.TargetAverageUtilization = autoscaling.DefaultCPUUtilization } + if currentConditionsEnc, hasCurrentConditions := out.Annotations[autoscaling.HorizontalPodAutoscalerConditionsAnnotation]; hasCurrentConditions { + var currentConditions []HorizontalPodAutoscalerCondition + if err := json.Unmarshal([]byte(currentConditionsEnc), ¤tConditions); err != nil { + return err + } + + out.Status.Conditions = make([]autoscaling.HorizontalPodAutoscalerCondition, len(currentConditions)) + for i, currentCondition := range currentConditions { + if err := Convert_v1_HorizontalPodAutoscalerCondition_To_autoscaling_HorizontalPodAutoscalerCondition(¤tCondition, &out.Status.Conditions[i], s); err != nil { + return err + } + } + delete(out.Annotations, autoscaling.HorizontalPodAutoscalerConditionsAnnotation) + } + return nil } diff --git a/vendor/k8s.io/client-go/pkg/apis/autoscaling/v1/generated.pb.go b/vendor/k8s.io/client-go/pkg/apis/autoscaling/v1/generated.pb.go index 4c9d2938..552c980a 100644 --- a/vendor/k8s.io/client-go/pkg/apis/autoscaling/v1/generated.pb.go +++ b/vendor/k8s.io/client-go/pkg/apis/autoscaling/v1/generated.pb.go @@ -27,6 +27,7 @@ limitations under the License. It has these top-level messages: CrossVersionObjectReference HorizontalPodAutoscaler + HorizontalPodAutoscalerCondition HorizontalPodAutoscalerList HorizontalPodAutoscalerSpec HorizontalPodAutoscalerStatus @@ -79,71 +80,78 @@ func (m *HorizontalPodAutoscaler) Reset() { *m = HorizontalPo func (*HorizontalPodAutoscaler) ProtoMessage() {} func (*HorizontalPodAutoscaler) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{1} } +func (m *HorizontalPodAutoscalerCondition) Reset() { *m = HorizontalPodAutoscalerCondition{} } +func (*HorizontalPodAutoscalerCondition) ProtoMessage() {} +func (*HorizontalPodAutoscalerCondition) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{2} +} + func (m *HorizontalPodAutoscalerList) Reset() { *m = HorizontalPodAutoscalerList{} } func (*HorizontalPodAutoscalerList) ProtoMessage() {} func (*HorizontalPodAutoscalerList) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{2} + return fileDescriptorGenerated, []int{3} } func (m *HorizontalPodAutoscalerSpec) Reset() { *m = HorizontalPodAutoscalerSpec{} } func (*HorizontalPodAutoscalerSpec) ProtoMessage() {} func (*HorizontalPodAutoscalerSpec) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{3} + return fileDescriptorGenerated, []int{4} } func (m *HorizontalPodAutoscalerStatus) Reset() { *m = HorizontalPodAutoscalerStatus{} } func (*HorizontalPodAutoscalerStatus) ProtoMessage() {} func (*HorizontalPodAutoscalerStatus) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{4} + return fileDescriptorGenerated, []int{5} } func (m *MetricSpec) Reset() { *m = MetricSpec{} } func (*MetricSpec) ProtoMessage() {} -func (*MetricSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{5} } +func (*MetricSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{6} } func (m *MetricStatus) Reset() { *m = MetricStatus{} } func (*MetricStatus) ProtoMessage() {} -func (*MetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{6} } +func (*MetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{7} } func (m *ObjectMetricSource) Reset() { *m = ObjectMetricSource{} } func (*ObjectMetricSource) ProtoMessage() {} -func (*ObjectMetricSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{7} } +func (*ObjectMetricSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{8} } func (m *ObjectMetricStatus) Reset() { *m = ObjectMetricStatus{} } func (*ObjectMetricStatus) ProtoMessage() {} -func (*ObjectMetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{8} } +func (*ObjectMetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{9} } func (m *PodsMetricSource) Reset() { *m = PodsMetricSource{} } func (*PodsMetricSource) ProtoMessage() {} -func (*PodsMetricSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{9} } +func (*PodsMetricSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{10} } func (m *PodsMetricStatus) Reset() { *m = PodsMetricStatus{} } func (*PodsMetricStatus) ProtoMessage() {} -func (*PodsMetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{10} } +func (*PodsMetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{11} } func (m *ResourceMetricSource) Reset() { *m = ResourceMetricSource{} } func (*ResourceMetricSource) ProtoMessage() {} -func (*ResourceMetricSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{11} } +func (*ResourceMetricSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{12} } func (m *ResourceMetricStatus) Reset() { *m = ResourceMetricStatus{} } func (*ResourceMetricStatus) ProtoMessage() {} -func (*ResourceMetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{12} } +func (*ResourceMetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{13} } func (m *Scale) Reset() { *m = Scale{} } func (*Scale) ProtoMessage() {} -func (*Scale) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{13} } +func (*Scale) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{14} } func (m *ScaleSpec) Reset() { *m = ScaleSpec{} } func (*ScaleSpec) ProtoMessage() {} -func (*ScaleSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{14} } +func (*ScaleSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{15} } func (m *ScaleStatus) Reset() { *m = ScaleStatus{} } func (*ScaleStatus) ProtoMessage() {} -func (*ScaleStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{15} } +func (*ScaleStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{16} } func init() { proto.RegisterType((*CrossVersionObjectReference)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v1.CrossVersionObjectReference") proto.RegisterType((*HorizontalPodAutoscaler)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v1.HorizontalPodAutoscaler") + proto.RegisterType((*HorizontalPodAutoscalerCondition)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v1.HorizontalPodAutoscalerCondition") proto.RegisterType((*HorizontalPodAutoscalerList)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v1.HorizontalPodAutoscalerList") proto.RegisterType((*HorizontalPodAutoscalerSpec)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v1.HorizontalPodAutoscalerSpec") proto.RegisterType((*HorizontalPodAutoscalerStatus)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v1.HorizontalPodAutoscalerStatus") @@ -231,6 +239,48 @@ func (m *HorizontalPodAutoscaler) MarshalTo(dAtA []byte) (int, error) { return i, nil } +func (m *HorizontalPodAutoscalerCondition) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *HorizontalPodAutoscalerCondition) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.Type))) + i += copy(dAtA[i:], m.Type) + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.Status))) + i += copy(dAtA[i:], m.Status) + dAtA[i] = 0x1a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.LastTransitionTime.Size())) + n4, err := m.LastTransitionTime.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n4 + dAtA[i] = 0x22 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.Reason))) + i += copy(dAtA[i:], m.Reason) + dAtA[i] = 0x2a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.Message))) + i += copy(dAtA[i:], m.Message) + return i, nil +} + func (m *HorizontalPodAutoscalerList) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -249,11 +299,11 @@ func (m *HorizontalPodAutoscalerList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n4, err := m.ListMeta.MarshalTo(dAtA[i:]) + n5, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n4 + i += n5 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -287,11 +337,11 @@ func (m *HorizontalPodAutoscalerSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ScaleTargetRef.Size())) - n5, err := m.ScaleTargetRef.MarshalTo(dAtA[i:]) + n6, err := m.ScaleTargetRef.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n5 + i += n6 if m.MinReplicas != nil { dAtA[i] = 0x10 i++ @@ -332,11 +382,11 @@ func (m *HorizontalPodAutoscalerStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.LastScaleTime.Size())) - n6, err := m.LastScaleTime.MarshalTo(dAtA[i:]) + n7, err := m.LastScaleTime.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n6 + i += n7 } dAtA[i] = 0x18 i++ @@ -375,32 +425,32 @@ func (m *MetricSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Object.Size())) - n7, err := m.Object.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n7 - } - if m.Pods != nil { - dAtA[i] = 0x1a - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Pods.Size())) - n8, err := m.Pods.MarshalTo(dAtA[i:]) + n8, err := m.Object.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n8 } - if m.Resource != nil { - dAtA[i] = 0x22 + if m.Pods != nil { + dAtA[i] = 0x1a i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Resource.Size())) - n9, err := m.Resource.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.Pods.Size())) + n9, err := m.Pods.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n9 } + if m.Resource != nil { + dAtA[i] = 0x22 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Resource.Size())) + n10, err := m.Resource.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n10 + } return i, nil } @@ -427,32 +477,32 @@ func (m *MetricStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Object.Size())) - n10, err := m.Object.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n10 - } - if m.Pods != nil { - dAtA[i] = 0x1a - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Pods.Size())) - n11, err := m.Pods.MarshalTo(dAtA[i:]) + n11, err := m.Object.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n11 } - if m.Resource != nil { - dAtA[i] = 0x22 + if m.Pods != nil { + dAtA[i] = 0x1a i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Resource.Size())) - n12, err := m.Resource.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.Pods.Size())) + n12, err := m.Pods.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n12 } + if m.Resource != nil { + dAtA[i] = 0x22 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Resource.Size())) + n13, err := m.Resource.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n13 + } return i, nil } @@ -474,11 +524,11 @@ func (m *ObjectMetricSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Target.Size())) - n13, err := m.Target.MarshalTo(dAtA[i:]) + n14, err := m.Target.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n13 + i += n14 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.MetricName))) @@ -486,11 +536,11 @@ func (m *ObjectMetricSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.TargetValue.Size())) - n14, err := m.TargetValue.MarshalTo(dAtA[i:]) + n15, err := m.TargetValue.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n14 + i += n15 return i, nil } @@ -512,11 +562,11 @@ func (m *ObjectMetricStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Target.Size())) - n15, err := m.Target.MarshalTo(dAtA[i:]) + n16, err := m.Target.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n15 + i += n16 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.MetricName))) @@ -524,11 +574,11 @@ func (m *ObjectMetricStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.CurrentValue.Size())) - n16, err := m.CurrentValue.MarshalTo(dAtA[i:]) + n17, err := m.CurrentValue.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n16 + i += n17 return i, nil } @@ -554,11 +604,11 @@ func (m *PodsMetricSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.TargetAverageValue.Size())) - n17, err := m.TargetAverageValue.MarshalTo(dAtA[i:]) + n18, err := m.TargetAverageValue.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n17 + i += n18 return i, nil } @@ -584,11 +634,11 @@ func (m *PodsMetricStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.CurrentAverageValue.Size())) - n18, err := m.CurrentAverageValue.MarshalTo(dAtA[i:]) + n19, err := m.CurrentAverageValue.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n18 + i += n19 return i, nil } @@ -620,11 +670,11 @@ func (m *ResourceMetricSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.TargetAverageValue.Size())) - n19, err := m.TargetAverageValue.MarshalTo(dAtA[i:]) + n20, err := m.TargetAverageValue.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n19 + i += n20 } return i, nil } @@ -656,11 +706,11 @@ func (m *ResourceMetricStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.CurrentAverageValue.Size())) - n20, err := m.CurrentAverageValue.MarshalTo(dAtA[i:]) + n21, err := m.CurrentAverageValue.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n20 + i += n21 return i, nil } @@ -682,27 +732,27 @@ func (m *Scale) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n21, err := m.ObjectMeta.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n21 - dAtA[i] = 0x12 - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) - n22, err := m.Spec.MarshalTo(dAtA[i:]) + n22, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n22 - dAtA[i] = 0x1a + dAtA[i] = 0x12 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) - n23, err := m.Status.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) + n23, err := m.Spec.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n23 + dAtA[i] = 0x1a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) + n24, err := m.Status.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n24 return i, nil } @@ -803,6 +853,22 @@ func (m *HorizontalPodAutoscaler) Size() (n int) { return n } +func (m *HorizontalPodAutoscalerCondition) Size() (n int) { + var l int + _ = l + l = len(m.Type) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.Status) + n += 1 + l + sovGenerated(uint64(l)) + l = m.LastTransitionTime.Size() + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.Reason) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.Message) + n += 1 + l + sovGenerated(uint64(l)) + return n +} + func (m *HorizontalPodAutoscalerList) Size() (n int) { var l int _ = l @@ -1027,6 +1093,20 @@ func (this *HorizontalPodAutoscaler) String() string { }, "") return s } +func (this *HorizontalPodAutoscalerCondition) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&HorizontalPodAutoscalerCondition{`, + `Type:` + fmt.Sprintf("%v", this.Type) + `,`, + `Status:` + fmt.Sprintf("%v", this.Status) + `,`, + `LastTransitionTime:` + strings.Replace(strings.Replace(this.LastTransitionTime.String(), "Time", "k8s_io_apimachinery_pkg_apis_meta_v1.Time", 1), `&`, ``, 1) + `,`, + `Reason:` + fmt.Sprintf("%v", this.Reason) + `,`, + `Message:` + fmt.Sprintf("%v", this.Message) + `,`, + `}`, + }, "") + return s +} func (this *HorizontalPodAutoscalerList) String() string { if this == nil { return "nil" @@ -1479,6 +1559,202 @@ func (m *HorizontalPodAutoscaler) Unmarshal(dAtA []byte) error { } return nil } +func (m *HorizontalPodAutoscalerCondition) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: HorizontalPodAutoscalerCondition: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: HorizontalPodAutoscalerCondition: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Type", 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.Type = HorizontalPodAutoscalerConditionType(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Status", 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.Status = k8s_io_kubernetes_pkg_api_v1.ConditionStatus(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field LastTransitionTime", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.LastTransitionTime.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Reason", 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.Reason = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Message", 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.Message = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func (m *HorizontalPodAutoscalerList) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 @@ -3420,85 +3696,92 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 1279 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x57, 0xcd, 0x6f, 0x1b, 0x45, - 0x14, 0xcf, 0xda, 0x4e, 0x94, 0xce, 0xa6, 0x1f, 0x4c, 0xaa, 0xd4, 0x4d, 0xa8, 0x37, 0x5a, 0x38, - 0xb4, 0xa8, 0xec, 0x12, 0x13, 0x2a, 0x22, 0x84, 0x50, 0x6c, 0x54, 0x5a, 0x51, 0xb7, 0x61, 0xe2, - 0x46, 0x7c, 0x09, 0x31, 0x59, 0x4f, 0x9d, 0x69, 0xbc, 0x1f, 0x9a, 0x1d, 0x5b, 0x4d, 0x24, 0x24, - 0x4e, 0x9c, 0xb9, 0x70, 0x46, 0xf0, 0x4f, 0x70, 0x2e, 0x12, 0x52, 0x8e, 0xbd, 0xc1, 0xc9, 0x22, - 0x0b, 0x37, 0xc4, 0x3f, 0x50, 0x71, 0x40, 0x3b, 0x3b, 0x5e, 0xef, 0xda, 0x5e, 0x27, 0x4e, 0xd3, - 0x22, 0x6e, 0xbb, 0x33, 0xef, 0xfd, 0x7e, 0xef, 0xfd, 0xe6, 0xcd, 0x9b, 0x19, 0xb0, 0xb6, 0xfb, - 0xb6, 0x6f, 0x50, 0xd7, 0xdc, 0x6d, 0x6f, 0x13, 0xe6, 0x10, 0x4e, 0x7c, 0xd3, 0xdb, 0x6d, 0x9a, - 0xd8, 0xa3, 0xbe, 0x89, 0xdb, 0xdc, 0xf5, 0x2d, 0xdc, 0xa2, 0x4e, 0xd3, 0xec, 0xac, 0x98, 0x4d, - 0xe2, 0x10, 0x86, 0x39, 0x69, 0x18, 0x1e, 0x73, 0xb9, 0x0b, 0xaf, 0x45, 0xae, 0x46, 0xdf, 0xd5, - 0xf0, 0x76, 0x9b, 0x46, 0xe8, 0x6a, 0x24, 0x5c, 0x8d, 0xce, 0xca, 0xe2, 0xeb, 0x4d, 0xca, 0x77, - 0xda, 0xdb, 0x86, 0xe5, 0xda, 0x66, 0xd3, 0x6d, 0xba, 0xa6, 0x40, 0xd8, 0x6e, 0x3f, 0x10, 0x7f, - 0xe2, 0x47, 0x7c, 0x45, 0xc8, 0x8b, 0xab, 0x32, 0x28, 0xec, 0x51, 0x1b, 0x5b, 0x3b, 0xd4, 0x21, - 0x6c, 0xaf, 0x17, 0x96, 0xc9, 0x88, 0xef, 0xb6, 0x99, 0x45, 0x06, 0xe3, 0x19, 0xeb, 0xe5, 0x9b, - 0x36, 0xe1, 0x78, 0x44, 0x16, 0x8b, 0x66, 0x96, 0x17, 0x6b, 0x3b, 0x9c, 0xda, 0xc3, 0x34, 0x37, - 0x8e, 0x72, 0xf0, 0xad, 0x1d, 0x62, 0xe3, 0x21, 0xbf, 0x37, 0xb3, 0xfc, 0xda, 0x9c, 0xb6, 0x4c, - 0xea, 0x70, 0x9f, 0xb3, 0x71, 0x39, 0xf9, 0x84, 0x75, 0x08, 0xeb, 0x27, 0x44, 0x1e, 0x61, 0xdb, - 0x6b, 0x91, 0x51, 0x39, 0x5d, 0xcf, 0x5c, 0xd4, 0x11, 0xd6, 0xfa, 0x77, 0x0a, 0x58, 0xaa, 0x32, - 0xd7, 0xf7, 0xb7, 0x08, 0xf3, 0xa9, 0xeb, 0xdc, 0xdb, 0x7e, 0x48, 0x2c, 0x8e, 0xc8, 0x03, 0xc2, - 0x88, 0x63, 0x11, 0xb8, 0x0c, 0x0a, 0xbb, 0xd4, 0x69, 0x14, 0x95, 0x65, 0xe5, 0xea, 0x99, 0xca, - 0xdc, 0x41, 0x57, 0x9b, 0x0a, 0xba, 0x5a, 0xe1, 0x43, 0xea, 0x34, 0x90, 0x98, 0x09, 0x2d, 0x1c, - 0x6c, 0x93, 0x62, 0x2e, 0x6d, 0x71, 0x17, 0xdb, 0x04, 0x89, 0x19, 0x58, 0x06, 0x00, 0x7b, 0x54, - 0x12, 0x14, 0xf3, 0xc2, 0x0e, 0x4a, 0x3b, 0xb0, 0xbe, 0x71, 0x5b, 0xce, 0xa0, 0x84, 0x95, 0xfe, - 0x6b, 0x0e, 0x5c, 0xba, 0xe5, 0x32, 0xba, 0xef, 0x3a, 0x1c, 0xb7, 0x36, 0xdc, 0xc6, 0xba, 0x2c, - 0x2a, 0xc2, 0xe0, 0x97, 0x60, 0x36, 0x5c, 0xd0, 0x06, 0xe6, 0x58, 0xc4, 0xa5, 0x96, 0xdf, 0x30, - 0x64, 0x39, 0x26, 0xf5, 0xed, 0x17, 0x64, 0x68, 0x6d, 0x74, 0x56, 0x8c, 0x28, 0xb9, 0x1a, 0xe1, - 0xb8, 0xcf, 0xdf, 0x1f, 0x43, 0x31, 0x2a, 0xdc, 0x01, 0x05, 0xdf, 0x23, 0x96, 0xc8, 0x49, 0x2d, - 0xdf, 0x34, 0x8e, 0x5d, 0xec, 0x46, 0x46, 0xcc, 0x9b, 0x1e, 0xb1, 0xfa, 0xda, 0x84, 0x7f, 0x48, - 0x30, 0x40, 0x0f, 0xcc, 0xf8, 0x1c, 0xf3, 0xb6, 0x2f, 0x74, 0x51, 0xcb, 0xb7, 0x4e, 0x81, 0x4b, - 0xe0, 0x55, 0xce, 0x49, 0xb6, 0x99, 0xe8, 0x1f, 0x49, 0x1e, 0xfd, 0x4f, 0x05, 0x2c, 0x65, 0x78, - 0xde, 0xa1, 0x3e, 0x87, 0x9f, 0x0f, 0xa9, 0x6b, 0x1c, 0x4f, 0xdd, 0xd0, 0x5b, 0x68, 0x7b, 0x41, - 0x32, 0xcf, 0xf6, 0x46, 0x12, 0xca, 0x36, 0xc1, 0x34, 0xe5, 0xc4, 0xf6, 0x8b, 0xb9, 0xe5, 0xfc, - 0x55, 0xb5, 0x5c, 0x79, 0xf6, 0x74, 0x2b, 0x67, 0x25, 0xdd, 0xf4, 0xed, 0x10, 0x18, 0x45, 0xf8, - 0xfa, 0x3f, 0xb9, 0xcc, 0x34, 0x43, 0xf9, 0xe1, 0x37, 0x0a, 0x38, 0x27, 0x7e, 0xeb, 0x98, 0x35, - 0x49, 0x58, 0xf1, 0x32, 0xdb, 0x49, 0x56, 0x7b, 0xcc, 0xce, 0xa9, 0x2c, 0xc8, 0xb0, 0xce, 0x6d, - 0xa6, 0x58, 0xd0, 0x00, 0x2b, 0x5c, 0x01, 0xaa, 0x4d, 0x1d, 0x44, 0xbc, 0x16, 0xb5, 0xb0, 0x2f, - 0x4a, 0x6e, 0xba, 0x72, 0x3e, 0xe8, 0x6a, 0x6a, 0xad, 0x3f, 0x8c, 0x92, 0x36, 0xf0, 0x2d, 0xa0, - 0xda, 0xf8, 0x51, 0xec, 0x92, 0x17, 0x2e, 0xf3, 0x92, 0x4f, 0xad, 0xf5, 0xa7, 0x50, 0xd2, 0x0e, - 0x3e, 0x04, 0x25, 0x2e, 0x68, 0xab, 0x1b, 0xf7, 0xef, 0x73, 0xda, 0xa2, 0xfb, 0x98, 0x53, 0xd7, - 0xd9, 0x20, 0xcc, 0x22, 0x0e, 0xc7, 0x4d, 0x52, 0x2c, 0x08, 0x24, 0x3d, 0xe8, 0x6a, 0xa5, 0xfa, - 0x58, 0x4b, 0x74, 0x04, 0x92, 0xfe, 0x38, 0x0f, 0xae, 0x8c, 0xad, 0x4f, 0x78, 0x13, 0x40, 0x77, - 0x5b, 0xf4, 0xb5, 0xc6, 0x07, 0x51, 0x53, 0x0a, 0xbb, 0x43, 0xb8, 0x06, 0xf9, 0xca, 0x42, 0xd0, - 0xd5, 0xe0, 0xbd, 0xa1, 0x59, 0x34, 0xc2, 0x03, 0x5a, 0xe0, 0x6c, 0x0b, 0xfb, 0x3c, 0x52, 0x99, - 0xca, 0x46, 0xa4, 0x96, 0x5f, 0x3b, 0x5e, 0xd1, 0x86, 0x1e, 0x95, 0x97, 0x82, 0xae, 0x76, 0xf6, - 0x4e, 0x12, 0x04, 0xa5, 0x31, 0xe1, 0x3a, 0x38, 0x6f, 0xb5, 0x19, 0x23, 0x0e, 0x1f, 0x50, 0xfd, - 0x92, 0x54, 0xfd, 0x7c, 0x35, 0x3d, 0x8d, 0x06, 0xed, 0x43, 0x88, 0x06, 0xf1, 0x29, 0x23, 0x8d, - 0x18, 0xa2, 0x90, 0x86, 0x78, 0x3f, 0x3d, 0x8d, 0x06, 0xed, 0xa1, 0x0d, 0x34, 0x89, 0x9a, 0xb9, - 0x82, 0xd3, 0x02, 0xf2, 0x95, 0xa0, 0xab, 0x69, 0xd5, 0xf1, 0xa6, 0xe8, 0x28, 0x2c, 0xfd, 0xaf, - 0x1c, 0x00, 0x35, 0xc2, 0x19, 0xb5, 0xc4, 0x8e, 0x59, 0x05, 0x05, 0xbe, 0xe7, 0x11, 0x79, 0x14, - 0x2c, 0xf7, 0x9a, 0x59, 0x7d, 0xcf, 0x23, 0x4f, 0xbb, 0xda, 0x05, 0x69, 0x29, 0x8e, 0xe7, 0x70, - 0x0c, 0x09, 0x6b, 0x88, 0xc1, 0x8c, 0x2b, 0x76, 0x86, 0x5c, 0x97, 0x77, 0x27, 0xd8, 0x5e, 0x71, - 0x6f, 0x8e, 0x81, 0x2b, 0x20, 0xec, 0x68, 0x72, 0xab, 0x49, 0x60, 0xf8, 0x09, 0x28, 0x78, 0x6e, - 0xa3, 0xd7, 0x41, 0xdf, 0x99, 0x80, 0x60, 0xc3, 0x6d, 0xf8, 0x29, 0xf8, 0xd9, 0x30, 0xa3, 0x70, - 0x14, 0x09, 0x48, 0x48, 0xc1, 0x6c, 0xef, 0xca, 0x21, 0x56, 0x4b, 0x2d, 0xbf, 0x37, 0x01, 0x3c, - 0x92, 0xae, 0x29, 0x8a, 0xb9, 0xb0, 0x33, 0xf6, 0x66, 0x50, 0x0c, 0xaf, 0xff, 0x9d, 0x03, 0x73, - 0xd2, 0x30, 0xda, 0x20, 0xff, 0xb1, 0xde, 0xd1, 0x29, 0xf2, 0xdc, 0xf4, 0x8e, 0xe0, 0x9f, 0xab, - 0xde, 0x11, 0x45, 0x96, 0xde, 0xdf, 0xe7, 0x00, 0x1c, 0x2e, 0x30, 0xe8, 0x80, 0x99, 0xa8, 0xb5, - 0x9d, 0xf2, 0x71, 0x10, 0x1f, 0xc7, 0xb2, 0xf3, 0x4b, 0x96, 0xf0, 0x72, 0x64, 0x0b, 0xfe, 0xbb, - 0xfd, 0x4b, 0x54, 0x7c, 0x39, 0xa9, 0xc5, 0x33, 0x28, 0x61, 0x05, 0x09, 0x50, 0x23, 0xef, 0x2d, - 0xdc, 0x6a, 0x13, 0xb9, 0x0e, 0x63, 0x4f, 0x69, 0xa3, 0x97, 0xb6, 0xf1, 0x51, 0x1b, 0x3b, 0x9c, - 0xf2, 0xbd, 0xfe, 0x79, 0x51, 0xef, 0x43, 0xa1, 0x24, 0xae, 0xfe, 0xe3, 0xa0, 0x42, 0x51, 0x5d, - 0xfe, 0x1f, 0x14, 0xda, 0x01, 0x73, 0xb2, 0xbb, 0x3d, 0x8b, 0x44, 0x17, 0x25, 0xcb, 0x5c, 0x35, - 0x81, 0x85, 0x52, 0xc8, 0xfa, 0xcf, 0x0a, 0xb8, 0x30, 0xd8, 0x46, 0x06, 0x42, 0x56, 0x8e, 0x15, - 0xf2, 0x3e, 0x80, 0x51, 0xc2, 0xeb, 0x1d, 0xc2, 0x70, 0x93, 0x44, 0x81, 0xe7, 0x4e, 0x14, 0xf8, - 0xa2, 0xe4, 0x82, 0xf5, 0x21, 0x44, 0x34, 0x82, 0x45, 0xff, 0x25, 0x9d, 0x44, 0xb4, 0xce, 0x27, - 0x49, 0xe2, 0x2b, 0x30, 0x2f, 0xd5, 0x39, 0x85, 0x2c, 0x96, 0x24, 0xd9, 0x7c, 0x75, 0x18, 0x12, - 0x8d, 0xe2, 0xd1, 0x7f, 0xca, 0x81, 0x8b, 0xa3, 0x9a, 0x2e, 0xac, 0xc9, 0x47, 0x4a, 0x94, 0xc5, - 0x5a, 0xf2, 0x91, 0xf2, 0xb4, 0xab, 0x5d, 0x1b, 0xf7, 0x64, 0x8a, 0xbb, 0x4a, 0xe2, 0x45, 0xf3, - 0x31, 0x28, 0xa6, 0x54, 0x4c, 0x9c, 0x9f, 0xf2, 0x02, 0xf7, 0x72, 0xd0, 0xd5, 0x8a, 0xf5, 0x0c, - 0x1b, 0x94, 0xe9, 0x0d, 0x3b, 0x23, 0xab, 0xe0, 0x64, 0xe5, 0xbb, 0x30, 0x41, 0x05, 0x3c, 0x1e, - 0x56, 0x2e, 0xaa, 0x82, 0x53, 0x56, 0xee, 0x33, 0x70, 0x39, 0xbd, 0x70, 0xc3, 0xd2, 0x5d, 0x09, - 0xba, 0xda, 0xe5, 0x6a, 0x96, 0x11, 0xca, 0xf6, 0xcf, 0xaa, 0xbe, 0xfc, 0x0b, 0xaa, 0xbe, 0x1f, - 0x72, 0x60, 0x5a, 0x5c, 0x19, 0x5f, 0xc0, 0x0b, 0x75, 0x2b, 0xf5, 0x42, 0x5d, 0x9d, 0xa0, 0x05, - 0x8b, 0x08, 0x33, 0xdf, 0xa3, 0x5f, 0x0c, 0xbc, 0x47, 0x6f, 0x4c, 0x8c, 0x3c, 0xfe, 0xf5, 0xb9, - 0x06, 0xce, 0xc4, 0x01, 0xc0, 0xeb, 0xe1, 0x69, 0x2f, 0xef, 0xc2, 0x8a, 0x58, 0xfb, 0xf8, 0xe9, - 0x18, 0x5f, 0x82, 0x63, 0x0b, 0x9d, 0x02, 0x35, 0xc1, 0x30, 0x99, 0x73, 0x68, 0xed, 0x93, 0x16, - 0xb1, 0xb8, 0xcb, 0xe4, 0x11, 0x12, 0x5b, 0x6f, 0xca, 0x71, 0x14, 0x5b, 0x54, 0x5e, 0x3d, 0x38, - 0x2c, 0x4d, 0x3d, 0x39, 0x2c, 0x4d, 0xfd, 0x76, 0x58, 0x9a, 0xfa, 0x3a, 0x28, 0x29, 0x07, 0x41, - 0x49, 0x79, 0x12, 0x94, 0x94, 0xdf, 0x83, 0x92, 0xf2, 0xed, 0x1f, 0xa5, 0xa9, 0x4f, 0x73, 0x9d, - 0x95, 0x7f, 0x03, 0x00, 0x00, 0xff, 0xff, 0x61, 0xfc, 0xd4, 0x31, 0x3f, 0x13, 0x00, 0x00, + // 1381 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x58, 0xcf, 0x6f, 0x1b, 0xc5, + 0x17, 0xcf, 0xda, 0x4e, 0x9a, 0x8e, 0xd3, 0xa6, 0xdf, 0x69, 0xd5, 0xba, 0xe9, 0xb7, 0xde, 0x68, + 0x41, 0xa8, 0x45, 0x65, 0x4d, 0x42, 0xa8, 0xa8, 0x10, 0xa0, 0xd8, 0xa8, 0xb4, 0xa2, 0x6e, 0xc3, + 0xd4, 0x8d, 0xf8, 0x25, 0xc4, 0x64, 0x3d, 0x75, 0xa6, 0xf1, 0xfe, 0xd0, 0xcc, 0xd8, 0x22, 0x95, + 0x90, 0x38, 0x71, 0x85, 0x0b, 0x67, 0x04, 0xff, 0x04, 0xe7, 0x22, 0x21, 0xf5, 0xd8, 0x1b, 0x3d, + 0x59, 0x74, 0xe1, 0x86, 0xf8, 0x07, 0x2a, 0x0e, 0x68, 0x66, 0xc7, 0xeb, 0x5d, 0xdb, 0xeb, 0xc4, + 0x6d, 0x5a, 0xc4, 0xcd, 0x9e, 0xf9, 0xbc, 0xcf, 0xe7, 0xbd, 0x37, 0x6f, 0xde, 0xcc, 0x2c, 0xb8, + 0xb4, 0xf3, 0x06, 0xb7, 0xa9, 0x5f, 0xd9, 0xe9, 0x6c, 0x11, 0xe6, 0x11, 0x41, 0x78, 0x25, 0xd8, + 0x69, 0x55, 0x70, 0x40, 0x79, 0x05, 0x77, 0x84, 0xcf, 0x1d, 0xdc, 0xa6, 0x5e, 0xab, 0xd2, 0x5d, + 0xa9, 0xb4, 0x88, 0x47, 0x18, 0x16, 0xa4, 0x69, 0x07, 0xcc, 0x17, 0x3e, 0x3c, 0x1f, 0x99, 0xda, + 0x03, 0x53, 0x3b, 0xd8, 0x69, 0xd9, 0xd2, 0xd4, 0x4e, 0x98, 0xda, 0xdd, 0x95, 0xa5, 0x57, 0x5a, + 0x54, 0x6c, 0x77, 0xb6, 0x6c, 0xc7, 0x77, 0x2b, 0x2d, 0xbf, 0xe5, 0x57, 0x14, 0xc3, 0x56, 0xe7, + 0xb6, 0xfa, 0xa7, 0xfe, 0xa8, 0x5f, 0x11, 0xf3, 0xd2, 0x9a, 0x76, 0x0a, 0x07, 0xd4, 0xc5, 0xce, + 0x36, 0xf5, 0x08, 0xdb, 0xed, 0xbb, 0x55, 0x61, 0x84, 0xfb, 0x1d, 0xe6, 0x90, 0x61, 0x7f, 0x26, + 0x5a, 0xf1, 0x8a, 0x4b, 0x04, 0x1e, 0x13, 0xc5, 0x52, 0x25, 0xcb, 0x8a, 0x75, 0x3c, 0x41, 0xdd, + 0x51, 0x99, 0x8b, 0x7b, 0x19, 0x70, 0x67, 0x9b, 0xb8, 0x78, 0xc4, 0xee, 0xb5, 0x2c, 0xbb, 0x8e, + 0xa0, 0xed, 0x0a, 0xf5, 0x04, 0x17, 0x6c, 0xc4, 0xe8, 0x42, 0xe6, 0xf2, 0x8c, 0x89, 0xc5, 0xfa, + 0xce, 0x00, 0x67, 0x6a, 0xcc, 0xe7, 0x7c, 0x93, 0x30, 0x4e, 0x7d, 0xef, 0xc6, 0xd6, 0x1d, 0xe2, + 0x08, 0x44, 0x6e, 0x13, 0x46, 0x3c, 0x87, 0xc0, 0x65, 0x50, 0xd8, 0xa1, 0x5e, 0xb3, 0x64, 0x2c, + 0x1b, 0xe7, 0x0e, 0x57, 0x17, 0xee, 0xf7, 0xcc, 0x99, 0xb0, 0x67, 0x16, 0xde, 0xa7, 0x5e, 0x13, + 0xa9, 0x19, 0x89, 0xf0, 0xb0, 0x4b, 0x4a, 0xb9, 0x34, 0xe2, 0x3a, 0x76, 0x09, 0x52, 0x33, 0x70, + 0x15, 0x00, 0x1c, 0x50, 0x2d, 0x50, 0xca, 0x2b, 0x1c, 0xd4, 0x38, 0xb0, 0xbe, 0x71, 0x55, 0xcf, + 0xa0, 0x04, 0xca, 0xfa, 0x35, 0x07, 0x4e, 0x5d, 0xf1, 0x19, 0xbd, 0xeb, 0x7b, 0x02, 0xb7, 0x37, + 0xfc, 0xe6, 0xba, 0x2e, 0x0f, 0xc2, 0xe0, 0xe7, 0x60, 0x5e, 0x2e, 0x4d, 0x13, 0x0b, 0xac, 0xfc, + 0x2a, 0xae, 0xbe, 0x6a, 0xeb, 0xc2, 0x4a, 0x66, 0x6a, 0x50, 0x5a, 0x12, 0x6d, 0x77, 0x57, 0xec, + 0x28, 0xb8, 0x3a, 0x11, 0x78, 0xa0, 0x3f, 0x18, 0x43, 0x31, 0x2b, 0xdc, 0x06, 0x05, 0x1e, 0x10, + 0x47, 0xc5, 0x54, 0x5c, 0xbd, 0x6c, 0xef, 0xbb, 0x6c, 0xed, 0x0c, 0x9f, 0x6f, 0x06, 0xc4, 0x19, + 0xe4, 0x46, 0xfe, 0x43, 0x4a, 0x01, 0x06, 0x60, 0x8e, 0x0b, 0x2c, 0x3a, 0x5c, 0xe5, 0xa5, 0xb8, + 0x7a, 0xe5, 0x00, 0xb4, 0x14, 0x5f, 0xf5, 0xa8, 0x56, 0x9b, 0x8b, 0xfe, 0x23, 0xad, 0x63, 0x7d, + 0x93, 0x07, 0xcb, 0x19, 0x96, 0x35, 0xdf, 0x6b, 0x52, 0x41, 0x7d, 0x0f, 0x5e, 0x01, 0x05, 0xb1, + 0x1b, 0x10, 0xbd, 0xec, 0x6b, 0x7d, 0xc7, 0x1b, 0xbb, 0x01, 0x79, 0xdc, 0x33, 0x5f, 0xdc, 0xcb, + 0x5e, 0xe2, 0x90, 0x62, 0x80, 0x9b, 0x71, 0x80, 0x51, 0x81, 0xbc, 0x9d, 0x76, 0xeb, 0x71, 0xcf, + 0x9c, 0x58, 0xb0, 0x76, 0xcc, 0x99, 0x0e, 0x03, 0x76, 0x01, 0x6c, 0x63, 0x2e, 0x1a, 0x0c, 0x7b, + 0x3c, 0xd2, 0xa4, 0x2e, 0xd1, 0x49, 0x7c, 0x79, 0x7f, 0xe5, 0x20, 0x2d, 0xaa, 0x4b, 0xda, 0x1f, + 0x78, 0x6d, 0x84, 0x0d, 0x8d, 0x51, 0x80, 0x2f, 0x81, 0x39, 0x46, 0x30, 0xf7, 0xbd, 0x52, 0x41, + 0xc5, 0x13, 0xa7, 0x19, 0xa9, 0x51, 0xa4, 0x67, 0xe1, 0x79, 0x70, 0xc8, 0x25, 0x9c, 0xe3, 0x16, + 0x29, 0xcd, 0x2a, 0xe0, 0xa2, 0x06, 0x1e, 0xaa, 0x47, 0xc3, 0xa8, 0x3f, 0x6f, 0xfd, 0x61, 0x80, + 0x33, 0x19, 0x19, 0xbd, 0x46, 0xb9, 0x80, 0x9f, 0x8e, 0xd4, 0xbb, 0xbd, 0xbf, 0x00, 0xa5, 0xb5, + 0xaa, 0xf6, 0x63, 0x5a, 0x7b, 0xbe, 0x3f, 0x92, 0xa8, 0xf5, 0x16, 0x98, 0xa5, 0x82, 0xb8, 0x72, + 0x7d, 0xf2, 0xe7, 0x8a, 0xab, 0xd5, 0xa7, 0x2f, 0xc0, 0xea, 0x11, 0x2d, 0x37, 0x7b, 0x55, 0x12, + 0xa3, 0x88, 0xdf, 0xfa, 0x3b, 0x97, 0x19, 0xa6, 0xdc, 0x10, 0xf0, 0x6b, 0x03, 0x1c, 0x55, 0x7f, + 0x1b, 0x98, 0xb5, 0x88, 0xec, 0x41, 0x3a, 0xda, 0x69, 0xf6, 0xdf, 0x84, 0x5e, 0x56, 0x3d, 0xa9, + 0xdd, 0x3a, 0x7a, 0x33, 0xa5, 0x82, 0x86, 0x54, 0xe1, 0x0a, 0x28, 0xba, 0xd4, 0x43, 0x24, 0x68, + 0x53, 0x07, 0x47, 0x75, 0x3b, 0x5b, 0x5d, 0x0c, 0x7b, 0x66, 0xb1, 0x3e, 0x18, 0x46, 0x49, 0x0c, + 0x7c, 0x1d, 0x14, 0x5d, 0xfc, 0x45, 0x6c, 0x92, 0x57, 0x26, 0xc7, 0xb5, 0x5e, 0xb1, 0x3e, 0x98, + 0x42, 0x49, 0x1c, 0xbc, 0x03, 0xca, 0x42, 0xc9, 0xd6, 0x36, 0x6e, 0xdd, 0x12, 0xb4, 0x4d, 0xef, + 0x62, 0x59, 0x68, 0x1b, 0x84, 0x39, 0xc4, 0x13, 0xb2, 0x76, 0x0a, 0x8a, 0xc9, 0x0a, 0x7b, 0x66, + 0xb9, 0x31, 0x11, 0x89, 0xf6, 0x60, 0xb2, 0xee, 0xe5, 0xc1, 0xd9, 0x89, 0x1d, 0x03, 0x5e, 0x06, + 0xd0, 0xdf, 0xe2, 0x84, 0x75, 0x49, 0xf3, 0xbd, 0xe8, 0x98, 0x90, 0xfd, 0x5a, 0xae, 0x41, 0xbe, + 0x7a, 0x52, 0x6e, 0x91, 0x1b, 0x23, 0xb3, 0x68, 0x8c, 0x05, 0x74, 0xc0, 0x11, 0xb9, 0x71, 0xa2, + 0x2c, 0x53, 0x7d, 0x34, 0x4c, 0xb7, 0x2b, 0xff, 0x17, 0xf6, 0xcc, 0x23, 0xd7, 0x92, 0x24, 0x28, + 0xcd, 0x09, 0xd7, 0xc1, 0xa2, 0xd3, 0x61, 0x8c, 0x78, 0x62, 0x28, 0xeb, 0xa7, 0x74, 0xd6, 0x17, + 0x6b, 0xe9, 0x69, 0x34, 0x8c, 0x97, 0x14, 0x4d, 0xc2, 0x29, 0x23, 0xcd, 0x98, 0xa2, 0x90, 0xa6, + 0x78, 0x37, 0x3d, 0x8d, 0x86, 0xf1, 0xd0, 0x05, 0xa6, 0x66, 0xcd, 0x5c, 0xc1, 0x59, 0x45, 0xf9, + 0x42, 0xd8, 0x33, 0xcd, 0xda, 0x64, 0x28, 0xda, 0x8b, 0xcb, 0xfa, 0x33, 0x07, 0x40, 0x9d, 0x08, + 0x46, 0x1d, 0xb5, 0x63, 0xd6, 0x52, 0x5d, 0x7a, 0x79, 0xa8, 0x4b, 0x1f, 0xd3, 0x48, 0x75, 0xf5, + 0x49, 0x74, 0x64, 0x0c, 0xe6, 0x7c, 0xb5, 0x33, 0xf4, 0xba, 0xbc, 0x35, 0xc5, 0xf6, 0x8a, 0x4f, + 0xcb, 0x98, 0xb8, 0x0a, 0x64, 0xf3, 0xd3, 0x5b, 0x4d, 0x13, 0xc3, 0x8f, 0x40, 0x21, 0xf0, 0x9b, + 0xfd, 0x33, 0xed, 0xcd, 0x29, 0x04, 0x36, 0xfc, 0x26, 0x4f, 0xd1, 0xcf, 0xcb, 0x88, 0xe4, 0x28, + 0x52, 0x94, 0x90, 0x82, 0xf9, 0xfe, 0x75, 0x4e, 0xad, 0x56, 0x71, 0xf5, 0x9d, 0x29, 0xe8, 0x91, + 0x36, 0x4d, 0x49, 0x2c, 0xc8, 0xce, 0xd8, 0x9f, 0x41, 0x31, 0xbd, 0xf5, 0x57, 0x0e, 0x2c, 0x68, + 0x60, 0xb4, 0x41, 0xfe, 0xe5, 0x7c, 0x47, 0xe7, 0xfa, 0x33, 0xcb, 0x77, 0x44, 0xff, 0x4c, 0xf3, + 0x1d, 0x49, 0x64, 0xe5, 0xfb, 0xfb, 0x1c, 0x80, 0xa3, 0x05, 0x06, 0x3d, 0x30, 0x17, 0xb5, 0xb6, + 0x03, 0x3e, 0x0e, 0xe2, 0x93, 0x5b, 0x77, 0x7e, 0xad, 0x22, 0xaf, 0xab, 0xae, 0xd2, 0xbf, 0x3e, + 0xb8, 0xd6, 0xc6, 0xd7, 0xc5, 0x7a, 0x3c, 0x83, 0x12, 0x28, 0x48, 0x40, 0x31, 0xb2, 0xde, 0xc4, + 0xed, 0x4e, 0xff, 0x1a, 0x32, 0xf1, 0x94, 0xb6, 0xfb, 0x61, 0xdb, 0x1f, 0x74, 0xb0, 0x27, 0xa8, + 0xd8, 0x1d, 0x9c, 0x17, 0x8d, 0x01, 0x15, 0x4a, 0xf2, 0x5a, 0x3f, 0x0e, 0x67, 0x28, 0xaa, 0xcb, + 0xff, 0x42, 0x86, 0xb6, 0xc1, 0x82, 0xee, 0x6e, 0x4f, 0x93, 0xa2, 0x13, 0x5a, 0x65, 0xa1, 0x96, + 0xe0, 0x42, 0x29, 0x66, 0xeb, 0x67, 0x03, 0x1c, 0x1b, 0x6e, 0x23, 0x43, 0x2e, 0x1b, 0xfb, 0x72, + 0xf9, 0x2e, 0x80, 0x51, 0xc0, 0xeb, 0x5d, 0xc2, 0x70, 0x8b, 0x44, 0x8e, 0xe7, 0x9e, 0xc8, 0xf1, + 0xf8, 0x9a, 0xd9, 0x18, 0x61, 0x44, 0x63, 0x54, 0xac, 0x5f, 0xd2, 0x41, 0x44, 0xeb, 0xfc, 0x24, + 0x41, 0x7c, 0x09, 0x8e, 0xeb, 0xec, 0x1c, 0x40, 0x14, 0x67, 0xb4, 0xd8, 0xf1, 0xda, 0x28, 0x25, + 0x1a, 0xa7, 0x63, 0xfd, 0x94, 0x03, 0x27, 0xc6, 0x35, 0x5d, 0x58, 0xd7, 0xcf, 0xc6, 0x28, 0x8a, + 0x4b, 0xc9, 0x67, 0xe3, 0xe3, 0x9e, 0x79, 0x7e, 0xe2, 0x9b, 0xa0, 0x4f, 0x98, 0x78, 0x63, 0x7e, + 0x08, 0x4a, 0xa9, 0x2c, 0x26, 0xce, 0x4f, 0x7d, 0x81, 0xfb, 0x7f, 0xd8, 0x33, 0x4b, 0x8d, 0x0c, + 0x0c, 0xca, 0xb4, 0x96, 0x0f, 0x8d, 0x31, 0x55, 0xf0, 0x64, 0xe5, 0x7b, 0x72, 0x8a, 0x0a, 0xb8, + 0x37, 0x9a, 0xb9, 0xa8, 0x0a, 0x0e, 0x38, 0x73, 0x9f, 0x80, 0xd3, 0xe9, 0x85, 0x1b, 0x4d, 0xdd, + 0xd9, 0xb0, 0x67, 0x9e, 0xae, 0x65, 0x81, 0x50, 0xb6, 0x7d, 0x56, 0xf5, 0xe5, 0x9f, 0x53, 0xf5, + 0xfd, 0x90, 0x03, 0xb3, 0xea, 0xca, 0xf8, 0x1c, 0xbe, 0x19, 0x6c, 0xa6, 0xbe, 0x19, 0xac, 0x4d, + 0xd1, 0x82, 0x95, 0x87, 0x99, 0x5f, 0x08, 0x3e, 0x1b, 0xfa, 0x42, 0x70, 0x71, 0x6a, 0xe6, 0xc9, + 0xdf, 0x03, 0x2e, 0x81, 0xc3, 0xb1, 0x03, 0xf0, 0x82, 0x3c, 0xed, 0xf5, 0x5d, 0xd8, 0x50, 0x6b, + 0x1f, 0x3f, 0x1d, 0xe3, 0x4b, 0x70, 0x8c, 0xb0, 0x28, 0x28, 0x26, 0x14, 0xa6, 0x33, 0x96, 0x68, + 0x4e, 0xda, 0xc4, 0x11, 0x3e, 0xd3, 0x47, 0x48, 0x8c, 0xbe, 0xa9, 0xc7, 0x51, 0x8c, 0xa8, 0x9e, + 0xbb, 0xff, 0xa8, 0x3c, 0xf3, 0xe0, 0x51, 0x79, 0xe6, 0xe1, 0xa3, 0xf2, 0xcc, 0x57, 0x61, 0xd9, + 0xb8, 0x1f, 0x96, 0x8d, 0x07, 0x61, 0xd9, 0x78, 0x18, 0x96, 0x8d, 0xdf, 0xc2, 0xb2, 0xf1, 0xed, + 0xef, 0xe5, 0x99, 0x8f, 0x73, 0xdd, 0x95, 0x7f, 0x02, 0x00, 0x00, 0xff, 0xff, 0x5d, 0x20, 0x64, + 0x54, 0x9f, 0x14, 0x00, 0x00, } diff --git a/vendor/k8s.io/client-go/pkg/apis/autoscaling/v1/generated.proto b/vendor/k8s.io/client-go/pkg/apis/autoscaling/v1/generated.proto index 4953624a..c2cc6c2e 100644 --- a/vendor/k8s.io/client-go/pkg/apis/autoscaling/v1/generated.proto +++ b/vendor/k8s.io/client-go/pkg/apis/autoscaling/v1/generated.proto @@ -19,14 +19,13 @@ limitations under the License. syntax = 'proto2'; -package k8s.io.kubernetes.pkg.apis.autoscaling.v1; +package k8s.io.client_go.pkg.apis.autoscaling.v1; import "k8s.io/apimachinery/pkg/api/resource/generated.proto"; import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; import "k8s.io/kubernetes/pkg/api/v1/generated.proto"; // Package-wide variables from generator "generated". @@ -34,7 +33,7 @@ option go_package = "v1"; // CrossVersionObjectReference contains enough information to let you identify the referred resource. message CrossVersionObjectReference { - // Kind of the referent; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds" + // Kind of the referent; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds" optional string kind = 1; // Name of the referent; More info: http://kubernetes.io/docs/user-guide/identifiers#names @@ -47,11 +46,11 @@ message CrossVersionObjectReference { // configuration of a horizontal pod autoscaler. message HorizontalPodAutoscaler { - // Standard object metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata + // Standard object metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; - // behaviour of autoscaler. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. + // behaviour of autoscaler. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. // +optional optional HorizontalPodAutoscalerSpec spec = 2; @@ -60,6 +59,30 @@ message HorizontalPodAutoscaler { optional HorizontalPodAutoscalerStatus status = 3; } +// HorizontalPodAutoscalerCondition describes the state of +// a HorizontalPodAutoscaler at a certain point. +message HorizontalPodAutoscalerCondition { + // type describes the current condition + optional string type = 1; + + // status is the status of the condition (True, False, Unknown) + optional string status = 2; + + // lastTransitionTime is the last time the condition transitioned from + // one status to another + // +optional + optional k8s.io.apimachinery.pkg.apis.meta.v1.Time lastTransitionTime = 3; + + // reason is the reason for the condition's last transition. + // +optional + optional string reason = 4; + + // message is a human-readable explanation containing details about + // the transition + // +optional + optional string message = 5; +} + // list of horizontal pod autoscaler objects. message HorizontalPodAutoscalerList { // Standard list metadata. @@ -230,7 +253,7 @@ message ResourceMetricSource { // +optional optional int32 targetAverageUtilization = 2; - // targetAverageValue is the the target value of the average of the + // targetAverageValue is the target value of the average of the // resource metric across all relevant pods, as a raw value (instead of as // a percentage of the request), similar to the "pods" metric source type. // +optional @@ -254,7 +277,7 @@ message ResourceMetricStatus { // +optional optional int32 currentAverageUtilization = 2; - // currentAverageValue is the the current value of the average of the + // currentAverageValue is the current value of the average of the // resource metric across all relevant pods, as a raw value (instead of as // a percentage of the request), similar to the "pods" metric source type. // It will always be set, regardless of the corresponding metric specification. @@ -263,15 +286,15 @@ message ResourceMetricStatus { // Scale represents a scaling request for a resource. message Scale { - // Standard object metadata; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata. + // Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; - // defines the behavior of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. + // defines the behavior of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. // +optional optional ScaleSpec spec = 2; - // current status of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. Read-only. + // current status of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. Read-only. // +optional optional ScaleStatus status = 3; } diff --git a/vendor/k8s.io/client-go/pkg/apis/autoscaling/v1/types.generated.go b/vendor/k8s.io/client-go/pkg/apis/autoscaling/v1/types.generated.go index 36fc8b7b..fc01e4d9 100644 --- a/vendor/k8s.io/client-go/pkg/apis/autoscaling/v1/types.generated.go +++ b/vendor/k8s.io/client-go/pkg/apis/autoscaling/v1/types.generated.go @@ -4278,6 +4278,423 @@ func (x *MetricStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } +func (x HorizontalPodAutoscalerConditionType) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x)) + } +} + +func (x *HorizontalPodAutoscalerConditionType) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + *((*string)(x)) = r.DecodeString() + } +} + +func (x *HorizontalPodAutoscalerCondition) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [5]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[2] = true + yyq2[3] = x.Reason != "" + yyq2[4] = x.Message != "" + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(5) + } else { + yynn2 = 2 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + x.Type.CodecEncodeSelf(e) + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("type")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + x.Type.CodecEncodeSelf(e) + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yysf7 := &x.Status + yysf7.CodecEncodeSelf(e) + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("status")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yysf8 := &x.Status + yysf8.CodecEncodeSelf(e) + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yy10 := &x.LastTransitionTime + yym11 := z.EncBinary() + _ = yym11 + if false { + } else if z.HasExtensions() && z.EncExt(yy10) { + } else if yym11 { + z.EncBinaryMarshal(yy10) + } else if !yym11 && z.IsJSONHandle() { + z.EncJSONMarshal(yy10) + } else { + z.EncFallback(yy10) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("lastTransitionTime")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy12 := &x.LastTransitionTime + yym13 := z.EncBinary() + _ = yym13 + if false { + } else if z.HasExtensions() && z.EncExt(yy12) { + } else if yym13 { + z.EncBinaryMarshal(yy12) + } else if !yym13 && z.IsJSONHandle() { + z.EncJSONMarshal(yy12) + } else { + z.EncFallback(yy12) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[3] { + yym15 := z.EncBinary() + _ = yym15 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Reason)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[3] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("reason")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym16 := z.EncBinary() + _ = yym16 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Reason)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[4] { + yym18 := z.EncBinary() + _ = yym18 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Message)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[4] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("message")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym19 := z.EncBinary() + _ = yym19 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Message)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *HorizontalPodAutoscalerCondition) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *HorizontalPodAutoscalerCondition) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "type": + if r.TryDecodeAsNil() { + x.Type = "" + } else { + yyv4 := &x.Type + yyv4.CodecDecodeSelf(d) + } + case "status": + if r.TryDecodeAsNil() { + x.Status = "" + } else { + yyv5 := &x.Status + yyv5.CodecDecodeSelf(d) + } + case "lastTransitionTime": + if r.TryDecodeAsNil() { + x.LastTransitionTime = pkg1_v1.Time{} + } else { + yyv6 := &x.LastTransitionTime + yym7 := z.DecBinary() + _ = yym7 + if false { + } else if z.HasExtensions() && z.DecExt(yyv6) { + } else if yym7 { + z.DecBinaryUnmarshal(yyv6) + } else if !yym7 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv6) + } else { + z.DecFallback(yyv6, false) + } + } + case "reason": + if r.TryDecodeAsNil() { + x.Reason = "" + } else { + yyv8 := &x.Reason + yym9 := z.DecBinary() + _ = yym9 + if false { + } else { + *((*string)(yyv8)) = r.DecodeString() + } + } + case "message": + if r.TryDecodeAsNil() { + x.Message = "" + } else { + yyv10 := &x.Message + yym11 := z.DecBinary() + _ = yym11 + if false { + } else { + *((*string)(yyv10)) = r.DecodeString() + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *HorizontalPodAutoscalerCondition) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj12 int + var yyb12 bool + var yyhl12 bool = l >= 0 + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Type = "" + } else { + yyv13 := &x.Type + yyv13.CodecDecodeSelf(d) + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Status = "" + } else { + yyv14 := &x.Status + yyv14.CodecDecodeSelf(d) + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.LastTransitionTime = pkg1_v1.Time{} + } else { + yyv15 := &x.LastTransitionTime + yym16 := z.DecBinary() + _ = yym16 + if false { + } else if z.HasExtensions() && z.DecExt(yyv15) { + } else if yym16 { + z.DecBinaryUnmarshal(yyv15) + } else if !yym16 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv15) + } else { + z.DecFallback(yyv15, false) + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Reason = "" + } else { + yyv17 := &x.Reason + yym18 := z.DecBinary() + _ = yym18 + if false { + } else { + *((*string)(yyv17)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Message = "" + } else { + yyv19 := &x.Message + yym20 := z.DecBinary() + _ = yym20 + if false { + } else { + *((*string)(yyv19)) = r.DecodeString() + } + } + for { + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj12-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + func (x *ObjectMetricStatus) CodecEncodeSelf(e *codec1978.Encoder) { var h codecSelfer1234 z, r := codec1978.GenHelperEncoder(e) diff --git a/vendor/k8s.io/client-go/pkg/apis/autoscaling/v1/types.go b/vendor/k8s.io/client-go/pkg/apis/autoscaling/v1/types.go index 47fd31e2..4132f529 100644 --- a/vendor/k8s.io/client-go/pkg/apis/autoscaling/v1/types.go +++ b/vendor/k8s.io/client-go/pkg/apis/autoscaling/v1/types.go @@ -24,7 +24,7 @@ import ( // CrossVersionObjectReference contains enough information to let you identify the referred resource. type CrossVersionObjectReference struct { - // Kind of the referent; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds" + // Kind of the referent; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds" Kind string `json:"kind" protobuf:"bytes,1,opt,name=kind"` // Name of the referent; More info: http://kubernetes.io/docs/user-guide/identifiers#names Name string `json:"name" protobuf:"bytes,2,opt,name=name"` @@ -77,11 +77,11 @@ type HorizontalPodAutoscalerStatus struct { // configuration of a horizontal pod autoscaler. type HorizontalPodAutoscaler struct { metav1.TypeMeta `json:",inline"` - // Standard object metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata + // Standard object metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` - // behaviour of autoscaler. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. + // behaviour of autoscaler. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. // +optional Spec HorizontalPodAutoscalerSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` @@ -104,15 +104,15 @@ type HorizontalPodAutoscalerList struct { // Scale represents a scaling request for a resource. type Scale struct { metav1.TypeMeta `json:",inline"` - // Standard object metadata; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata. + // Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` - // defines the behavior of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. + // defines the behavior of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. // +optional Spec ScaleSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` - // current status of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. Read-only. + // current status of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. Read-only. // +optional Status ScaleStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } @@ -221,7 +221,7 @@ type ResourceMetricSource struct { // the requested value of the resource for the pods. // +optional TargetAverageUtilization *int32 `json:"targetAverageUtilization,omitempty" protobuf:"varint,2,opt,name=targetAverageUtilization"` - // targetAverageValue is the the target value of the average of the + // targetAverageValue is the target value of the average of the // resource metric across all relevant pods, as a raw value (instead of as // a percentage of the request), similar to the "pods" metric source type. // +optional @@ -251,6 +251,42 @@ type MetricStatus struct { Resource *ResourceMetricStatus `json:"resource,omitempty" protobuf:"bytes,4,opt,name=resource"` } +// HorizontalPodAutoscalerConditionType are the valid conditions of +// a HorizontalPodAutoscaler. +type HorizontalPodAutoscalerConditionType string + +var ( + // ScalingActive indicates that the HPA controller is able to scale if necessary: + // it's correctly configured, can fetch the desired metrics, and isn't disabled. + ScalingActive HorizontalPodAutoscalerConditionType = "ScalingActive" + // AbleToScale indicates a lack of transient issues which prevent scaling from occuring, + // such as being in a backoff window, or being unable to access/update the target scale. + AbleToScale HorizontalPodAutoscalerConditionType = "AbleToScale" + // ScalingLimited indicates that the calculated scale based on metrics would be above or + // below the range for the HPA, and has thus been capped. + ScalingLimited HorizontalPodAutoscalerConditionType = "ScalingLimited" +) + +// HorizontalPodAutoscalerCondition describes the state of +// a HorizontalPodAutoscaler at a certain point. +type HorizontalPodAutoscalerCondition struct { + // type describes the current condition + Type HorizontalPodAutoscalerConditionType `json:"type" protobuf:"bytes,1,name=type"` + // status is the status of the condition (True, False, Unknown) + Status v1.ConditionStatus `json:"status" protobuf:"bytes,2,name=status"` + // lastTransitionTime is the last time the condition transitioned from + // one status to another + // +optional + LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty" protobuf:"bytes,3,opt,name=lastTransitionTime"` + // reason is the reason for the condition's last transition. + // +optional + Reason string `json:"reason,omitempty" protobuf:"bytes,4,opt,name=reason"` + // message is a human-readable explanation containing details about + // the transition + // +optional + Message string `json:"message,omitempty" protobuf:"bytes,5,opt,name=message"` +} + // ObjectMetricStatus indicates the current value of a metric describing a // kubernetes object (for example, hits-per-second on an Ingress object). type ObjectMetricStatus struct { @@ -288,7 +324,7 @@ type ResourceMetricStatus struct { // specification. // +optional CurrentAverageUtilization *int32 `json:"currentAverageUtilization,omitempty" protobuf:"bytes,2,opt,name=currentAverageUtilization"` - // currentAverageValue is the the current value of the average of the + // currentAverageValue is the current value of the average of the // resource metric across all relevant pods, as a raw value (instead of as // a percentage of the request), similar to the "pods" metric source type. // It will always be set, regardless of the corresponding metric specification. diff --git a/vendor/k8s.io/client-go/pkg/apis/autoscaling/v1/types_swagger_doc_generated.go b/vendor/k8s.io/client-go/pkg/apis/autoscaling/v1/types_swagger_doc_generated.go index 01d205f8..7f84c2d9 100644 --- a/vendor/k8s.io/client-go/pkg/apis/autoscaling/v1/types_swagger_doc_generated.go +++ b/vendor/k8s.io/client-go/pkg/apis/autoscaling/v1/types_swagger_doc_generated.go @@ -29,7 +29,7 @@ package v1 // AUTO-GENERATED FUNCTIONS START HERE var map_CrossVersionObjectReference = map[string]string{ "": "CrossVersionObjectReference contains enough information to let you identify the referred resource.", - "kind": "Kind of the referent; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds\"", + "kind": "Kind of the referent; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds\"", "name": "Name of the referent; More info: http://kubernetes.io/docs/user-guide/identifiers#names", "apiVersion": "API version of the referent", } @@ -40,8 +40,8 @@ func (CrossVersionObjectReference) SwaggerDoc() map[string]string { var map_HorizontalPodAutoscaler = map[string]string{ "": "configuration of a horizontal pod autoscaler.", - "metadata": "Standard object metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", - "spec": "behaviour of autoscaler. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status.", + "metadata": "Standard object metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "behaviour of autoscaler. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status.", "status": "current information about the autoscaler.", } @@ -49,6 +49,19 @@ func (HorizontalPodAutoscaler) SwaggerDoc() map[string]string { return map_HorizontalPodAutoscaler } +var map_HorizontalPodAutoscalerCondition = map[string]string{ + "": "HorizontalPodAutoscalerCondition describes the state of a HorizontalPodAutoscaler at a certain point.", + "type": "type describes the current condition", + "status": "status is the status of the condition (True, False, Unknown)", + "lastTransitionTime": "lastTransitionTime is the last time the condition transitioned from one status to another", + "reason": "reason is the reason for the condition's last transition.", + "message": "message is a human-readable explanation containing details about the transition", +} + +func (HorizontalPodAutoscalerCondition) SwaggerDoc() map[string]string { + return map_HorizontalPodAutoscalerCondition +} + var map_HorizontalPodAutoscalerList = map[string]string{ "": "list of horizontal pod autoscaler objects.", "metadata": "Standard list metadata.", @@ -154,7 +167,7 @@ var map_ResourceMetricSource = map[string]string{ "": "ResourceMetricSource indicates how to scale on a resource metric known to Kubernetes, as specified in requests and limits, describing each pod in the current scale target (e.g. CPU or memory). The values will be averaged together before being compared to the target. Such metrics are built in to Kubernetes, and have special scaling options on top of those available to normal per-pod metrics using the \"pods\" source. Only one \"target\" type should be set.", "name": "name is the name of the resource in question.", "targetAverageUtilization": "targetAverageUtilization is the target value of the average of the resource metric across all relevant pods, represented as a percentage of the requested value of the resource for the pods.", - "targetAverageValue": "targetAverageValue is the the target value of the average of the resource metric across all relevant pods, as a raw value (instead of as a percentage of the request), similar to the \"pods\" metric source type.", + "targetAverageValue": "targetAverageValue is the target value of the average of the resource metric across all relevant pods, as a raw value (instead of as a percentage of the request), similar to the \"pods\" metric source type.", } func (ResourceMetricSource) SwaggerDoc() map[string]string { @@ -165,7 +178,7 @@ var map_ResourceMetricStatus = map[string]string{ "": "ResourceMetricStatus indicates the current value of a resource metric known to Kubernetes, as specified in requests and limits, describing each pod in the current scale target (e.g. CPU or memory). Such metrics are built in to Kubernetes, and have special scaling options on top of those available to normal per-pod metrics using the \"pods\" source.", "name": "name is the name of the resource in question.", "currentAverageUtilization": "currentAverageUtilization is the current value of the average of the resource metric across all relevant pods, represented as a percentage of the requested value of the resource for the pods. It will only be present if `targetAverageValue` was set in the corresponding metric specification.", - "currentAverageValue": "currentAverageValue is the the current value of the average of the resource metric across all relevant pods, as a raw value (instead of as a percentage of the request), similar to the \"pods\" metric source type. It will always be set, regardless of the corresponding metric specification.", + "currentAverageValue": "currentAverageValue is the current value of the average of the resource metric across all relevant pods, as a raw value (instead of as a percentage of the request), similar to the \"pods\" metric source type. It will always be set, regardless of the corresponding metric specification.", } func (ResourceMetricStatus) SwaggerDoc() map[string]string { @@ -174,9 +187,9 @@ func (ResourceMetricStatus) SwaggerDoc() map[string]string { var map_Scale = map[string]string{ "": "Scale represents a scaling request for a resource.", - "metadata": "Standard object metadata; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata.", - "spec": "defines the behavior of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status.", - "status": "current status of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. Read-only.", + "metadata": "Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata.", + "spec": "defines the behavior of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status.", + "status": "current status of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. Read-only.", } func (Scale) SwaggerDoc() map[string]string { diff --git a/vendor/k8s.io/client-go/pkg/apis/autoscaling/v1/zz_generated.conversion.go b/vendor/k8s.io/client-go/pkg/apis/autoscaling/v1/zz_generated.conversion.go index cd87d268..12c06484 100644 --- a/vendor/k8s.io/client-go/pkg/apis/autoscaling/v1/zz_generated.conversion.go +++ b/vendor/k8s.io/client-go/pkg/apis/autoscaling/v1/zz_generated.conversion.go @@ -43,6 +43,8 @@ func RegisterConversions(scheme *runtime.Scheme) error { Convert_autoscaling_CrossVersionObjectReference_To_v1_CrossVersionObjectReference, Convert_v1_HorizontalPodAutoscaler_To_autoscaling_HorizontalPodAutoscaler, Convert_autoscaling_HorizontalPodAutoscaler_To_v1_HorizontalPodAutoscaler, + Convert_v1_HorizontalPodAutoscalerCondition_To_autoscaling_HorizontalPodAutoscalerCondition, + Convert_autoscaling_HorizontalPodAutoscalerCondition_To_v1_HorizontalPodAutoscalerCondition, Convert_v1_HorizontalPodAutoscalerList_To_autoscaling_HorizontalPodAutoscalerList, Convert_autoscaling_HorizontalPodAutoscalerList_To_v1_HorizontalPodAutoscalerList, Convert_v1_HorizontalPodAutoscalerSpec_To_autoscaling_HorizontalPodAutoscalerSpec, @@ -120,6 +122,34 @@ func autoConvert_autoscaling_HorizontalPodAutoscaler_To_v1_HorizontalPodAutoscal return nil } +func autoConvert_v1_HorizontalPodAutoscalerCondition_To_autoscaling_HorizontalPodAutoscalerCondition(in *HorizontalPodAutoscalerCondition, out *autoscaling.HorizontalPodAutoscalerCondition, s conversion.Scope) error { + out.Type = autoscaling.HorizontalPodAutoscalerConditionType(in.Type) + out.Status = autoscaling.ConditionStatus(in.Status) + out.LastTransitionTime = in.LastTransitionTime + out.Reason = in.Reason + out.Message = in.Message + return nil +} + +// Convert_v1_HorizontalPodAutoscalerCondition_To_autoscaling_HorizontalPodAutoscalerCondition is an autogenerated conversion function. +func Convert_v1_HorizontalPodAutoscalerCondition_To_autoscaling_HorizontalPodAutoscalerCondition(in *HorizontalPodAutoscalerCondition, out *autoscaling.HorizontalPodAutoscalerCondition, s conversion.Scope) error { + return autoConvert_v1_HorizontalPodAutoscalerCondition_To_autoscaling_HorizontalPodAutoscalerCondition(in, out, s) +} + +func autoConvert_autoscaling_HorizontalPodAutoscalerCondition_To_v1_HorizontalPodAutoscalerCondition(in *autoscaling.HorizontalPodAutoscalerCondition, out *HorizontalPodAutoscalerCondition, s conversion.Scope) error { + out.Type = HorizontalPodAutoscalerConditionType(in.Type) + out.Status = api_v1.ConditionStatus(in.Status) + out.LastTransitionTime = in.LastTransitionTime + out.Reason = in.Reason + out.Message = in.Message + return nil +} + +// Convert_autoscaling_HorizontalPodAutoscalerCondition_To_v1_HorizontalPodAutoscalerCondition is an autogenerated conversion function. +func Convert_autoscaling_HorizontalPodAutoscalerCondition_To_v1_HorizontalPodAutoscalerCondition(in *autoscaling.HorizontalPodAutoscalerCondition, out *HorizontalPodAutoscalerCondition, s conversion.Scope) error { + return autoConvert_autoscaling_HorizontalPodAutoscalerCondition_To_v1_HorizontalPodAutoscalerCondition(in, out, s) +} + func autoConvert_v1_HorizontalPodAutoscalerList_To_autoscaling_HorizontalPodAutoscalerList(in *HorizontalPodAutoscalerList, out *autoscaling.HorizontalPodAutoscalerList, s conversion.Scope) error { out.ListMeta = in.ListMeta if in.Items != nil { @@ -197,6 +227,7 @@ func autoConvert_autoscaling_HorizontalPodAutoscalerStatus_To_v1_HorizontalPodAu out.CurrentReplicas = in.CurrentReplicas out.DesiredReplicas = in.DesiredReplicas // WARNING: in.CurrentMetrics requires manual conversion: does not exist in peer-type + // WARNING: in.Conditions requires manual conversion: does not exist in peer-type return nil } diff --git a/vendor/k8s.io/client-go/pkg/apis/autoscaling/v1/zz_generated.deepcopy.go b/vendor/k8s.io/client-go/pkg/apis/autoscaling/v1/zz_generated.deepcopy.go index db719174..94fdc46d 100644 --- a/vendor/k8s.io/client-go/pkg/apis/autoscaling/v1/zz_generated.deepcopy.go +++ b/vendor/k8s.io/client-go/pkg/apis/autoscaling/v1/zz_generated.deepcopy.go @@ -38,6 +38,7 @@ func RegisterDeepCopies(scheme *runtime.Scheme) error { return scheme.AddGeneratedDeepCopyFuncs( conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_CrossVersionObjectReference, InType: reflect.TypeOf(&CrossVersionObjectReference{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_HorizontalPodAutoscaler, InType: reflect.TypeOf(&HorizontalPodAutoscaler{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_HorizontalPodAutoscalerCondition, InType: reflect.TypeOf(&HorizontalPodAutoscalerCondition{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_HorizontalPodAutoscalerList, InType: reflect.TypeOf(&HorizontalPodAutoscalerList{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_HorizontalPodAutoscalerSpec, InType: reflect.TypeOf(&HorizontalPodAutoscalerSpec{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_HorizontalPodAutoscalerStatus, InType: reflect.TypeOf(&HorizontalPodAutoscalerStatus{})}, @@ -86,6 +87,17 @@ func DeepCopy_v1_HorizontalPodAutoscaler(in interface{}, out interface{}, c *con } } +// DeepCopy_v1_HorizontalPodAutoscalerCondition is an autogenerated deepcopy function. +func DeepCopy_v1_HorizontalPodAutoscalerCondition(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*HorizontalPodAutoscalerCondition) + out := out.(*HorizontalPodAutoscalerCondition) + *out = *in + out.LastTransitionTime = in.LastTransitionTime.DeepCopy() + return nil + } +} + // DeepCopy_v1_HorizontalPodAutoscalerList is an autogenerated deepcopy function. func DeepCopy_v1_HorizontalPodAutoscalerList(in interface{}, out interface{}, c *conversion.Cloner) error { { diff --git a/vendor/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/generated.pb.go b/vendor/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/generated.pb.go index 87b1faa6..47fb3d5f 100644 --- a/vendor/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/generated.pb.go +++ b/vendor/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/generated.pb.go @@ -27,6 +27,7 @@ limitations under the License. It has these top-level messages: CrossVersionObjectReference HorizontalPodAutoscaler + HorizontalPodAutoscalerCondition HorizontalPodAutoscalerList HorizontalPodAutoscalerSpec HorizontalPodAutoscalerStatus @@ -76,59 +77,66 @@ func (m *HorizontalPodAutoscaler) Reset() { *m = HorizontalPo func (*HorizontalPodAutoscaler) ProtoMessage() {} func (*HorizontalPodAutoscaler) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{1} } +func (m *HorizontalPodAutoscalerCondition) Reset() { *m = HorizontalPodAutoscalerCondition{} } +func (*HorizontalPodAutoscalerCondition) ProtoMessage() {} +func (*HorizontalPodAutoscalerCondition) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{2} +} + func (m *HorizontalPodAutoscalerList) Reset() { *m = HorizontalPodAutoscalerList{} } func (*HorizontalPodAutoscalerList) ProtoMessage() {} func (*HorizontalPodAutoscalerList) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{2} + return fileDescriptorGenerated, []int{3} } func (m *HorizontalPodAutoscalerSpec) Reset() { *m = HorizontalPodAutoscalerSpec{} } func (*HorizontalPodAutoscalerSpec) ProtoMessage() {} func (*HorizontalPodAutoscalerSpec) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{3} + return fileDescriptorGenerated, []int{4} } func (m *HorizontalPodAutoscalerStatus) Reset() { *m = HorizontalPodAutoscalerStatus{} } func (*HorizontalPodAutoscalerStatus) ProtoMessage() {} func (*HorizontalPodAutoscalerStatus) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{4} + return fileDescriptorGenerated, []int{5} } func (m *MetricSpec) Reset() { *m = MetricSpec{} } func (*MetricSpec) ProtoMessage() {} -func (*MetricSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{5} } +func (*MetricSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{6} } func (m *MetricStatus) Reset() { *m = MetricStatus{} } func (*MetricStatus) ProtoMessage() {} -func (*MetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{6} } +func (*MetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{7} } func (m *ObjectMetricSource) Reset() { *m = ObjectMetricSource{} } func (*ObjectMetricSource) ProtoMessage() {} -func (*ObjectMetricSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{7} } +func (*ObjectMetricSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{8} } func (m *ObjectMetricStatus) Reset() { *m = ObjectMetricStatus{} } func (*ObjectMetricStatus) ProtoMessage() {} -func (*ObjectMetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{8} } +func (*ObjectMetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{9} } func (m *PodsMetricSource) Reset() { *m = PodsMetricSource{} } func (*PodsMetricSource) ProtoMessage() {} -func (*PodsMetricSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{9} } +func (*PodsMetricSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{10} } func (m *PodsMetricStatus) Reset() { *m = PodsMetricStatus{} } func (*PodsMetricStatus) ProtoMessage() {} -func (*PodsMetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{10} } +func (*PodsMetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{11} } func (m *ResourceMetricSource) Reset() { *m = ResourceMetricSource{} } func (*ResourceMetricSource) ProtoMessage() {} -func (*ResourceMetricSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{11} } +func (*ResourceMetricSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{12} } func (m *ResourceMetricStatus) Reset() { *m = ResourceMetricStatus{} } func (*ResourceMetricStatus) ProtoMessage() {} -func (*ResourceMetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{12} } +func (*ResourceMetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{13} } func init() { proto.RegisterType((*CrossVersionObjectReference)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v2alpha1.CrossVersionObjectReference") proto.RegisterType((*HorizontalPodAutoscaler)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v2alpha1.HorizontalPodAutoscaler") + proto.RegisterType((*HorizontalPodAutoscalerCondition)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v2alpha1.HorizontalPodAutoscalerCondition") proto.RegisterType((*HorizontalPodAutoscalerList)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v2alpha1.HorizontalPodAutoscalerList") proto.RegisterType((*HorizontalPodAutoscalerSpec)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v2alpha1.HorizontalPodAutoscalerSpec") proto.RegisterType((*HorizontalPodAutoscalerStatus)(nil), "k8s.io.client-go.pkg.apis.autoscaling.v2alpha1.HorizontalPodAutoscalerStatus") @@ -213,6 +221,48 @@ func (m *HorizontalPodAutoscaler) MarshalTo(dAtA []byte) (int, error) { return i, nil } +func (m *HorizontalPodAutoscalerCondition) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *HorizontalPodAutoscalerCondition) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.Type))) + i += copy(dAtA[i:], m.Type) + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.Status))) + i += copy(dAtA[i:], m.Status) + dAtA[i] = 0x1a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.LastTransitionTime.Size())) + n4, err := m.LastTransitionTime.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n4 + dAtA[i] = 0x22 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.Reason))) + i += copy(dAtA[i:], m.Reason) + dAtA[i] = 0x2a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.Message))) + i += copy(dAtA[i:], m.Message) + return i, nil +} + func (m *HorizontalPodAutoscalerList) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -231,11 +281,11 @@ func (m *HorizontalPodAutoscalerList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n4, err := m.ListMeta.MarshalTo(dAtA[i:]) + n5, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n4 + i += n5 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -269,11 +319,11 @@ func (m *HorizontalPodAutoscalerSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ScaleTargetRef.Size())) - n5, err := m.ScaleTargetRef.MarshalTo(dAtA[i:]) + n6, err := m.ScaleTargetRef.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n5 + i += n6 if m.MinReplicas != nil { dAtA[i] = 0x10 i++ @@ -321,11 +371,11 @@ func (m *HorizontalPodAutoscalerStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.LastScaleTime.Size())) - n6, err := m.LastScaleTime.MarshalTo(dAtA[i:]) + n7, err := m.LastScaleTime.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n6 + i += n7 } dAtA[i] = 0x18 i++ @@ -345,6 +395,18 @@ func (m *HorizontalPodAutoscalerStatus) MarshalTo(dAtA []byte) (int, error) { i += n } } + if len(m.Conditions) > 0 { + for _, msg := range m.Conditions { + dAtA[i] = 0x32 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(msg.Size())) + n, err := msg.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n + } + } return i, nil } @@ -371,32 +433,32 @@ func (m *MetricSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Object.Size())) - n7, err := m.Object.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n7 - } - if m.Pods != nil { - dAtA[i] = 0x1a - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Pods.Size())) - n8, err := m.Pods.MarshalTo(dAtA[i:]) + n8, err := m.Object.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n8 } - if m.Resource != nil { - dAtA[i] = 0x22 + if m.Pods != nil { + dAtA[i] = 0x1a i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Resource.Size())) - n9, err := m.Resource.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.Pods.Size())) + n9, err := m.Pods.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n9 } + if m.Resource != nil { + dAtA[i] = 0x22 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Resource.Size())) + n10, err := m.Resource.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n10 + } return i, nil } @@ -423,32 +485,32 @@ func (m *MetricStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Object.Size())) - n10, err := m.Object.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n10 - } - if m.Pods != nil { - dAtA[i] = 0x1a - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Pods.Size())) - n11, err := m.Pods.MarshalTo(dAtA[i:]) + n11, err := m.Object.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n11 } - if m.Resource != nil { - dAtA[i] = 0x22 + if m.Pods != nil { + dAtA[i] = 0x1a i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Resource.Size())) - n12, err := m.Resource.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.Pods.Size())) + n12, err := m.Pods.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n12 } + if m.Resource != nil { + dAtA[i] = 0x22 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Resource.Size())) + n13, err := m.Resource.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n13 + } return i, nil } @@ -470,11 +532,11 @@ func (m *ObjectMetricSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Target.Size())) - n13, err := m.Target.MarshalTo(dAtA[i:]) + n14, err := m.Target.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n13 + i += n14 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.MetricName))) @@ -482,11 +544,11 @@ func (m *ObjectMetricSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.TargetValue.Size())) - n14, err := m.TargetValue.MarshalTo(dAtA[i:]) + n15, err := m.TargetValue.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n14 + i += n15 return i, nil } @@ -508,11 +570,11 @@ func (m *ObjectMetricStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Target.Size())) - n15, err := m.Target.MarshalTo(dAtA[i:]) + n16, err := m.Target.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n15 + i += n16 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.MetricName))) @@ -520,11 +582,11 @@ func (m *ObjectMetricStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.CurrentValue.Size())) - n16, err := m.CurrentValue.MarshalTo(dAtA[i:]) + n17, err := m.CurrentValue.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n16 + i += n17 return i, nil } @@ -550,11 +612,11 @@ func (m *PodsMetricSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.TargetAverageValue.Size())) - n17, err := m.TargetAverageValue.MarshalTo(dAtA[i:]) + n18, err := m.TargetAverageValue.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n17 + i += n18 return i, nil } @@ -580,11 +642,11 @@ func (m *PodsMetricStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.CurrentAverageValue.Size())) - n18, err := m.CurrentAverageValue.MarshalTo(dAtA[i:]) + n19, err := m.CurrentAverageValue.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n18 + i += n19 return i, nil } @@ -616,11 +678,11 @@ func (m *ResourceMetricSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.TargetAverageValue.Size())) - n19, err := m.TargetAverageValue.MarshalTo(dAtA[i:]) + n20, err := m.TargetAverageValue.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n19 + i += n20 } return i, nil } @@ -652,11 +714,11 @@ func (m *ResourceMetricStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.CurrentAverageValue.Size())) - n20, err := m.CurrentAverageValue.MarshalTo(dAtA[i:]) + n21, err := m.CurrentAverageValue.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n20 + i += n21 return i, nil } @@ -711,6 +773,22 @@ func (m *HorizontalPodAutoscaler) Size() (n int) { return n } +func (m *HorizontalPodAutoscalerCondition) Size() (n int) { + var l int + _ = l + l = len(m.Type) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.Status) + n += 1 + l + sovGenerated(uint64(l)) + l = m.LastTransitionTime.Size() + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.Reason) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.Message) + n += 1 + l + sovGenerated(uint64(l)) + return n +} + func (m *HorizontalPodAutoscalerList) Size() (n int) { var l int _ = l @@ -761,6 +839,12 @@ func (m *HorizontalPodAutoscalerStatus) Size() (n int) { n += 1 + l + sovGenerated(uint64(l)) } } + if len(m.Conditions) > 0 { + for _, e := range m.Conditions { + l = e.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + } return n } @@ -913,6 +997,20 @@ func (this *HorizontalPodAutoscaler) String() string { }, "") return s } +func (this *HorizontalPodAutoscalerCondition) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&HorizontalPodAutoscalerCondition{`, + `Type:` + fmt.Sprintf("%v", this.Type) + `,`, + `Status:` + fmt.Sprintf("%v", this.Status) + `,`, + `LastTransitionTime:` + strings.Replace(strings.Replace(this.LastTransitionTime.String(), "Time", "k8s_io_apimachinery_pkg_apis_meta_v1.Time", 1), `&`, ``, 1) + `,`, + `Reason:` + fmt.Sprintf("%v", this.Reason) + `,`, + `Message:` + fmt.Sprintf("%v", this.Message) + `,`, + `}`, + }, "") + return s +} func (this *HorizontalPodAutoscalerList) String() string { if this == nil { return "nil" @@ -947,6 +1045,7 @@ func (this *HorizontalPodAutoscalerStatus) String() string { `CurrentReplicas:` + fmt.Sprintf("%v", this.CurrentReplicas) + `,`, `DesiredReplicas:` + fmt.Sprintf("%v", this.DesiredReplicas) + `,`, `CurrentMetrics:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.CurrentMetrics), "MetricStatus", "MetricStatus", 1), `&`, ``, 1) + `,`, + `Conditions:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.Conditions), "HorizontalPodAutoscalerCondition", "HorizontalPodAutoscalerCondition", 1), `&`, ``, 1) + `,`, `}`, }, "") return s @@ -1332,6 +1431,202 @@ func (m *HorizontalPodAutoscaler) Unmarshal(dAtA []byte) error { } return nil } +func (m *HorizontalPodAutoscalerCondition) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: HorizontalPodAutoscalerCondition: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: HorizontalPodAutoscalerCondition: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Type", 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.Type = HorizontalPodAutoscalerConditionType(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Status", 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.Status = k8s_io_kubernetes_pkg_api_v1.ConditionStatus(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field LastTransitionTime", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.LastTransitionTime.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Reason", 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.Reason = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Message", 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.Message = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func (m *HorizontalPodAutoscalerList) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 @@ -1744,6 +2039,37 @@ func (m *HorizontalPodAutoscalerStatus) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Conditions", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Conditions = append(m.Conditions, HorizontalPodAutoscalerCondition{}) + if err := m.Conditions[len(m.Conditions)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipGenerated(dAtA[iNdEx:]) @@ -2988,81 +3314,89 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 1208 bytes of a gzipped FileDescriptorProto + // 1331 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x57, 0x5b, 0x6f, 0x1b, 0x45, - 0x14, 0x8e, 0x2f, 0x49, 0xc3, 0x38, 0x37, 0x26, 0x55, 0xea, 0x26, 0xd4, 0x8e, 0xf6, 0xa9, 0x54, - 0xb0, 0x4b, 0x4c, 0x41, 0x54, 0x08, 0xa1, 0xd8, 0x5c, 0x5a, 0x11, 0xa7, 0x61, 0x1a, 0x2a, 0x04, - 0x48, 0x30, 0x59, 0x4f, 0x9c, 0x21, 0xde, 0x8b, 0x76, 0x66, 0xad, 0x26, 0x52, 0x25, 0x7e, 0x00, - 0x0f, 0xbc, 0xf0, 0x13, 0x90, 0xf8, 0x07, 0x3c, 0x83, 0x84, 0x94, 0xc7, 0xf2, 0xc6, 0x93, 0x45, - 0xdc, 0x37, 0x7e, 0x42, 0x25, 0x2e, 0xda, 0x99, 0xf1, 0x5e, 0xbc, 0x5e, 0x13, 0x87, 0xb4, 0x82, - 0x37, 0xef, 0xcc, 0x39, 0xdf, 0x77, 0xce, 0xf9, 0xce, 0x9c, 0x19, 0x83, 0xb7, 0x0f, 0xdf, 0x60, - 0x3a, 0x75, 0x8c, 0x43, 0x7f, 0x8f, 0x78, 0x36, 0xe1, 0x84, 0x19, 0xee, 0x61, 0xdb, 0xc0, 0x2e, - 0x65, 0x06, 0xf6, 0xb9, 0xc3, 0x4c, 0xdc, 0xa1, 0x76, 0xdb, 0xe8, 0xd6, 0x70, 0xc7, 0x3d, 0xc0, - 0x1b, 0x46, 0x9b, 0xd8, 0xc4, 0xc3, 0x9c, 0xb4, 0x74, 0xd7, 0x73, 0xb8, 0x03, 0x0d, 0x09, 0xa0, - 0x47, 0x00, 0xba, 0x7b, 0xd8, 0xd6, 0x03, 0x00, 0x3d, 0x06, 0xa0, 0x0f, 0x00, 0x56, 0x5f, 0x6e, - 0x53, 0x7e, 0xe0, 0xef, 0xe9, 0xa6, 0x63, 0x19, 0x6d, 0xa7, 0xed, 0x18, 0x02, 0x67, 0xcf, 0xdf, - 0x17, 0x5f, 0xe2, 0x43, 0xfc, 0x92, 0xf8, 0xab, 0x37, 0x55, 0x80, 0xd8, 0xa5, 0x16, 0x36, 0x0f, - 0xa8, 0x4d, 0xbc, 0xa3, 0x41, 0x88, 0x86, 0x47, 0x98, 0xe3, 0x7b, 0x26, 0x19, 0x8e, 0x6a, 0xac, - 0x17, 0x33, 0x2c, 0xc2, 0xb1, 0xd1, 0x4d, 0xe5, 0xb2, 0x6a, 0x64, 0x79, 0x79, 0xbe, 0xcd, 0xa9, - 0x95, 0xa6, 0x79, 0xfd, 0x9f, 0x1c, 0x98, 0x79, 0x40, 0x2c, 0x9c, 0xf2, 0x7b, 0x35, 0xcb, 0xcf, - 0xe7, 0xb4, 0x63, 0x50, 0x9b, 0x33, 0xee, 0x8d, 0xcb, 0x89, 0x11, 0xaf, 0x4b, 0xbc, 0x28, 0x21, - 0xf2, 0x00, 0x5b, 0x6e, 0x87, 0x8c, 0xca, 0xe9, 0xa5, 0x4c, 0x81, 0x47, 0x59, 0xdf, 0x3a, 0x6b, - 0x3b, 0xa4, 0x5c, 0xb5, 0x6f, 0x73, 0x60, 0xad, 0xe1, 0x39, 0x8c, 0xdd, 0x27, 0x1e, 0xa3, 0x8e, - 0x7d, 0x77, 0xef, 0x4b, 0x62, 0x72, 0x44, 0xf6, 0x89, 0x47, 0x6c, 0x93, 0xc0, 0x75, 0x50, 0x3c, - 0xa4, 0x76, 0xab, 0x9c, 0x5b, 0xcf, 0x5d, 0x7f, 0xae, 0x3e, 0x77, 0xd2, 0xab, 0x4e, 0xf5, 0x7b, - 0xd5, 0xe2, 0x07, 0xd4, 0x6e, 0x21, 0xb1, 0x13, 0x58, 0xd8, 0xd8, 0x22, 0xe5, 0x7c, 0xd2, 0x62, - 0x1b, 0x5b, 0x04, 0x89, 0x1d, 0x58, 0x03, 0x00, 0xbb, 0x54, 0x11, 0x94, 0x0b, 0xc2, 0x0e, 0x2a, - 0x3b, 0xb0, 0xb9, 0x73, 0x47, 0xed, 0xa0, 0x98, 0x95, 0xf6, 0x38, 0x0f, 0xae, 0xdc, 0x76, 0x3c, - 0x7a, 0xec, 0xd8, 0x1c, 0x77, 0x76, 0x9c, 0xd6, 0xa6, 0xca, 0x83, 0x78, 0xf0, 0x0b, 0x30, 0x1b, - 0xf4, 0x42, 0x0b, 0x73, 0x2c, 0xe2, 0x2a, 0xd5, 0x5e, 0xd1, 0x55, 0x3f, 0xc7, 0xa5, 0x89, 0x3a, - 0x3a, 0xb0, 0xd6, 0xbb, 0x1b, 0xba, 0x4c, 0xae, 0x49, 0x38, 0x8e, 0xf8, 0xa3, 0x35, 0x14, 0xa2, - 0x42, 0x1b, 0x14, 0x99, 0x4b, 0x4c, 0x91, 0x53, 0xa9, 0xb6, 0xa5, 0x4f, 0x78, 0x5a, 0xf4, 0x8c, - 0xc8, 0xef, 0xb9, 0xc4, 0x8c, 0x2a, 0x14, 0x7c, 0x21, 0xc1, 0x03, 0xbb, 0x60, 0x86, 0x71, 0xcc, - 0x7d, 0x26, 0xaa, 0x53, 0xaa, 0x6d, 0x5f, 0x18, 0xa3, 0x40, 0xad, 0x2f, 0x28, 0xce, 0x19, 0xf9, - 0x8d, 0x14, 0x9b, 0xf6, 0x7b, 0x0e, 0xac, 0x65, 0x78, 0x6e, 0x51, 0xc6, 0xe1, 0x67, 0xa9, 0x4a, - 0xeb, 0x67, 0xab, 0x74, 0xe0, 0x2d, 0xea, 0xbc, 0xa4, 0x98, 0x67, 0x07, 0x2b, 0xb1, 0x2a, 0x5b, - 0x60, 0x9a, 0x72, 0x62, 0xb1, 0x72, 0x7e, 0xbd, 0x70, 0xbd, 0x54, 0xbb, 0x7d, 0x51, 0x49, 0xd7, - 0xe7, 0x15, 0xe9, 0xf4, 0x9d, 0x00, 0x1e, 0x49, 0x16, 0xed, 0xcf, 0x7c, 0x66, 0xb2, 0x81, 0x14, - 0xf0, 0xeb, 0x1c, 0x58, 0x10, 0x9f, 0xbb, 0xd8, 0x6b, 0x93, 0xe0, 0x0c, 0xa8, 0x9c, 0x27, 0xd7, - 0x7f, 0xcc, 0x89, 0xaa, 0xaf, 0xa8, 0xe0, 0x16, 0xee, 0x25, 0xb8, 0xd0, 0x10, 0x37, 0xdc, 0x00, - 0x25, 0x8b, 0xda, 0x88, 0xb8, 0x1d, 0x6a, 0x62, 0x26, 0x5a, 0x71, 0xba, 0xbe, 0xd8, 0xef, 0x55, - 0x4b, 0xcd, 0x68, 0x19, 0xc5, 0x6d, 0xe0, 0x6b, 0xa0, 0x64, 0xe1, 0x07, 0xa1, 0x4b, 0x41, 0xb8, - 0x2c, 0x2b, 0xbe, 0x52, 0x33, 0xda, 0x42, 0x71, 0x3b, 0xb8, 0x0f, 0x2e, 0x59, 0x84, 0x7b, 0xd4, - 0x64, 0xe5, 0xa2, 0x50, 0xe2, 0xcd, 0x89, 0x13, 0x6e, 0x0a, 0x7f, 0xd1, 0xdf, 0x8b, 0x8a, 0xef, - 0x92, 0x5c, 0x63, 0x68, 0x00, 0xae, 0xfd, 0x52, 0x00, 0xd7, 0xc6, 0xf6, 0x29, 0x7c, 0x0f, 0x40, - 0x67, 0x4f, 0x8c, 0xc9, 0xd6, 0xfb, 0x72, 0x50, 0x05, 0x13, 0x23, 0x50, 0xa1, 0x50, 0x5f, 0xe9, - 0xf7, 0xaa, 0xf0, 0x6e, 0x6a, 0x17, 0x8d, 0xf0, 0x80, 0x26, 0x98, 0xef, 0x60, 0xc6, 0x65, 0x85, - 0xa9, 0x1a, 0x4e, 0xa5, 0xda, 0x8d, 0xb3, 0x35, 0x6f, 0xe0, 0x51, 0x7f, 0xbe, 0xdf, 0xab, 0xce, - 0x6f, 0xc5, 0x41, 0x50, 0x12, 0x13, 0x6e, 0x82, 0x45, 0xd3, 0xf7, 0x3c, 0x62, 0xf3, 0xa1, 0x8a, - 0x5f, 0x51, 0x15, 0x58, 0x6c, 0x24, 0xb7, 0xd1, 0xb0, 0x7d, 0x00, 0xd1, 0x22, 0x8c, 0x7a, 0xa4, - 0x15, 0x42, 0x14, 0x93, 0x10, 0xef, 0x24, 0xb7, 0xd1, 0xb0, 0x3d, 0x7c, 0x08, 0x16, 0x14, 0xaa, - 0xaa, 0x77, 0x79, 0x5a, 0x68, 0xf8, 0xd6, 0x79, 0x35, 0x94, 0x13, 0x23, 0xec, 0xd2, 0x46, 0x02, - 0x1c, 0x0d, 0x91, 0x69, 0x7f, 0xe4, 0x01, 0x88, 0xc4, 0x87, 0x37, 0x41, 0x91, 0x1f, 0xb9, 0x44, - 0x5d, 0x17, 0xeb, 0x83, 0x51, 0xb7, 0x7b, 0xe4, 0x92, 0x27, 0xbd, 0xea, 0x92, 0xb2, 0x14, 0xb7, - 0x7f, 0xb0, 0x86, 0x84, 0x35, 0x6c, 0x83, 0x19, 0x47, 0x9c, 0x12, 0xa5, 0x53, 0x63, 0xe2, 0xd8, - 0xc3, 0x29, 0x1e, 0xc2, 0xd7, 0x41, 0x30, 0xef, 0xd4, 0xe1, 0x53, 0xf0, 0xf0, 0x73, 0x50, 0x74, - 0x9d, 0xd6, 0x60, 0xca, 0x6e, 0x4e, 0x4c, 0xb3, 0xe3, 0xb4, 0x58, 0x82, 0x64, 0x36, 0xc8, 0x2e, - 0x58, 0x45, 0x02, 0x18, 0x3a, 0x60, 0x76, 0xf0, 0xba, 0x11, 0x4a, 0x96, 0x6a, 0xef, 0x4e, 0x4c, - 0x82, 0x14, 0x40, 0x82, 0x68, 0x2e, 0x98, 0xa1, 0x83, 0x1d, 0x14, 0x92, 0x68, 0x7f, 0xe5, 0xc1, - 0x5c, 0x5c, 0xb8, 0xff, 0x86, 0x02, 0xb2, 0x87, 0x9e, 0xb2, 0x02, 0x92, 0xe4, 0x19, 0x28, 0x20, - 0x89, 0xb2, 0x14, 0xf8, 0x2e, 0x0f, 0x60, 0xba, 0xfd, 0x20, 0x07, 0x33, 0x5c, 0xcc, 0xf2, 0xa7, - 0x72, 0x89, 0x84, 0x17, 0xba, 0xba, 0x2f, 0x14, 0x57, 0xf0, 0xd4, 0x92, 0xd3, 0x76, 0x3b, 0x7a, - 0x92, 0x85, 0x4f, 0x9d, 0x66, 0xb8, 0x83, 0x62, 0x56, 0x90, 0x80, 0x92, 0xf4, 0xbe, 0x8f, 0x3b, - 0x3e, 0x51, 0xca, 0x8c, 0xbd, 0xe7, 0xf5, 0x41, 0xf2, 0xfa, 0x87, 0x3e, 0xb6, 0x39, 0xe5, 0x47, - 0xd1, 0x2d, 0xb3, 0x1b, 0x41, 0xa1, 0x38, 0xae, 0xf6, 0xfd, 0x70, 0x9d, 0x64, 0xbf, 0xfe, 0x7f, - 0xea, 0x74, 0x00, 0xe6, 0xd4, 0xf0, 0xfb, 0x37, 0x85, 0xba, 0xac, 0x58, 0xe6, 0x1a, 0x31, 0x2c, - 0x94, 0x40, 0xd6, 0x7e, 0xca, 0x81, 0xa5, 0xe1, 0x51, 0x33, 0x14, 0x72, 0xee, 0x4c, 0x21, 0x1f, - 0x03, 0x28, 0x13, 0xde, 0xec, 0x12, 0x0f, 0xb7, 0x89, 0x0c, 0x3c, 0x7f, 0xae, 0xc0, 0x57, 0x15, - 0x17, 0xdc, 0x4d, 0x21, 0xa2, 0x11, 0x2c, 0xda, 0xcf, 0xc9, 0x24, 0xa4, 0xda, 0xe7, 0x49, 0xe2, - 0x21, 0x58, 0x56, 0xd5, 0xb9, 0x80, 0x2c, 0xd6, 0x14, 0xd9, 0x72, 0x23, 0x0d, 0x89, 0x46, 0xf1, - 0x68, 0x3f, 0xe4, 0xc1, 0xe5, 0x51, 0x23, 0x19, 0x36, 0xd5, 0x1f, 0x1f, 0x99, 0xc5, 0xad, 0xf8, - 0x1f, 0x9f, 0x27, 0xbd, 0xea, 0x8b, 0xe3, 0xfe, 0xc1, 0x85, 0x13, 0x26, 0xf6, 0x2f, 0xe9, 0x63, - 0x50, 0x4e, 0x54, 0xf1, 0x23, 0x4e, 0x3b, 0xf4, 0x58, 0xbe, 0x80, 0xe4, 0xe3, 0xef, 0x85, 0x7e, - 0xaf, 0x5a, 0xde, 0xcd, 0xb0, 0x41, 0x99, 0xde, 0xb0, 0x3b, 0xb2, 0x0b, 0xce, 0xd7, 0xbe, 0x2b, - 0x13, 0x74, 0xc0, 0x8f, 0xe9, 0xca, 0xc9, 0x2e, 0xb8, 0xe0, 0xca, 0x7d, 0x0a, 0xae, 0x26, 0x85, - 0x4b, 0x97, 0xee, 0x5a, 0xbf, 0x57, 0xbd, 0xda, 0xc8, 0x32, 0x42, 0xd9, 0xfe, 0x59, 0xdd, 0x57, - 0x78, 0x36, 0xdd, 0x57, 0xbf, 0x71, 0x72, 0x5a, 0x99, 0x7a, 0x74, 0x5a, 0x99, 0xfa, 0xf5, 0xb4, - 0x32, 0xf5, 0x55, 0xbf, 0x92, 0x3b, 0xe9, 0x57, 0x72, 0x8f, 0xfa, 0x95, 0xdc, 0x6f, 0xfd, 0x4a, - 0xee, 0x9b, 0xc7, 0x95, 0xa9, 0x4f, 0x66, 0x07, 0x83, 0xf0, 0xef, 0x00, 0x00, 0x00, 0xff, 0xff, - 0x95, 0xf2, 0xec, 0x8a, 0x16, 0x12, 0x00, 0x00, + 0x1b, 0xce, 0x3a, 0x4e, 0x9a, 0x6f, 0x9c, 0x26, 0xfd, 0xa6, 0x55, 0xeb, 0xa6, 0xd4, 0x8e, 0x56, + 0x08, 0xb5, 0x08, 0x76, 0xa9, 0x29, 0x88, 0x0a, 0x01, 0x8a, 0xcd, 0xa1, 0x15, 0x71, 0x0f, 0xd3, + 0x50, 0x21, 0x40, 0x82, 0xc9, 0x7a, 0xea, 0x0c, 0xf1, 0x1e, 0xb4, 0x33, 0xb6, 0x48, 0xa5, 0x4a, + 0xdc, 0x70, 0x87, 0x04, 0x37, 0xfc, 0x04, 0x24, 0xfe, 0x01, 0xd7, 0x20, 0x21, 0xf5, 0xb2, 0x97, + 0xe5, 0xc6, 0xa2, 0xee, 0x1d, 0x3f, 0x21, 0x12, 0x07, 0xcd, 0x61, 0x4f, 0x5e, 0x6f, 0x1a, 0x87, + 0xb4, 0x82, 0x3b, 0x7b, 0xe6, 0x7d, 0x9f, 0xe7, 0x3d, 0x3c, 0xf3, 0xce, 0x2c, 0x78, 0x6b, 0xfb, + 0x35, 0x66, 0x51, 0xdf, 0xde, 0xee, 0x6f, 0x92, 0xd0, 0x23, 0x9c, 0x30, 0x3b, 0xd8, 0xee, 0xda, + 0x38, 0xa0, 0xcc, 0xc6, 0x7d, 0xee, 0x33, 0x07, 0xf7, 0xa8, 0xd7, 0xb5, 0x07, 0x0d, 0xdc, 0x0b, + 0xb6, 0xf0, 0x05, 0xbb, 0x4b, 0x3c, 0x12, 0x62, 0x4e, 0x3a, 0x56, 0x10, 0xfa, 0xdc, 0x87, 0xb6, + 0x02, 0xb0, 0x12, 0x00, 0x2b, 0xd8, 0xee, 0x5a, 0x02, 0xc0, 0x4a, 0x01, 0x58, 0x11, 0xc0, 0xca, + 0x8b, 0x5d, 0xca, 0xb7, 0xfa, 0x9b, 0x96, 0xe3, 0xbb, 0x76, 0xd7, 0xef, 0xfa, 0xb6, 0xc4, 0xd9, + 0xec, 0xdf, 0x96, 0xff, 0xe4, 0x1f, 0xf9, 0x4b, 0xe1, 0xaf, 0x5c, 0xd4, 0x01, 0xe2, 0x80, 0xba, + 0xd8, 0xd9, 0xa2, 0x1e, 0x09, 0x77, 0xa2, 0x10, 0xed, 0x90, 0x30, 0xbf, 0x1f, 0x3a, 0x64, 0x3c, + 0xaa, 0x3d, 0xbd, 0x98, 0xed, 0x12, 0x8e, 0xed, 0x41, 0x2e, 0x97, 0x15, 0xbb, 0xc8, 0x2b, 0xec, + 0x7b, 0x9c, 0xba, 0x79, 0x9a, 0x57, 0x1f, 0xe7, 0xc0, 0x9c, 0x2d, 0xe2, 0xe2, 0x9c, 0xdf, 0xcb, + 0x45, 0x7e, 0x7d, 0x4e, 0x7b, 0x36, 0xf5, 0x38, 0xe3, 0x61, 0xce, 0xe9, 0x85, 0xc2, 0x56, 0x4d, + 0xca, 0xe5, 0xd2, 0x7e, 0x1b, 0x9b, 0x73, 0x35, 0xbf, 0x33, 0xc0, 0x99, 0x56, 0xe8, 0x33, 0x76, + 0x8b, 0x84, 0x8c, 0xfa, 0xde, 0xb5, 0xcd, 0xcf, 0x89, 0xc3, 0x11, 0xb9, 0x4d, 0x42, 0xe2, 0x39, + 0x04, 0xae, 0x82, 0xf2, 0x36, 0xf5, 0x3a, 0x55, 0x63, 0xd5, 0x38, 0xf7, 0xbf, 0xe6, 0xe2, 0xbd, + 0x61, 0x7d, 0x66, 0x34, 0xac, 0x97, 0xdf, 0xa7, 0x5e, 0x07, 0xc9, 0x1d, 0x61, 0xe1, 0x61, 0x97, + 0x54, 0x4b, 0x59, 0x8b, 0xab, 0xd8, 0x25, 0x48, 0xee, 0xc0, 0x06, 0x00, 0x38, 0xa0, 0x9a, 0xa0, + 0x3a, 0x2b, 0xed, 0xa0, 0xb6, 0x03, 0x6b, 0xd7, 0xaf, 0xe8, 0x1d, 0x94, 0xb2, 0x32, 0x1f, 0x95, + 0xc0, 0xa9, 0xcb, 0x7e, 0x48, 0xef, 0xf8, 0x1e, 0xc7, 0xbd, 0xeb, 0x7e, 0x67, 0x4d, 0xe7, 0x41, + 0x42, 0xf8, 0x19, 0x58, 0x10, 0x5d, 0xed, 0x60, 0x8e, 0x65, 0x5c, 0x95, 0xc6, 0x4b, 0x96, 0x56, + 0x66, 0xba, 0xc8, 0x89, 0x36, 0x85, 0xb5, 0x35, 0xb8, 0x60, 0xa9, 0xe4, 0xda, 0x84, 0xe3, 0x84, + 0x3f, 0x59, 0x43, 0x31, 0x2a, 0xf4, 0x40, 0x99, 0x05, 0xc4, 0x91, 0x39, 0x55, 0x1a, 0xeb, 0xd6, + 0x94, 0xba, 0xb7, 0x0a, 0x22, 0xbf, 0x19, 0x10, 0x27, 0xa9, 0x90, 0xf8, 0x87, 0x24, 0x0f, 0x1c, + 0x80, 0x79, 0xc6, 0x31, 0xef, 0x33, 0x59, 0x9d, 0x4a, 0xe3, 0xea, 0xa1, 0x31, 0x4a, 0xd4, 0xe6, + 0x92, 0xe6, 0x9c, 0x57, 0xff, 0x91, 0x66, 0x33, 0xbf, 0x99, 0x05, 0xab, 0x05, 0x9e, 0x2d, 0xdf, + 0xeb, 0x50, 0x4e, 0x7d, 0x0f, 0x5e, 0x06, 0x65, 0xbe, 0x13, 0x10, 0x2d, 0x81, 0x8b, 0x51, 0xf8, + 0x1b, 0x3b, 0x01, 0xd9, 0x1d, 0xd6, 0x9f, 0x7d, 0x9c, 0xbf, 0xb0, 0x43, 0x12, 0x01, 0xde, 0x8a, + 0xd3, 0x54, 0x62, 0x79, 0x33, 0x1b, 0xd6, 0xee, 0xb0, 0xbe, 0xa7, 0xee, 0xad, 0x18, 0x33, 0x9b, + 0x06, 0x1c, 0x00, 0xd8, 0xc3, 0x8c, 0x6f, 0x84, 0xd8, 0x63, 0x8a, 0x93, 0xba, 0x44, 0x97, 0xf2, + 0xf9, 0xfd, 0x49, 0x43, 0x78, 0x34, 0x57, 0x74, 0x3c, 0x70, 0x3d, 0x87, 0x86, 0x26, 0x30, 0xc0, + 0xe7, 0xc0, 0x7c, 0x48, 0x30, 0xf3, 0xbd, 0x6a, 0x59, 0xe6, 0x13, 0x97, 0x19, 0xc9, 0x55, 0xa4, + 0x77, 0xe1, 0x79, 0x70, 0xc4, 0x25, 0x8c, 0xe1, 0x2e, 0xa9, 0xce, 0x49, 0xc3, 0x65, 0x6d, 0x78, + 0xa4, 0xad, 0x96, 0x51, 0xb4, 0x6f, 0xfe, 0x6e, 0x80, 0x33, 0x05, 0x15, 0x5d, 0xa7, 0x8c, 0xc3, + 0x4f, 0x72, 0xda, 0xb7, 0xf6, 0x97, 0xa0, 0xf0, 0x96, 0xca, 0x3f, 0xa6, 0xb9, 0x17, 0xa2, 0x95, + 0x94, 0xee, 0x5d, 0x30, 0x47, 0x39, 0x71, 0x45, 0x7f, 0x66, 0xcf, 0x55, 0x1a, 0x97, 0x0f, 0x4b, + 0x86, 0xcd, 0xa3, 0x9a, 0x74, 0xee, 0x8a, 0x80, 0x47, 0x8a, 0xc5, 0xfc, 0xb3, 0x54, 0x98, 0xac, + 0x38, 0x1c, 0xf0, 0x6b, 0x03, 0x2c, 0xc9, 0xbf, 0x1b, 0x38, 0xec, 0x12, 0x31, 0x95, 0x74, 0xce, + 0xd3, 0x9f, 0xc8, 0x3d, 0x66, 0x5c, 0xf3, 0xa4, 0x0e, 0x6e, 0xe9, 0x66, 0x86, 0x0b, 0x8d, 0x71, + 0xc3, 0x0b, 0xa0, 0xe2, 0x52, 0x0f, 0x91, 0xa0, 0x47, 0x1d, 0xac, 0x34, 0x3c, 0xd7, 0x5c, 0x1e, + 0x0d, 0xeb, 0x95, 0x76, 0xb2, 0x8c, 0xd2, 0x36, 0xf0, 0x15, 0x50, 0x71, 0xf1, 0x17, 0xb1, 0xcb, + 0xac, 0x74, 0x39, 0xae, 0xf9, 0x2a, 0xed, 0x64, 0x0b, 0xa5, 0xed, 0xe0, 0x6d, 0x21, 0x18, 0x1e, + 0x52, 0x87, 0x55, 0xcb, 0xb2, 0x13, 0xaf, 0x4f, 0x9d, 0x70, 0x5b, 0xfa, 0xcb, 0x89, 0x93, 0x52, + 0x9b, 0xc4, 0x44, 0x11, 0xb8, 0xf9, 0x6b, 0x19, 0x9c, 0xdd, 0x73, 0x72, 0xc0, 0x77, 0x01, 0xf4, + 0x37, 0x19, 0x09, 0x07, 0xa4, 0xf3, 0x9e, 0xba, 0x3a, 0xc4, 0x0c, 0x17, 0x5d, 0x98, 0x6d, 0x9e, + 0x14, 0x47, 0xe5, 0x5a, 0x6e, 0x17, 0x4d, 0xf0, 0x80, 0x0e, 0x38, 0x2a, 0x0e, 0x90, 0xaa, 0x30, + 0xd5, 0xd7, 0xc5, 0x74, 0xa7, 0xf3, 0xff, 0xa3, 0x61, 0xfd, 0xe8, 0x7a, 0x1a, 0x04, 0x65, 0x31, + 0xe1, 0x1a, 0x58, 0x76, 0xfa, 0x61, 0x48, 0x3c, 0x3e, 0x56, 0xf1, 0x53, 0xba, 0x02, 0xcb, 0xad, + 0xec, 0x36, 0x1a, 0xb7, 0x17, 0x10, 0x1d, 0xc2, 0x68, 0x48, 0x3a, 0x31, 0x44, 0x39, 0x0b, 0xf1, + 0x76, 0x76, 0x1b, 0x8d, 0xdb, 0xc3, 0xbb, 0x60, 0x49, 0xa3, 0xea, 0x7a, 0x57, 0xe7, 0x64, 0x0f, + 0xdf, 0x38, 0x68, 0x0f, 0xd5, 0x0c, 0x8f, 0x55, 0xda, 0xca, 0x80, 0xa3, 0x31, 0x32, 0xf8, 0x95, + 0x01, 0x80, 0x13, 0x0d, 0x4a, 0x56, 0x9d, 0x97, 0xdc, 0x37, 0x0e, 0xeb, 0x24, 0xc7, 0x23, 0x38, + 0xb9, 0x41, 0xe3, 0x25, 0x86, 0x52, 0xc4, 0xe6, 0x1f, 0x25, 0x00, 0x12, 0x11, 0xc2, 0x8b, 0x99, + 0x5b, 0x64, 0x75, 0xec, 0x16, 0x39, 0xa6, 0x2d, 0xe5, 0x0b, 0x2f, 0x75, 0x63, 0x74, 0xc1, 0xbc, + 0x2f, 0x4f, 0xab, 0xd6, 0x4b, 0x6b, 0xea, 0x3c, 0xe2, 0xfb, 0x3d, 0x86, 0x6f, 0x02, 0x31, 0xa2, + 0xf5, 0x10, 0xd0, 0xf0, 0xf0, 0x53, 0x50, 0x0e, 0xfc, 0x4e, 0x74, 0xff, 0xae, 0x4d, 0x4d, 0x73, + 0xdd, 0xef, 0xb0, 0x0c, 0xc9, 0x82, 0xc8, 0x4e, 0xac, 0x22, 0x09, 0x0c, 0x7d, 0xb0, 0x10, 0xbd, + 0x60, 0xa5, 0xa2, 0x2a, 0x8d, 0x77, 0xa6, 0x26, 0x41, 0x1a, 0x20, 0x43, 0xb4, 0x28, 0x66, 0x79, + 0xb4, 0x83, 0x62, 0x12, 0xf3, 0xaf, 0x12, 0x58, 0x4c, 0x0b, 0xe8, 0xdf, 0xd1, 0x01, 0xa5, 0xe5, + 0x27, 0xdc, 0x01, 0x45, 0xf2, 0x14, 0x3a, 0xa0, 0x88, 0x8a, 0x3a, 0xf0, 0x7d, 0x09, 0xc0, 0xbc, + 0xfc, 0x20, 0x07, 0xf3, 0x5c, 0xde, 0x29, 0x4f, 0xe4, 0x32, 0x8b, 0xdf, 0x20, 0xfa, 0xde, 0xd2, + 0x5c, 0xe2, 0x11, 0xae, 0xa6, 0xfe, 0xd5, 0xe4, 0xb1, 0x1e, 0x1f, 0xe1, 0x76, 0xbc, 0x83, 0x52, + 0x56, 0x90, 0x80, 0x8a, 0xf2, 0xbe, 0x85, 0x7b, 0xfd, 0xe8, 0x41, 0xb5, 0xe7, 0x7b, 0xc3, 0x8a, + 0x92, 0xb7, 0x6e, 0xf4, 0xb1, 0xc7, 0x29, 0xdf, 0x49, 0x6e, 0xbb, 0x8d, 0x04, 0x0a, 0xa5, 0x71, + 0xcd, 0x1f, 0xc6, 0xeb, 0xa4, 0xf4, 0xfa, 0xdf, 0xa9, 0xd3, 0x16, 0x58, 0xd4, 0x43, 0xf8, 0x9f, + 0x14, 0xea, 0x84, 0x66, 0x59, 0x6c, 0xa5, 0xb0, 0x50, 0x06, 0xd9, 0xfc, 0xd9, 0x00, 0xc7, 0xc6, + 0x47, 0xcd, 0x58, 0xc8, 0xc6, 0xbe, 0x42, 0xbe, 0x03, 0xa0, 0x4a, 0x78, 0x6d, 0x40, 0x42, 0xdc, + 0x25, 0x2a, 0xf0, 0xd2, 0x81, 0x02, 0x8f, 0x9f, 0xcd, 0x1b, 0x39, 0x44, 0x34, 0x81, 0xc5, 0xfc, + 0x25, 0x9b, 0x84, 0xea, 0xf6, 0x41, 0x92, 0xb8, 0x0b, 0x8e, 0xeb, 0xea, 0x1c, 0x42, 0x16, 0x67, + 0x34, 0xd9, 0xf1, 0x56, 0x1e, 0x12, 0x4d, 0xe2, 0x31, 0x7f, 0x2c, 0x81, 0x13, 0x93, 0x46, 0x32, + 0x6c, 0xeb, 0x4f, 0x62, 0x95, 0xc5, 0xa5, 0xf4, 0x27, 0xf1, 0xee, 0xb0, 0x7e, 0x7e, 0xcf, 0x6f, + 0x9c, 0x08, 0x30, 0xf5, 0xfd, 0xfc, 0x21, 0xa8, 0x66, 0xaa, 0xf8, 0x01, 0xa7, 0x3d, 0x7a, 0x47, + 0xbd, 0xc4, 0xd4, 0x23, 0xf4, 0x99, 0xd1, 0xb0, 0x5e, 0xdd, 0x28, 0xb0, 0x41, 0x85, 0xde, 0xe2, + 0xc3, 0x69, 0x82, 0x0a, 0x0e, 0x26, 0xdf, 0x93, 0x53, 0x28, 0xe0, 0xa7, 0x7c, 0xe5, 0x94, 0x0a, + 0x0e, 0xb9, 0x72, 0x1f, 0x83, 0xd3, 0xd9, 0xc6, 0xe5, 0x4b, 0x77, 0x76, 0x34, 0xac, 0x9f, 0x6e, + 0x15, 0x19, 0xa1, 0x62, 0xff, 0x22, 0xf5, 0xcd, 0x3e, 0x1d, 0xf5, 0x35, 0xad, 0x7b, 0x0f, 0x6b, + 0x33, 0xf7, 0x1f, 0xd6, 0x66, 0x1e, 0x3c, 0xac, 0xcd, 0x7c, 0x39, 0xaa, 0x19, 0xf7, 0x46, 0x35, + 0xe3, 0xfe, 0xa8, 0x66, 0x3c, 0x18, 0xd5, 0x8c, 0xdf, 0x46, 0x35, 0xe3, 0xdb, 0x47, 0xb5, 0x99, + 0x8f, 0x16, 0xa2, 0x61, 0xf8, 0x77, 0x00, 0x00, 0x00, 0xff, 0xff, 0x4c, 0xa9, 0x91, 0xe9, 0xfe, + 0x13, 0x00, 0x00, } diff --git a/vendor/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/generated.proto b/vendor/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/generated.proto index 5dffa599..21d9ea6f 100644 --- a/vendor/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/generated.proto +++ b/vendor/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/generated.proto @@ -19,14 +19,13 @@ limitations under the License. syntax = 'proto2'; -package k8s.io.kubernetes.pkg.apis.autoscaling.v2alpha1; +package k8s.io.client_go.pkg.apis.autoscaling.v2alpha1; import "k8s.io/apimachinery/pkg/api/resource/generated.proto"; import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; import "k8s.io/kubernetes/pkg/api/v1/generated.proto"; import "k8s.io/kubernetes/pkg/apis/autoscaling/v1/generated.proto"; @@ -35,7 +34,7 @@ option go_package = "v2alpha1"; // CrossVersionObjectReference contains enough information to let you identify the referred resource. message CrossVersionObjectReference { - // Kind of the referent; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds" + // Kind of the referent; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds" optional string kind = 1; // Name of the referent; More info: http://kubernetes.io/docs/user-guide/identifiers#names @@ -51,12 +50,12 @@ message CrossVersionObjectReference { // implementing the scale subresource based on the metrics specified. message HorizontalPodAutoscaler { // metadata is the standard object metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // spec is the specification for the behaviour of the autoscaler. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. // +optional optional HorizontalPodAutoscalerSpec spec = 2; @@ -65,6 +64,30 @@ message HorizontalPodAutoscaler { optional HorizontalPodAutoscalerStatus status = 3; } +// HorizontalPodAutoscalerCondition describes the state of +// a HorizontalPodAutoscaler at a certain point. +message HorizontalPodAutoscalerCondition { + // type describes the current condition + optional string type = 1; + + // status is the status of the condition (True, False, Unknown) + optional string status = 2; + + // lastTransitionTime is the last time the condition transitioned from + // one status to another + // +optional + optional k8s.io.apimachinery.pkg.apis.meta.v1.Time lastTransitionTime = 3; + + // reason is the reason for the condition's last transition. + // +optional + optional string reason = 4; + + // message is a human-readable explanation containing details about + // the transition + // +optional + optional string message = 5; +} + // HorizontalPodAutoscaler is a list of horizontal pod autoscaler objects. message HorizontalPodAutoscalerList { // metadata is the standard list metadata. @@ -122,6 +145,10 @@ message HorizontalPodAutoscalerStatus { // currentMetrics is the last read state of the metrics used by this autoscaler. repeated MetricStatus currentMetrics = 5; + + // conditions is the set of conditions required for this autoscaler to scale its target, + // and indicates whether or not those conditions are met. + repeated HorizontalPodAutoscalerCondition conditions = 6; } // MetricSpec specifies how to scale based on a single metric @@ -242,7 +269,7 @@ message ResourceMetricSource { // +optional optional int32 targetAverageUtilization = 2; - // targetAverageValue is the the target value of the average of the + // targetAverageValue is the target value of the average of the // resource metric across all relevant pods, as a raw value (instead of as // a percentage of the request), similar to the "pods" metric source type. // +optional @@ -266,7 +293,7 @@ message ResourceMetricStatus { // +optional optional int32 currentAverageUtilization = 2; - // currentAverageValue is the the current value of the average of the + // currentAverageValue is the current value of the average of the // resource metric across all relevant pods, as a raw value (instead of as // a percentage of the request), similar to the "pods" metric source type. // It will always be set, regardless of the corresponding metric specification. diff --git a/vendor/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/types.generated.go b/vendor/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/types.generated.go index c43b05aa..5f984e4f 100644 --- a/vendor/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/types.generated.go +++ b/vendor/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/types.generated.go @@ -1916,16 +1916,16 @@ func (x *HorizontalPodAutoscalerStatus) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [5]bool + var yyq2 [6]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[0] = x.ObservedGeneration != nil yyq2[1] = x.LastScaleTime != nil var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(5) + r.EncodeArrayStart(6) } else { - yynn2 = 3 + yynn2 = 4 for _, b := range yyq2 { if b { yynn2++ @@ -2077,6 +2077,33 @@ func (x *HorizontalPodAutoscalerStatus) CodecEncodeSelf(e *codec1978.Encoder) { } } } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if x.Conditions == nil { + r.EncodeNil() + } else { + yym21 := z.EncBinary() + _ = yym21 + if false { + } else { + h.encSliceHorizontalPodAutoscalerCondition(([]HorizontalPodAutoscalerCondition)(x.Conditions), e) + } + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("conditions")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Conditions == nil { + r.EncodeNil() + } else { + yym22 := z.EncBinary() + _ = yym22 + if false { + } else { + h.encSliceHorizontalPodAutoscalerCondition(([]HorizontalPodAutoscalerCondition)(x.Conditions), e) + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -2211,6 +2238,18 @@ func (x *HorizontalPodAutoscalerStatus) codecDecodeSelfFromMap(l int, d *codec19 h.decSliceMetricStatus((*[]MetricStatus)(yyv12), d) } } + case "conditions": + if r.TryDecodeAsNil() { + x.Conditions = nil + } else { + yyv14 := &x.Conditions + yym15 := z.DecBinary() + _ = yym15 + if false { + } else { + h.decSliceHorizontalPodAutoscalerCondition((*[]HorizontalPodAutoscalerCondition)(yyv14), d) + } + } default: z.DecStructFieldNotFound(-1, yys3) } // end switch yys3 @@ -2222,16 +2261,16 @@ func (x *HorizontalPodAutoscalerStatus) codecDecodeSelfFromArray(l int, d *codec var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj14 int - var yyb14 bool - var yyhl14 bool = l >= 0 - yyj14++ - if yyhl14 { - yyb14 = yyj14 > l + var yyj16 int + var yyb16 bool + var yyhl16 bool = l >= 0 + yyj16++ + if yyhl16 { + yyb16 = yyj16 > l } else { - yyb14 = r.CheckBreak() + yyb16 = r.CheckBreak() } - if yyb14 { + if yyb16 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2244,20 +2283,20 @@ func (x *HorizontalPodAutoscalerStatus) codecDecodeSelfFromArray(l int, d *codec if x.ObservedGeneration == nil { x.ObservedGeneration = new(int64) } - yym16 := z.DecBinary() - _ = yym16 + yym18 := z.DecBinary() + _ = yym18 if false { } else { *((*int64)(x.ObservedGeneration)) = int64(r.DecodeInt(64)) } } - yyj14++ - if yyhl14 { - yyb14 = yyj14 > l + yyj16++ + if yyhl16 { + yyb16 = yyj16 > l } else { - yyb14 = r.CheckBreak() + yyb16 = r.CheckBreak() } - if yyb14 { + if yyb16 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2270,25 +2309,25 @@ func (x *HorizontalPodAutoscalerStatus) codecDecodeSelfFromArray(l int, d *codec if x.LastScaleTime == nil { x.LastScaleTime = new(pkg3_v1.Time) } - yym18 := z.DecBinary() - _ = yym18 + yym20 := z.DecBinary() + _ = yym20 if false { } else if z.HasExtensions() && z.DecExt(x.LastScaleTime) { - } else if yym18 { + } else if yym20 { z.DecBinaryUnmarshal(x.LastScaleTime) - } else if !yym18 && z.IsJSONHandle() { + } else if !yym20 && z.IsJSONHandle() { z.DecJSONUnmarshal(x.LastScaleTime) } else { z.DecFallback(x.LastScaleTime, false) } } - yyj14++ - if yyhl14 { - yyb14 = yyj14 > l + yyj16++ + if yyhl16 { + yyb16 = yyj16 > l } else { - yyb14 = r.CheckBreak() + yyb16 = r.CheckBreak() } - if yyb14 { + if yyb16 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2296,29 +2335,7 @@ func (x *HorizontalPodAutoscalerStatus) codecDecodeSelfFromArray(l int, d *codec if r.TryDecodeAsNil() { x.CurrentReplicas = 0 } else { - yyv19 := &x.CurrentReplicas - yym20 := z.DecBinary() - _ = yym20 - if false { - } else { - *((*int32)(yyv19)) = int32(r.DecodeInt(32)) - } - } - yyj14++ - if yyhl14 { - yyb14 = yyj14 > l - } else { - yyb14 = r.CheckBreak() - } - if yyb14 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.DesiredReplicas = 0 - } else { - yyv21 := &x.DesiredReplicas + yyv21 := &x.CurrentReplicas yym22 := z.DecBinary() _ = yym22 if false { @@ -2326,13 +2343,35 @@ func (x *HorizontalPodAutoscalerStatus) codecDecodeSelfFromArray(l int, d *codec *((*int32)(yyv21)) = int32(r.DecodeInt(32)) } } - yyj14++ - if yyhl14 { - yyb14 = yyj14 > l + yyj16++ + if yyhl16 { + yyb16 = yyj16 > l } else { - yyb14 = r.CheckBreak() + yyb16 = r.CheckBreak() } - if yyb14 { + if yyb16 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.DesiredReplicas = 0 + } else { + yyv23 := &x.DesiredReplicas + yym24 := z.DecBinary() + _ = yym24 + if false { + } else { + *((*int32)(yyv23)) = int32(r.DecodeInt(32)) + } + } + yyj16++ + if yyhl16 { + yyb16 = yyj16 > l + } else { + yyb16 = r.CheckBreak() + } + if yyb16 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2340,26 +2379,465 @@ func (x *HorizontalPodAutoscalerStatus) codecDecodeSelfFromArray(l int, d *codec if r.TryDecodeAsNil() { x.CurrentMetrics = nil } else { - yyv23 := &x.CurrentMetrics - yym24 := z.DecBinary() - _ = yym24 + yyv25 := &x.CurrentMetrics + yym26 := z.DecBinary() + _ = yym26 if false { } else { - h.decSliceMetricStatus((*[]MetricStatus)(yyv23), d) + h.decSliceMetricStatus((*[]MetricStatus)(yyv25), d) + } + } + yyj16++ + if yyhl16 { + yyb16 = yyj16 > l + } else { + yyb16 = r.CheckBreak() + } + if yyb16 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Conditions = nil + } else { + yyv27 := &x.Conditions + yym28 := z.DecBinary() + _ = yym28 + if false { + } else { + h.decSliceHorizontalPodAutoscalerCondition((*[]HorizontalPodAutoscalerCondition)(yyv27), d) } } for { - yyj14++ - if yyhl14 { - yyb14 = yyj14 > l + yyj16++ + if yyhl16 { + yyb16 = yyj16 > l } else { - yyb14 = r.CheckBreak() + yyb16 = r.CheckBreak() } - if yyb14 { + if yyb16 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj14-1, "") + z.DecStructFieldNotFound(yyj16-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x HorizontalPodAutoscalerConditionType) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x)) + } +} + +func (x *HorizontalPodAutoscalerConditionType) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + *((*string)(x)) = r.DecodeString() + } +} + +func (x *HorizontalPodAutoscalerCondition) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [5]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[2] = true + yyq2[3] = x.Reason != "" + yyq2[4] = x.Message != "" + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(5) + } else { + yynn2 = 2 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + x.Type.CodecEncodeSelf(e) + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("type")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + x.Type.CodecEncodeSelf(e) + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yysf7 := &x.Status + yysf7.CodecEncodeSelf(e) + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("status")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yysf8 := &x.Status + yysf8.CodecEncodeSelf(e) + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yy10 := &x.LastTransitionTime + yym11 := z.EncBinary() + _ = yym11 + if false { + } else if z.HasExtensions() && z.EncExt(yy10) { + } else if yym11 { + z.EncBinaryMarshal(yy10) + } else if !yym11 && z.IsJSONHandle() { + z.EncJSONMarshal(yy10) + } else { + z.EncFallback(yy10) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("lastTransitionTime")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy12 := &x.LastTransitionTime + yym13 := z.EncBinary() + _ = yym13 + if false { + } else if z.HasExtensions() && z.EncExt(yy12) { + } else if yym13 { + z.EncBinaryMarshal(yy12) + } else if !yym13 && z.IsJSONHandle() { + z.EncJSONMarshal(yy12) + } else { + z.EncFallback(yy12) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[3] { + yym15 := z.EncBinary() + _ = yym15 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Reason)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[3] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("reason")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym16 := z.EncBinary() + _ = yym16 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Reason)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[4] { + yym18 := z.EncBinary() + _ = yym18 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Message)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[4] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("message")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym19 := z.EncBinary() + _ = yym19 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Message)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *HorizontalPodAutoscalerCondition) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *HorizontalPodAutoscalerCondition) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "type": + if r.TryDecodeAsNil() { + x.Type = "" + } else { + yyv4 := &x.Type + yyv4.CodecDecodeSelf(d) + } + case "status": + if r.TryDecodeAsNil() { + x.Status = "" + } else { + yyv5 := &x.Status + yyv5.CodecDecodeSelf(d) + } + case "lastTransitionTime": + if r.TryDecodeAsNil() { + x.LastTransitionTime = pkg3_v1.Time{} + } else { + yyv6 := &x.LastTransitionTime + yym7 := z.DecBinary() + _ = yym7 + if false { + } else if z.HasExtensions() && z.DecExt(yyv6) { + } else if yym7 { + z.DecBinaryUnmarshal(yyv6) + } else if !yym7 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv6) + } else { + z.DecFallback(yyv6, false) + } + } + case "reason": + if r.TryDecodeAsNil() { + x.Reason = "" + } else { + yyv8 := &x.Reason + yym9 := z.DecBinary() + _ = yym9 + if false { + } else { + *((*string)(yyv8)) = r.DecodeString() + } + } + case "message": + if r.TryDecodeAsNil() { + x.Message = "" + } else { + yyv10 := &x.Message + yym11 := z.DecBinary() + _ = yym11 + if false { + } else { + *((*string)(yyv10)) = r.DecodeString() + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *HorizontalPodAutoscalerCondition) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj12 int + var yyb12 bool + var yyhl12 bool = l >= 0 + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Type = "" + } else { + yyv13 := &x.Type + yyv13.CodecDecodeSelf(d) + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Status = "" + } else { + yyv14 := &x.Status + yyv14.CodecDecodeSelf(d) + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.LastTransitionTime = pkg3_v1.Time{} + } else { + yyv15 := &x.LastTransitionTime + yym16 := z.DecBinary() + _ = yym16 + if false { + } else if z.HasExtensions() && z.DecExt(yyv15) { + } else if yym16 { + z.DecBinaryUnmarshal(yyv15) + } else if !yym16 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv15) + } else { + z.DecFallback(yyv15, false) + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Reason = "" + } else { + yyv17 := &x.Reason + yym18 := z.DecBinary() + _ = yym18 + if false { + } else { + *((*string)(yyv17)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Message = "" + } else { + yyv19 := &x.Message + yym20 := z.DecBinary() + _ = yym20 + if false { + } else { + *((*string)(yyv19)) = r.DecodeString() + } + } + for { + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj12-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -4501,6 +4979,125 @@ func (x codecSelfer1234) decSliceMetricStatus(v *[]MetricStatus, d *codec1978.De } } +func (x codecSelfer1234) encSliceHorizontalPodAutoscalerCondition(v []HorizontalPodAutoscalerCondition, e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + r.EncodeArrayStart(len(v)) + for _, yyv1 := range v { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy2 := &yyv1 + yy2.CodecEncodeSelf(e) + } + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) decSliceHorizontalPodAutoscalerCondition(v *[]HorizontalPodAutoscalerCondition, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + + yyv1 := *v + yyh1, yyl1 := z.DecSliceHelperStart() + var yyc1 bool + _ = yyc1 + if yyl1 == 0 { + if yyv1 == nil { + yyv1 = []HorizontalPodAutoscalerCondition{} + yyc1 = true + } else if len(yyv1) != 0 { + yyv1 = yyv1[:0] + yyc1 = true + } + } else if yyl1 > 0 { + var yyrr1, yyrl1 int + var yyrt1 bool + _, _ = yyrl1, yyrt1 + yyrr1 = yyl1 // len(yyv1) + if yyl1 > cap(yyv1) { + + yyrg1 := len(yyv1) > 0 + yyv21 := yyv1 + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 88) + if yyrt1 { + if yyrl1 <= cap(yyv1) { + yyv1 = yyv1[:yyrl1] + } else { + yyv1 = make([]HorizontalPodAutoscalerCondition, yyrl1) + } + } else { + yyv1 = make([]HorizontalPodAutoscalerCondition, yyrl1) + } + yyc1 = true + yyrr1 = len(yyv1) + if yyrg1 { + copy(yyv1, yyv21) + } + } else if yyl1 != len(yyv1) { + yyv1 = yyv1[:yyl1] + yyc1 = true + } + yyj1 := 0 + for ; yyj1 < yyrr1; yyj1++ { + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = HorizontalPodAutoscalerCondition{} + } else { + yyv2 := &yyv1[yyj1] + yyv2.CodecDecodeSelf(d) + } + + } + if yyrt1 { + for ; yyj1 < yyl1; yyj1++ { + yyv1 = append(yyv1, HorizontalPodAutoscalerCondition{}) + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = HorizontalPodAutoscalerCondition{} + } else { + yyv3 := &yyv1[yyj1] + yyv3.CodecDecodeSelf(d) + } + + } + } + + } else { + yyj1 := 0 + for ; !r.CheckBreak(); yyj1++ { + + if yyj1 >= len(yyv1) { + yyv1 = append(yyv1, HorizontalPodAutoscalerCondition{}) // var yyz1 HorizontalPodAutoscalerCondition + yyc1 = true + } + yyh1.ElemContainerState(yyj1) + if yyj1 < len(yyv1) { + if r.TryDecodeAsNil() { + yyv1[yyj1] = HorizontalPodAutoscalerCondition{} + } else { + yyv4 := &yyv1[yyj1] + yyv4.CodecDecodeSelf(d) + } + + } else { + z.DecSwallow() + } + + } + if yyj1 < len(yyv1) { + yyv1 = yyv1[:yyj1] + yyc1 = true + } else if yyj1 == 0 && yyv1 == nil { + yyv1 = []HorizontalPodAutoscalerCondition{} + yyc1 = true + } + } + yyh1.End() + if yyc1 { + *v = yyv1 + } +} + func (x codecSelfer1234) encSliceHorizontalPodAutoscaler(v []HorizontalPodAutoscaler, e *codec1978.Encoder) { var h codecSelfer1234 z, r := codec1978.GenHelperEncoder(e) @@ -4540,7 +5137,7 @@ func (x codecSelfer1234) decSliceHorizontalPodAutoscaler(v *[]HorizontalPodAutos yyrg1 := len(yyv1) > 0 yyv21 := yyv1 - yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 400) + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 424) if yyrt1 { if yyrl1 <= cap(yyv1) { yyv1 = yyv1[:yyrl1] diff --git a/vendor/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/types.go b/vendor/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/types.go index dd295142..bbdf7b09 100644 --- a/vendor/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/types.go +++ b/vendor/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/types.go @@ -24,7 +24,7 @@ import ( // CrossVersionObjectReference contains enough information to let you identify the referred resource. type CrossVersionObjectReference struct { - // Kind of the referent; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds" + // Kind of the referent; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds" Kind string `json:"kind" protobuf:"bytes,1,opt,name=kind"` // Name of the referent; More info: http://kubernetes.io/docs/user-guide/identifiers#names Name string `json:"name" protobuf:"bytes,2,opt,name=name"` @@ -138,7 +138,7 @@ type ResourceMetricSource struct { // the requested value of the resource for the pods. // +optional TargetAverageUtilization *int32 `json:"targetAverageUtilization,omitempty" protobuf:"varint,2,opt,name=targetAverageUtilization"` - // targetAverageValue is the the target value of the average of the + // targetAverageValue is the target value of the average of the // resource metric across all relevant pods, as a raw value (instead of as // a percentage of the request), similar to the "pods" metric source type. // +optional @@ -166,6 +166,46 @@ type HorizontalPodAutoscalerStatus struct { // currentMetrics is the last read state of the metrics used by this autoscaler. CurrentMetrics []MetricStatus `json:"currentMetrics" protobuf:"bytes,5,rep,name=currentMetrics"` + + // conditions is the set of conditions required for this autoscaler to scale its target, + // and indicates whether or not those conditions are met. + Conditions []HorizontalPodAutoscalerCondition `json:"conditions" protobuf:"bytes,6,rep,name=conditions"` +} + +// HorizontalPodAutoscalerConditionType are the valid conditions of +// a HorizontalPodAutoscaler. +type HorizontalPodAutoscalerConditionType string + +var ( + // ScalingActive indicates that the HPA controller is able to scale if necessary: + // it's correctly configured, can fetch the desired metrics, and isn't disabled. + ScalingActive HorizontalPodAutoscalerConditionType = "ScalingActive" + // AbleToScale indicates a lack of transient issues which prevent scaling from occuring, + // such as being in a backoff window, or being unable to access/update the target scale. + AbleToScale HorizontalPodAutoscalerConditionType = "AbleToScale" + // ScalingLimited indicates that the calculated scale based on metrics would be above or + // below the range for the HPA, and has thus been capped. + ScalingLimited HorizontalPodAutoscalerConditionType = "ScalingLimited" +) + +// HorizontalPodAutoscalerCondition describes the state of +// a HorizontalPodAutoscaler at a certain point. +type HorizontalPodAutoscalerCondition struct { + // type describes the current condition + Type HorizontalPodAutoscalerConditionType `json:"type" protobuf:"bytes,1,name=type"` + // status is the status of the condition (True, False, Unknown) + Status v1.ConditionStatus `json:"status" protobuf:"bytes,2,name=status"` + // lastTransitionTime is the last time the condition transitioned from + // one status to another + // +optional + LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty" protobuf:"bytes,3,opt,name=lastTransitionTime"` + // reason is the reason for the condition's last transition. + // +optional + Reason string `json:"reason,omitempty" protobuf:"bytes,4,opt,name=reason"` + // message is a human-readable explanation containing details about + // the transition + // +optional + Message string `json:"message,omitempty" protobuf:"bytes,5,opt,name=message"` } // MetricStatus describes the last-read state of a single metric. @@ -228,7 +268,7 @@ type ResourceMetricStatus struct { // specification. // +optional CurrentAverageUtilization *int32 `json:"currentAverageUtilization,omitempty" protobuf:"bytes,2,opt,name=currentAverageUtilization"` - // currentAverageValue is the the current value of the average of the + // currentAverageValue is the current value of the average of the // resource metric across all relevant pods, as a raw value (instead of as // a percentage of the request), similar to the "pods" metric source type. // It will always be set, regardless of the corresponding metric specification. @@ -243,12 +283,12 @@ type ResourceMetricStatus struct { type HorizontalPodAutoscaler struct { metav1.TypeMeta `json:",inline"` // metadata is the standard object metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // spec is the specification for the behaviour of the autoscaler. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. // +optional Spec HorizontalPodAutoscalerSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` diff --git a/vendor/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/types_swagger_doc_generated.go b/vendor/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/types_swagger_doc_generated.go index 13491dd9..b1c14073 100644 --- a/vendor/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/types_swagger_doc_generated.go +++ b/vendor/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/types_swagger_doc_generated.go @@ -29,7 +29,7 @@ package v2alpha1 // AUTO-GENERATED FUNCTIONS START HERE var map_CrossVersionObjectReference = map[string]string{ "": "CrossVersionObjectReference contains enough information to let you identify the referred resource.", - "kind": "Kind of the referent; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds\"", + "kind": "Kind of the referent; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds\"", "name": "Name of the referent; More info: http://kubernetes.io/docs/user-guide/identifiers#names", "apiVersion": "API version of the referent", } @@ -40,8 +40,8 @@ func (CrossVersionObjectReference) SwaggerDoc() map[string]string { var map_HorizontalPodAutoscaler = map[string]string{ "": "HorizontalPodAutoscaler is the configuration for a horizontal pod autoscaler, which automatically manages the replica count of any resource implementing the scale subresource based on the metrics specified.", - "metadata": "metadata is the standard object metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "spec": "spec is the specification for the behaviour of the autoscaler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status.", + "metadata": "metadata is the standard object metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "spec is the specification for the behaviour of the autoscaler. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status.", "status": "status is the current information about the autoscaler.", } @@ -49,6 +49,19 @@ func (HorizontalPodAutoscaler) SwaggerDoc() map[string]string { return map_HorizontalPodAutoscaler } +var map_HorizontalPodAutoscalerCondition = map[string]string{ + "": "HorizontalPodAutoscalerCondition describes the state of a HorizontalPodAutoscaler at a certain point.", + "type": "type describes the current condition", + "status": "status is the status of the condition (True, False, Unknown)", + "lastTransitionTime": "lastTransitionTime is the last time the condition transitioned from one status to another", + "reason": "reason is the reason for the condition's last transition.", + "message": "message is a human-readable explanation containing details about the transition", +} + +func (HorizontalPodAutoscalerCondition) SwaggerDoc() map[string]string { + return map_HorizontalPodAutoscalerCondition +} + var map_HorizontalPodAutoscalerList = map[string]string{ "": "HorizontalPodAutoscaler is a list of horizontal pod autoscaler objects.", "metadata": "metadata is the standard list metadata.", @@ -78,6 +91,7 @@ var map_HorizontalPodAutoscalerStatus = map[string]string{ "currentReplicas": "currentReplicas is current number of replicas of pods managed by this autoscaler, as last seen by the autoscaler.", "desiredReplicas": "desiredReplicas is the desired number of replicas of pods managed by this autoscaler, as last calculated by the autoscaler.", "currentMetrics": "currentMetrics is the last read state of the metrics used by this autoscaler.", + "conditions": "conditions is the set of conditions required for this autoscaler to scale its target, and indicates whether or not those conditions are met.", } func (HorizontalPodAutoscalerStatus) SwaggerDoc() map[string]string { @@ -154,7 +168,7 @@ var map_ResourceMetricSource = map[string]string{ "": "ResourceMetricSource indicates how to scale on a resource metric known to Kubernetes, as specified in requests and limits, describing each pod in the current scale target (e.g. CPU or memory). The values will be averaged together before being compared to the target. Such metrics are built in to Kubernetes, and have special scaling options on top of those available to normal per-pod metrics using the \"pods\" source. Only one \"target\" type should be set.", "name": "name is the name of the resource in question.", "targetAverageUtilization": "targetAverageUtilization is the target value of the average of the resource metric across all relevant pods, represented as a percentage of the requested value of the resource for the pods.", - "targetAverageValue": "targetAverageValue is the the target value of the average of the resource metric across all relevant pods, as a raw value (instead of as a percentage of the request), similar to the \"pods\" metric source type.", + "targetAverageValue": "targetAverageValue is the target value of the average of the resource metric across all relevant pods, as a raw value (instead of as a percentage of the request), similar to the \"pods\" metric source type.", } func (ResourceMetricSource) SwaggerDoc() map[string]string { @@ -165,7 +179,7 @@ var map_ResourceMetricStatus = map[string]string{ "": "ResourceMetricStatus indicates the current value of a resource metric known to Kubernetes, as specified in requests and limits, describing each pod in the current scale target (e.g. CPU or memory). Such metrics are built in to Kubernetes, and have special scaling options on top of those available to normal per-pod metrics using the \"pods\" source.", "name": "name is the name of the resource in question.", "currentAverageUtilization": "currentAverageUtilization is the current value of the average of the resource metric across all relevant pods, represented as a percentage of the requested value of the resource for the pods. It will only be present if `targetAverageValue` was set in the corresponding metric specification.", - "currentAverageValue": "currentAverageValue is the the current value of the average of the resource metric across all relevant pods, as a raw value (instead of as a percentage of the request), similar to the \"pods\" metric source type. It will always be set, regardless of the corresponding metric specification.", + "currentAverageValue": "currentAverageValue is the current value of the average of the resource metric across all relevant pods, as a raw value (instead of as a percentage of the request), similar to the \"pods\" metric source type. It will always be set, regardless of the corresponding metric specification.", } func (ResourceMetricStatus) SwaggerDoc() map[string]string { diff --git a/vendor/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/zz_generated.conversion.go b/vendor/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/zz_generated.conversion.go index 007aeb4a..698ff6d1 100644 --- a/vendor/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/zz_generated.conversion.go +++ b/vendor/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/zz_generated.conversion.go @@ -22,11 +22,11 @@ package v2alpha1 import ( resource "k8s.io/apimachinery/pkg/api/resource" - v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" conversion "k8s.io/apimachinery/pkg/conversion" runtime "k8s.io/apimachinery/pkg/runtime" api "k8s.io/client-go/pkg/api" - api_v1 "k8s.io/client-go/pkg/api/v1" + v1 "k8s.io/client-go/pkg/api/v1" autoscaling "k8s.io/client-go/pkg/apis/autoscaling" unsafe "unsafe" ) @@ -43,6 +43,8 @@ func RegisterConversions(scheme *runtime.Scheme) error { Convert_autoscaling_CrossVersionObjectReference_To_v2alpha1_CrossVersionObjectReference, Convert_v2alpha1_HorizontalPodAutoscaler_To_autoscaling_HorizontalPodAutoscaler, Convert_autoscaling_HorizontalPodAutoscaler_To_v2alpha1_HorizontalPodAutoscaler, + Convert_v2alpha1_HorizontalPodAutoscalerCondition_To_autoscaling_HorizontalPodAutoscalerCondition, + Convert_autoscaling_HorizontalPodAutoscalerCondition_To_v2alpha1_HorizontalPodAutoscalerCondition, Convert_v2alpha1_HorizontalPodAutoscalerList_To_autoscaling_HorizontalPodAutoscalerList, Convert_autoscaling_HorizontalPodAutoscalerList_To_v2alpha1_HorizontalPodAutoscalerList, Convert_v2alpha1_HorizontalPodAutoscalerSpec_To_autoscaling_HorizontalPodAutoscalerSpec, @@ -124,6 +126,34 @@ func Convert_autoscaling_HorizontalPodAutoscaler_To_v2alpha1_HorizontalPodAutosc return autoConvert_autoscaling_HorizontalPodAutoscaler_To_v2alpha1_HorizontalPodAutoscaler(in, out, s) } +func autoConvert_v2alpha1_HorizontalPodAutoscalerCondition_To_autoscaling_HorizontalPodAutoscalerCondition(in *HorizontalPodAutoscalerCondition, out *autoscaling.HorizontalPodAutoscalerCondition, s conversion.Scope) error { + out.Type = autoscaling.HorizontalPodAutoscalerConditionType(in.Type) + out.Status = autoscaling.ConditionStatus(in.Status) + out.LastTransitionTime = in.LastTransitionTime + out.Reason = in.Reason + out.Message = in.Message + return nil +} + +// Convert_v2alpha1_HorizontalPodAutoscalerCondition_To_autoscaling_HorizontalPodAutoscalerCondition is an autogenerated conversion function. +func Convert_v2alpha1_HorizontalPodAutoscalerCondition_To_autoscaling_HorizontalPodAutoscalerCondition(in *HorizontalPodAutoscalerCondition, out *autoscaling.HorizontalPodAutoscalerCondition, s conversion.Scope) error { + return autoConvert_v2alpha1_HorizontalPodAutoscalerCondition_To_autoscaling_HorizontalPodAutoscalerCondition(in, out, s) +} + +func autoConvert_autoscaling_HorizontalPodAutoscalerCondition_To_v2alpha1_HorizontalPodAutoscalerCondition(in *autoscaling.HorizontalPodAutoscalerCondition, out *HorizontalPodAutoscalerCondition, s conversion.Scope) error { + out.Type = HorizontalPodAutoscalerConditionType(in.Type) + out.Status = v1.ConditionStatus(in.Status) + out.LastTransitionTime = in.LastTransitionTime + out.Reason = in.Reason + out.Message = in.Message + return nil +} + +// Convert_autoscaling_HorizontalPodAutoscalerCondition_To_v2alpha1_HorizontalPodAutoscalerCondition is an autogenerated conversion function. +func Convert_autoscaling_HorizontalPodAutoscalerCondition_To_v2alpha1_HorizontalPodAutoscalerCondition(in *autoscaling.HorizontalPodAutoscalerCondition, out *HorizontalPodAutoscalerCondition, s conversion.Scope) error { + return autoConvert_autoscaling_HorizontalPodAutoscalerCondition_To_v2alpha1_HorizontalPodAutoscalerCondition(in, out, s) +} + func autoConvert_v2alpha1_HorizontalPodAutoscalerList_To_autoscaling_HorizontalPodAutoscalerList(in *HorizontalPodAutoscalerList, out *autoscaling.HorizontalPodAutoscalerList, s conversion.Scope) error { out.ListMeta = in.ListMeta out.Items = *(*[]autoscaling.HorizontalPodAutoscaler)(unsafe.Pointer(&in.Items)) @@ -182,10 +212,11 @@ func Convert_autoscaling_HorizontalPodAutoscalerSpec_To_v2alpha1_HorizontalPodAu func autoConvert_v2alpha1_HorizontalPodAutoscalerStatus_To_autoscaling_HorizontalPodAutoscalerStatus(in *HorizontalPodAutoscalerStatus, out *autoscaling.HorizontalPodAutoscalerStatus, s conversion.Scope) error { out.ObservedGeneration = (*int64)(unsafe.Pointer(in.ObservedGeneration)) - out.LastScaleTime = (*v1.Time)(unsafe.Pointer(in.LastScaleTime)) + out.LastScaleTime = (*meta_v1.Time)(unsafe.Pointer(in.LastScaleTime)) out.CurrentReplicas = in.CurrentReplicas out.DesiredReplicas = in.DesiredReplicas out.CurrentMetrics = *(*[]autoscaling.MetricStatus)(unsafe.Pointer(&in.CurrentMetrics)) + out.Conditions = *(*[]autoscaling.HorizontalPodAutoscalerCondition)(unsafe.Pointer(&in.Conditions)) return nil } @@ -196,7 +227,7 @@ func Convert_v2alpha1_HorizontalPodAutoscalerStatus_To_autoscaling_HorizontalPod func autoConvert_autoscaling_HorizontalPodAutoscalerStatus_To_v2alpha1_HorizontalPodAutoscalerStatus(in *autoscaling.HorizontalPodAutoscalerStatus, out *HorizontalPodAutoscalerStatus, s conversion.Scope) error { out.ObservedGeneration = (*int64)(unsafe.Pointer(in.ObservedGeneration)) - out.LastScaleTime = (*v1.Time)(unsafe.Pointer(in.LastScaleTime)) + out.LastScaleTime = (*meta_v1.Time)(unsafe.Pointer(in.LastScaleTime)) out.CurrentReplicas = in.CurrentReplicas out.DesiredReplicas = in.DesiredReplicas if in.CurrentMetrics == nil { @@ -204,6 +235,11 @@ func autoConvert_autoscaling_HorizontalPodAutoscalerStatus_To_v2alpha1_Horizonta } else { out.CurrentMetrics = *(*[]MetricStatus)(unsafe.Pointer(&in.CurrentMetrics)) } + if in.Conditions == nil { + out.Conditions = make([]HorizontalPodAutoscalerCondition, 0) + } else { + out.Conditions = *(*[]HorizontalPodAutoscalerCondition)(unsafe.Pointer(&in.Conditions)) + } return nil } @@ -377,7 +413,7 @@ func Convert_v2alpha1_ResourceMetricSource_To_autoscaling_ResourceMetricSource(i } func autoConvert_autoscaling_ResourceMetricSource_To_v2alpha1_ResourceMetricSource(in *autoscaling.ResourceMetricSource, out *ResourceMetricSource, s conversion.Scope) error { - out.Name = api_v1.ResourceName(in.Name) + out.Name = v1.ResourceName(in.Name) out.TargetAverageUtilization = (*int32)(unsafe.Pointer(in.TargetAverageUtilization)) out.TargetAverageValue = (*resource.Quantity)(unsafe.Pointer(in.TargetAverageValue)) return nil @@ -401,7 +437,7 @@ func Convert_v2alpha1_ResourceMetricStatus_To_autoscaling_ResourceMetricStatus(i } func autoConvert_autoscaling_ResourceMetricStatus_To_v2alpha1_ResourceMetricStatus(in *autoscaling.ResourceMetricStatus, out *ResourceMetricStatus, s conversion.Scope) error { - out.Name = api_v1.ResourceName(in.Name) + out.Name = v1.ResourceName(in.Name) out.CurrentAverageUtilization = (*int32)(unsafe.Pointer(in.CurrentAverageUtilization)) out.CurrentAverageValue = in.CurrentAverageValue return nil diff --git a/vendor/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/zz_generated.deepcopy.go b/vendor/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/zz_generated.deepcopy.go index b9916f60..9a9dd690 100644 --- a/vendor/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/zz_generated.deepcopy.go +++ b/vendor/k8s.io/client-go/pkg/apis/autoscaling/v2alpha1/zz_generated.deepcopy.go @@ -38,6 +38,7 @@ func RegisterDeepCopies(scheme *runtime.Scheme) error { return scheme.AddGeneratedDeepCopyFuncs( conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v2alpha1_CrossVersionObjectReference, InType: reflect.TypeOf(&CrossVersionObjectReference{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v2alpha1_HorizontalPodAutoscaler, InType: reflect.TypeOf(&HorizontalPodAutoscaler{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v2alpha1_HorizontalPodAutoscalerCondition, InType: reflect.TypeOf(&HorizontalPodAutoscalerCondition{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v2alpha1_HorizontalPodAutoscalerList, InType: reflect.TypeOf(&HorizontalPodAutoscalerList{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v2alpha1_HorizontalPodAutoscalerSpec, InType: reflect.TypeOf(&HorizontalPodAutoscalerSpec{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v2alpha1_HorizontalPodAutoscalerStatus, InType: reflect.TypeOf(&HorizontalPodAutoscalerStatus{})}, @@ -83,6 +84,17 @@ func DeepCopy_v2alpha1_HorizontalPodAutoscaler(in interface{}, out interface{}, } } +// DeepCopy_v2alpha1_HorizontalPodAutoscalerCondition is an autogenerated deepcopy function. +func DeepCopy_v2alpha1_HorizontalPodAutoscalerCondition(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*HorizontalPodAutoscalerCondition) + out := out.(*HorizontalPodAutoscalerCondition) + *out = *in + out.LastTransitionTime = in.LastTransitionTime.DeepCopy() + return nil + } +} + // DeepCopy_v2alpha1_HorizontalPodAutoscalerList is an autogenerated deepcopy function. func DeepCopy_v2alpha1_HorizontalPodAutoscalerList(in interface{}, out interface{}, c *conversion.Cloner) error { { @@ -151,6 +163,15 @@ func DeepCopy_v2alpha1_HorizontalPodAutoscalerStatus(in interface{}, out interfa } } } + if in.Conditions != nil { + in, out := &in.Conditions, &out.Conditions + *out = make([]HorizontalPodAutoscalerCondition, len(*in)) + for i := range *in { + if err := DeepCopy_v2alpha1_HorizontalPodAutoscalerCondition(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } return nil } } diff --git a/vendor/k8s.io/client-go/pkg/apis/autoscaling/zz_generated.deepcopy.go b/vendor/k8s.io/client-go/pkg/apis/autoscaling/zz_generated.deepcopy.go index 6ba85e93..a15d9b32 100644 --- a/vendor/k8s.io/client-go/pkg/apis/autoscaling/zz_generated.deepcopy.go +++ b/vendor/k8s.io/client-go/pkg/apis/autoscaling/zz_generated.deepcopy.go @@ -38,6 +38,7 @@ func RegisterDeepCopies(scheme *runtime.Scheme) error { return scheme.AddGeneratedDeepCopyFuncs( conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_autoscaling_CrossVersionObjectReference, InType: reflect.TypeOf(&CrossVersionObjectReference{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_autoscaling_HorizontalPodAutoscaler, InType: reflect.TypeOf(&HorizontalPodAutoscaler{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_autoscaling_HorizontalPodAutoscalerCondition, InType: reflect.TypeOf(&HorizontalPodAutoscalerCondition{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_autoscaling_HorizontalPodAutoscalerList, InType: reflect.TypeOf(&HorizontalPodAutoscalerList{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_autoscaling_HorizontalPodAutoscalerSpec, InType: reflect.TypeOf(&HorizontalPodAutoscalerSpec{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_autoscaling_HorizontalPodAutoscalerStatus, InType: reflect.TypeOf(&HorizontalPodAutoscalerStatus{})}, @@ -86,6 +87,17 @@ func DeepCopy_autoscaling_HorizontalPodAutoscaler(in interface{}, out interface{ } } +// DeepCopy_autoscaling_HorizontalPodAutoscalerCondition is an autogenerated deepcopy function. +func DeepCopy_autoscaling_HorizontalPodAutoscalerCondition(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*HorizontalPodAutoscalerCondition) + out := out.(*HorizontalPodAutoscalerCondition) + *out = *in + out.LastTransitionTime = in.LastTransitionTime.DeepCopy() + return nil + } +} + // DeepCopy_autoscaling_HorizontalPodAutoscalerList is an autogenerated deepcopy function. func DeepCopy_autoscaling_HorizontalPodAutoscalerList(in interface{}, out interface{}, c *conversion.Cloner) error { { @@ -154,6 +166,15 @@ func DeepCopy_autoscaling_HorizontalPodAutoscalerStatus(in interface{}, out inte } } } + if in.Conditions != nil { + in, out := &in.Conditions, &out.Conditions + *out = make([]HorizontalPodAutoscalerCondition, len(*in)) + for i := range *in { + if err := DeepCopy_autoscaling_HorizontalPodAutoscalerCondition(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } return nil } } diff --git a/vendor/k8s.io/client-go/pkg/apis/batch/types.go b/vendor/k8s.io/client-go/pkg/apis/batch/types.go index ce7cfff9..d392074d 100644 --- a/vendor/k8s.io/client-go/pkg/apis/batch/types.go +++ b/vendor/k8s.io/client-go/pkg/apis/batch/types.go @@ -27,17 +27,17 @@ import ( type Job struct { metav1.TypeMeta // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta // Specification of the desired behavior of a job. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec JobSpec // Current status of a job. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status JobStatus } @@ -46,7 +46,7 @@ type Job struct { type JobList struct { metav1.TypeMeta // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta @@ -58,12 +58,12 @@ type JobList struct { type JobTemplate struct { metav1.TypeMeta // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta // Defines jobs that will be created from this template. - // http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status + // https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Template JobTemplateSpec } @@ -71,12 +71,12 @@ type JobTemplate struct { // JobTemplateSpec describes the data a Job should have when created from a template type JobTemplateSpec struct { // Standard object's metadata of the jobs created from this template. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta // Specification of the desired behavior of the job. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec JobSpec } @@ -193,17 +193,17 @@ type JobCondition struct { type CronJob struct { metav1.TypeMeta // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta // Specification of the desired behavior of a cron job, including the schedule. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec CronJobSpec // Current status of a cron job. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status CronJobStatus } @@ -212,7 +212,7 @@ type CronJob struct { type CronJobList struct { metav1.TypeMeta // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta diff --git a/vendor/k8s.io/client-go/pkg/apis/batch/v1/generated.pb.go b/vendor/k8s.io/client-go/pkg/apis/batch/v1/generated.pb.go index c5cf434d..bcc6cd9c 100644 --- a/vendor/k8s.io/client-go/pkg/apis/batch/v1/generated.pb.go +++ b/vendor/k8s.io/client-go/pkg/apis/batch/v1/generated.pb.go @@ -1526,61 +1526,60 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 885 bytes of a gzipped FileDescriptorProto + // 873 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x54, 0xdd, 0x6e, 0xe3, 0x44, - 0x14, 0xce, 0x4f, 0xd3, 0x26, 0x93, 0xb6, 0xbb, 0x8c, 0x54, 0x29, 0xf4, 0x22, 0x59, 0x05, 0x84, - 0x0a, 0xda, 0xb5, 0x49, 0xbb, 0x42, 0x88, 0x0b, 0x24, 0x5c, 0x84, 0x44, 0xd5, 0xb2, 0xd5, 0xa4, - 0x02, 0x89, 0x1f, 0x89, 0xb1, 0x7d, 0x9a, 0x0e, 0xb5, 0x3d, 0x96, 0x67, 0x12, 0xd1, 0x3b, 0xde, - 0x00, 0x1e, 0x06, 0x21, 0x1e, 0xa1, 0x97, 0xbd, 0xe4, 0x2a, 0xa2, 0xe6, 0x2d, 0xf6, 0x0a, 0xcd, - 0x78, 0xfc, 0x93, 0x4d, 0x0a, 0xd9, 0xbd, 0xb3, 0xcf, 0x7c, 0xdf, 0x37, 0x67, 0xce, 0xf9, 0xce, - 0x41, 0x47, 0xd7, 0x1f, 0x0b, 0x8b, 0x71, 0xfb, 0x7a, 0xea, 0x42, 0x12, 0x81, 0x04, 0x61, 0xc7, - 0xd7, 0x13, 0x9b, 0xc6, 0x4c, 0xd8, 0x2e, 0x95, 0xde, 0x95, 0x3d, 0x1b, 0xd9, 0x13, 0x88, 0x20, - 0xa1, 0x12, 0x7c, 0x2b, 0x4e, 0xb8, 0xe4, 0xf8, 0x9d, 0x8c, 0x64, 0x95, 0x24, 0x2b, 0xbe, 0x9e, - 0x58, 0x8a, 0x64, 0x69, 0x92, 0x35, 0x1b, 0xed, 0x3f, 0x9b, 0x30, 0x79, 0x35, 0x75, 0x2d, 0x8f, - 0x87, 0xf6, 0x84, 0x4f, 0xb8, 0xad, 0xb9, 0xee, 0xf4, 0x52, 0xff, 0xe9, 0x1f, 0xfd, 0x95, 0x69, - 0xee, 0x3f, 0x37, 0x89, 0xd0, 0x98, 0x85, 0xd4, 0xbb, 0x62, 0x11, 0x24, 0x37, 0x65, 0x2a, 0x21, - 0x48, 0xba, 0x22, 0x93, 0x7d, 0xfb, 0x21, 0x56, 0x32, 0x8d, 0x24, 0x0b, 0x61, 0x89, 0xf0, 0xd1, - 0xff, 0x11, 0x84, 0x77, 0x05, 0x21, 0x5d, 0xe2, 0x1d, 0x3d, 0xc4, 0x9b, 0x4a, 0x16, 0xd8, 0x2c, - 0x92, 0x42, 0x26, 0x4b, 0xa4, 0xca, 0x9b, 0x04, 0x24, 0x33, 0x48, 0xca, 0x07, 0xc1, 0xcf, 0x34, - 0x8c, 0x03, 0x58, 0xf5, 0xa6, 0xa7, 0x0f, 0xb6, 0x64, 0x05, 0x7a, 0xf8, 0x6b, 0x03, 0x35, 0x4f, - 0xb8, 0x8b, 0x7f, 0x44, 0x6d, 0x55, 0x24, 0x9f, 0x4a, 0xda, 0xab, 0x3f, 0xa9, 0x1f, 0x74, 0x0f, - 0x3f, 0xb4, 0x4c, 0x9b, 0xaa, 0x39, 0x97, 0x8d, 0x52, 0x68, 0x6b, 0x36, 0xb2, 0x5e, 0xb8, 0x3f, - 0x81, 0x27, 0xcf, 0x40, 0x52, 0x07, 0xdf, 0xce, 0x07, 0xb5, 0x74, 0x3e, 0x40, 0x65, 0x8c, 0x14, - 0xaa, 0xf8, 0x2b, 0xb4, 0x21, 0x62, 0xf0, 0x7a, 0x0d, 0xad, 0xfe, 0xd4, 0x5a, 0xc3, 0x04, 0xd6, - 0x09, 0x77, 0xc7, 0x31, 0x78, 0xce, 0xb6, 0x51, 0xde, 0x50, 0x7f, 0x44, 0xeb, 0xe0, 0xaf, 0xd1, - 0xa6, 0x90, 0x54, 0x4e, 0x45, 0xaf, 0xa9, 0x15, 0xad, 0xb5, 0x15, 0x35, 0xcb, 0xd9, 0x35, 0x9a, - 0x9b, 0xd9, 0x3f, 0x31, 0x6a, 0xc3, 0xbb, 0x26, 0xda, 0x3e, 0xe1, 0xee, 0x31, 0x8f, 0x7c, 0x26, - 0x19, 0x8f, 0xf0, 0x73, 0xb4, 0x21, 0x6f, 0x62, 0xd0, 0x65, 0xe9, 0x38, 0x4f, 0xf2, 0x54, 0x2e, - 0x6e, 0x62, 0x78, 0x39, 0x1f, 0x3c, 0xae, 0x62, 0x55, 0x8c, 0x68, 0x74, 0x25, 0xbd, 0x86, 0xe6, - 0x7d, 0xba, 0x78, 0xdd, 0xcb, 0xf9, 0xe0, 0x3f, 0x1b, 0x65, 0x15, 0x9a, 0x8b, 0xe9, 0xe1, 0x09, - 0xda, 0x09, 0xa8, 0x90, 0xe7, 0x09, 0x77, 0xe1, 0x82, 0x85, 0x60, 0x5e, 0xff, 0xc1, 0x7a, 0xdd, - 0x52, 0x0c, 0x67, 0xcf, 0xa4, 0xb2, 0x73, 0x5a, 0x15, 0x22, 0x8b, 0xba, 0x78, 0x86, 0xb0, 0x0a, - 0x5c, 0x24, 0x34, 0x12, 0xd9, 0xe3, 0xd4, 0x6d, 0x1b, 0xaf, 0x7d, 0xdb, 0xbe, 0xb9, 0x0d, 0x9f, - 0x2e, 0xa9, 0x91, 0x15, 0x37, 0xe0, 0xf7, 0xd0, 0x66, 0x02, 0x54, 0xf0, 0xa8, 0xd7, 0xd2, 0x85, - 0x2b, 0xfa, 0x44, 0x74, 0x94, 0x98, 0x53, 0xfc, 0x3e, 0xda, 0x0a, 0x41, 0x08, 0x3a, 0x81, 0xde, - 0xa6, 0x06, 0x3e, 0x32, 0xc0, 0xad, 0xb3, 0x2c, 0x4c, 0xf2, 0xf3, 0xe1, 0x1f, 0x75, 0xb4, 0x75, - 0xc2, 0xdd, 0x53, 0x26, 0x24, 0xfe, 0x7e, 0xc9, 0xe8, 0xd6, 0x7a, 0x8f, 0x51, 0x6c, 0x6d, 0xf3, - 0xc7, 0xe6, 0x9e, 0x76, 0x1e, 0xa9, 0x98, 0xfc, 0x0c, 0xb5, 0x98, 0x84, 0x50, 0x35, 0xbd, 0x79, - 0xd0, 0x3d, 0x3c, 0x58, 0xd7, 0x93, 0xce, 0x8e, 0x11, 0x6d, 0x7d, 0xa9, 0xe8, 0x24, 0x53, 0x19, - 0xfe, 0xd9, 0xd4, 0x89, 0x2b, 0xd7, 0xe3, 0x11, 0xea, 0xc6, 0x34, 0xa1, 0x41, 0x00, 0x01, 0x13, - 0xa1, 0xce, 0xbd, 0xe5, 0x3c, 0x4a, 0xe7, 0x83, 0xee, 0x79, 0x19, 0x26, 0x55, 0x8c, 0xa2, 0x78, - 0x5c, 0xed, 0x09, 0x55, 0xdc, 0xcc, 0x88, 0x86, 0x72, 0x5c, 0x86, 0x49, 0x15, 0x83, 0x5f, 0xa0, - 0x3d, 0xea, 0x49, 0x36, 0x83, 0xcf, 0x81, 0xfa, 0x01, 0x8b, 0x60, 0x0c, 0x1e, 0x8f, 0xfc, 0x6c, - 0xc8, 0x9a, 0xce, 0xdb, 0xe9, 0x7c, 0xb0, 0xf7, 0xd9, 0x2a, 0x00, 0x59, 0xcd, 0xc3, 0x3f, 0xa0, - 0xb6, 0x80, 0x00, 0x3c, 0xc9, 0x13, 0x63, 0x9e, 0xa3, 0x35, 0xeb, 0x4d, 0x5d, 0x08, 0xc6, 0x86, - 0xea, 0x6c, 0xab, 0x82, 0xe7, 0x7f, 0xa4, 0x90, 0xc4, 0x9f, 0xa0, 0xdd, 0x90, 0x46, 0x53, 0x5a, - 0x20, 0xb5, 0x6b, 0xda, 0x0e, 0x4e, 0xe7, 0x83, 0xdd, 0xb3, 0x85, 0x13, 0xf2, 0x0a, 0x12, 0x7f, - 0x87, 0xda, 0x12, 0xc2, 0x38, 0xa0, 0x32, 0xb3, 0x50, 0xf7, 0xf0, 0xd9, 0xc3, 0xfd, 0x52, 0x29, - 0x9d, 0x73, 0xff, 0xc2, 0x10, 0xf4, 0x5a, 0x2a, 0x9c, 0x90, 0x47, 0x49, 0x21, 0x38, 0xfc, 0xbd, - 0x89, 0x3a, 0xc5, 0xb2, 0xc1, 0x80, 0x90, 0x97, 0x0f, 0xb4, 0xe8, 0xd5, 0xb5, 0x39, 0x46, 0xeb, - 0x9a, 0xa3, 0x58, 0x05, 0xe5, 0x86, 0x2d, 0x42, 0x82, 0x54, 0x84, 0xf1, 0x37, 0xa8, 0x23, 0x24, - 0x4d, 0xa4, 0x1e, 0xd5, 0xc6, 0x6b, 0x8f, 0xea, 0x4e, 0x3a, 0x1f, 0x74, 0xc6, 0xb9, 0x00, 0x29, - 0xb5, 0xf0, 0x25, 0xda, 0x2d, 0x5d, 0xf2, 0x86, 0x6b, 0x47, 0xb7, 0xe4, 0x78, 0x41, 0x85, 0xbc, - 0xa2, 0xaa, 0x86, 0x3f, 0xb3, 0x91, 0xf6, 0x4a, 0xab, 0x1c, 0xfe, 0xcc, 0x73, 0xc4, 0x9c, 0x62, - 0x1b, 0x75, 0xc4, 0xd4, 0xf3, 0x00, 0x7c, 0xf0, 0x75, 0xc7, 0x5b, 0xce, 0x5b, 0x06, 0xda, 0x19, - 0xe7, 0x07, 0xa4, 0xc4, 0x28, 0xe1, 0x4b, 0xca, 0x02, 0xf0, 0x75, 0xa7, 0x2b, 0xc2, 0x5f, 0xe8, - 0x28, 0x31, 0xa7, 0xce, 0xbb, 0xb7, 0xf7, 0xfd, 0xda, 0xdd, 0x7d, 0xbf, 0xf6, 0xd7, 0x7d, 0xbf, - 0xf6, 0x4b, 0xda, 0xaf, 0xdf, 0xa6, 0xfd, 0xfa, 0x5d, 0xda, 0xaf, 0xff, 0x9d, 0xf6, 0xeb, 0xbf, - 0xfd, 0xd3, 0xaf, 0x7d, 0xdb, 0x98, 0x8d, 0xfe, 0x0d, 0x00, 0x00, 0xff, 0xff, 0xe7, 0xe7, 0x0a, - 0x8d, 0xf7, 0x08, 0x00, 0x00, + 0x14, 0xce, 0x4f, 0xd3, 0x26, 0x93, 0xb6, 0xbb, 0x8c, 0x54, 0x29, 0xf4, 0xc2, 0x59, 0x05, 0x09, + 0x15, 0xb4, 0x6b, 0x93, 0x76, 0x85, 0x10, 0x17, 0x48, 0xb8, 0x08, 0x89, 0xaa, 0x65, 0xab, 0x49, + 0x05, 0x12, 0x3f, 0x12, 0x63, 0xfb, 0x34, 0x1d, 0x6a, 0x7b, 0x2c, 0xcf, 0x24, 0x52, 0xef, 0x78, + 0x03, 0x78, 0x18, 0x84, 0x78, 0x84, 0x5e, 0xf6, 0x72, 0xaf, 0x22, 0x6a, 0xde, 0x62, 0xaf, 0xd0, + 0x8c, 0x27, 0xb6, 0xb3, 0x49, 0x21, 0xe5, 0xce, 0x3e, 0xf3, 0x7d, 0xdf, 0x39, 0x73, 0xce, 0x77, + 0x06, 0x1d, 0x5d, 0x7f, 0x22, 0x6c, 0xc6, 0x9d, 0xeb, 0x89, 0x07, 0x69, 0x0c, 0x12, 0x84, 0x93, + 0x5c, 0x8f, 0x1d, 0x9a, 0x30, 0xe1, 0x78, 0x54, 0xfa, 0x57, 0xce, 0x74, 0xe8, 0x8c, 0x21, 0x86, + 0x94, 0x4a, 0x08, 0xec, 0x24, 0xe5, 0x92, 0xe3, 0xf7, 0x72, 0x92, 0x5d, 0x92, 0xec, 0xe4, 0x7a, + 0x6c, 0x2b, 0x92, 0xad, 0x49, 0xf6, 0x74, 0xb8, 0xff, 0x62, 0xcc, 0xe4, 0xd5, 0xc4, 0xb3, 0x7d, + 0x1e, 0x39, 0x63, 0x3e, 0xe6, 0x8e, 0xe6, 0x7a, 0x93, 0x4b, 0xfd, 0xa7, 0x7f, 0xf4, 0x57, 0xae, + 0xb9, 0xff, 0xd2, 0x14, 0x42, 0x13, 0x16, 0x51, 0xff, 0x8a, 0xc5, 0x90, 0xde, 0x94, 0xa5, 0x44, + 0x20, 0xe9, 0x8a, 0x4a, 0xf6, 0x9d, 0x87, 0x58, 0xe9, 0x24, 0x96, 0x2c, 0x82, 0x25, 0xc2, 0xc7, + 0xff, 0x45, 0x10, 0xfe, 0x15, 0x44, 0x74, 0x89, 0x77, 0xf4, 0x10, 0x6f, 0x22, 0x59, 0xe8, 0xb0, + 0x58, 0x0a, 0x99, 0x2e, 0x91, 0x9e, 0x3f, 0xd8, 0xdc, 0x15, 0x77, 0x19, 0xfc, 0xda, 0x40, 0xcd, + 0x13, 0xee, 0xe1, 0x9f, 0x50, 0x5b, 0x5d, 0x37, 0xa0, 0x92, 0xf6, 0xea, 0xcf, 0xea, 0x07, 0xdd, + 0xc3, 0x8f, 0x6c, 0xd3, 0xf0, 0x6a, 0xf6, 0xb2, 0xe5, 0x0a, 0x6d, 0x4f, 0x87, 0xf6, 0x2b, 0xef, + 0x67, 0xf0, 0xe5, 0x19, 0x48, 0xea, 0xe2, 0xdb, 0x59, 0xbf, 0x96, 0xcd, 0xfa, 0xa8, 0x8c, 0x91, + 0x42, 0x15, 0x7f, 0x8d, 0x36, 0x44, 0x02, 0x7e, 0xaf, 0xa1, 0xd5, 0x9f, 0xdb, 0x6b, 0x8c, 0xd3, + 0x3e, 0xe1, 0xde, 0x28, 0x01, 0xdf, 0xdd, 0x36, 0xca, 0x1b, 0xea, 0x8f, 0x68, 0x1d, 0xfc, 0x0d, + 0xda, 0x14, 0x92, 0xca, 0x89, 0xe8, 0x35, 0xb5, 0xa2, 0xbd, 0xb6, 0xa2, 0x66, 0xb9, 0xbb, 0x46, + 0x73, 0x33, 0xff, 0x27, 0x46, 0x6d, 0x70, 0xd7, 0x44, 0xdb, 0x27, 0xdc, 0x3b, 0xe6, 0x71, 0xc0, + 0x24, 0xe3, 0x31, 0x7e, 0x89, 0x36, 0xe4, 0x4d, 0x02, 0xba, 0x2d, 0x1d, 0xf7, 0xd9, 0xbc, 0x94, + 0x8b, 0x9b, 0x04, 0xde, 0xcc, 0xfa, 0x4f, 0xab, 0x58, 0x15, 0x23, 0x1a, 0x5d, 0x29, 0xaf, 0xa1, + 0x79, 0x9f, 0x2d, 0xa6, 0x7b, 0x33, 0xeb, 0xff, 0xeb, 0xa0, 0xec, 0x42, 0x73, 0xb1, 0x3c, 0x3c, + 0x46, 0x3b, 0x21, 0x15, 0xf2, 0x3c, 0xe5, 0x1e, 0x5c, 0xb0, 0x08, 0xcc, 0xed, 0x3f, 0x5c, 0x6f, + 0x5a, 0x8a, 0xe1, 0xee, 0x99, 0x52, 0x76, 0x4e, 0xab, 0x42, 0x64, 0x51, 0x17, 0x4f, 0x11, 0x56, + 0x81, 0x8b, 0x94, 0xc6, 0x22, 0xbf, 0x9c, 0xca, 0xb6, 0xf1, 0xe8, 0x6c, 0xfb, 0x26, 0x1b, 0x3e, + 0x5d, 0x52, 0x23, 0x2b, 0x32, 0xe0, 0xf7, 0xd1, 0x66, 0x0a, 0x54, 0xf0, 0xb8, 0xd7, 0xd2, 0x8d, + 0x2b, 0xe6, 0x44, 0x74, 0x94, 0x98, 0x53, 0xfc, 0x01, 0xda, 0x8a, 0x40, 0x08, 0x3a, 0x86, 0xde, + 0xa6, 0x06, 0x3e, 0x31, 0xc0, 0xad, 0xb3, 0x3c, 0x4c, 0xe6, 0xe7, 0x83, 0x3f, 0xea, 0x68, 0xeb, + 0x84, 0x7b, 0xa7, 0x4c, 0x48, 0xfc, 0xc3, 0x92, 0xd1, 0xed, 0xf5, 0x2e, 0xa3, 0xd8, 0xda, 0xe6, + 0x4f, 0x4d, 0x9e, 0xf6, 0x3c, 0x52, 0x31, 0xf9, 0x19, 0x6a, 0x31, 0x09, 0x91, 0x1a, 0x7a, 0xf3, + 0xa0, 0x7b, 0x78, 0xb0, 0xae, 0x27, 0xdd, 0x1d, 0x23, 0xda, 0xfa, 0x4a, 0xd1, 0x49, 0xae, 0x32, + 0xf8, 0xb3, 0xa9, 0x0b, 0x57, 0xae, 0xc7, 0x43, 0xd4, 0x4d, 0x68, 0x4a, 0xc3, 0x10, 0x42, 0x26, + 0x22, 0x5d, 0x7b, 0xcb, 0x7d, 0x92, 0xcd, 0xfa, 0xdd, 0xf3, 0x32, 0x4c, 0xaa, 0x18, 0x45, 0xf1, + 0x79, 0x94, 0x84, 0xa0, 0x9a, 0x9b, 0x1b, 0xd1, 0x50, 0x8e, 0xcb, 0x30, 0xa9, 0x62, 0xf0, 0x2b, + 0xb4, 0x47, 0x7d, 0xc9, 0xa6, 0xf0, 0x05, 0xd0, 0x20, 0x64, 0x31, 0x8c, 0xc0, 0xe7, 0x71, 0x90, + 0x2f, 0x59, 0xd3, 0x7d, 0x37, 0x9b, 0xf5, 0xf7, 0x3e, 0x5f, 0x05, 0x20, 0xab, 0x79, 0xf8, 0x47, + 0xd4, 0x16, 0x10, 0x82, 0x2f, 0x79, 0x6a, 0xcc, 0x73, 0xb4, 0x66, 0xbf, 0xa9, 0x07, 0xe1, 0xc8, + 0x50, 0xdd, 0x6d, 0xd5, 0xf0, 0xf9, 0x1f, 0x29, 0x24, 0xf1, 0xa7, 0x68, 0x37, 0xa2, 0xf1, 0x84, + 0x16, 0x48, 0xed, 0x9a, 0xb6, 0x8b, 0xb3, 0x59, 0x7f, 0xf7, 0x6c, 0xe1, 0x84, 0xbc, 0x85, 0xc4, + 0xdf, 0xa3, 0xb6, 0x84, 0x28, 0x09, 0xa9, 0xcc, 0x2d, 0xd4, 0x3d, 0x7c, 0xf1, 0xf0, 0xbc, 0x54, + 0x49, 0xe7, 0x3c, 0xb8, 0x30, 0x04, 0xfd, 0x2c, 0x15, 0x4e, 0x98, 0x47, 0x49, 0x21, 0x38, 0xf8, + 0xbd, 0x89, 0x3a, 0xc5, 0x63, 0x83, 0x01, 0x21, 0x7f, 0xbe, 0xd0, 0xa2, 0x57, 0xd7, 0xe6, 0x18, + 0xae, 0x6b, 0x8e, 0xe2, 0x29, 0x28, 0x5f, 0xd8, 0x22, 0x24, 0x48, 0x45, 0x18, 0x7f, 0x8b, 0x3a, + 0x42, 0xd2, 0x54, 0xea, 0x55, 0x6d, 0x3c, 0x7a, 0x55, 0x77, 0xb2, 0x59, 0xbf, 0x33, 0x9a, 0x0b, + 0x90, 0x52, 0x0b, 0x5f, 0xa2, 0xdd, 0xd2, 0x25, 0xff, 0xf3, 0xd9, 0xd1, 0x23, 0x39, 0x5e, 0x50, + 0x21, 0x6f, 0xa9, 0xaa, 0xe5, 0xcf, 0x6d, 0xa4, 0xbd, 0xd2, 0x2a, 0x97, 0x3f, 0xf7, 0x1c, 0x31, + 0xa7, 0xd8, 0x41, 0x1d, 0x31, 0xf1, 0x7d, 0x80, 0x00, 0x02, 0x3d, 0xf1, 0x96, 0xfb, 0x8e, 0x81, + 0x76, 0x46, 0xf3, 0x03, 0x52, 0x62, 0x94, 0xf0, 0x25, 0x65, 0x21, 0x04, 0x7a, 0xd2, 0x15, 0xe1, + 0x2f, 0x75, 0x94, 0x98, 0x53, 0xf7, 0xe0, 0xf6, 0xde, 0xaa, 0xdd, 0xdd, 0x5b, 0xb5, 0xd7, 0xf7, + 0x56, 0xed, 0x97, 0xcc, 0xaa, 0xdf, 0x66, 0x56, 0xfd, 0x2e, 0xb3, 0xea, 0xaf, 0x33, 0xab, 0xfe, + 0x57, 0x66, 0xd5, 0x7f, 0xfb, 0xdb, 0xaa, 0x7d, 0xd7, 0x98, 0x0e, 0xff, 0x09, 0x00, 0x00, 0xff, + 0xff, 0xe1, 0x7e, 0xeb, 0x67, 0xc5, 0x08, 0x00, 0x00, } diff --git a/vendor/k8s.io/client-go/pkg/apis/batch/v1/generated.proto b/vendor/k8s.io/client-go/pkg/apis/batch/v1/generated.proto index fe946b26..94698855 100644 --- a/vendor/k8s.io/client-go/pkg/apis/batch/v1/generated.proto +++ b/vendor/k8s.io/client-go/pkg/apis/batch/v1/generated.proto @@ -19,13 +19,12 @@ limitations under the License. syntax = 'proto2'; -package k8s.io.kubernetes.pkg.apis.batch.v1; +package k8s.io.client_go.pkg.apis.batch.v1; import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; import "k8s.io/kubernetes/pkg/api/v1/generated.proto"; // Package-wide variables from generator "generated". @@ -34,17 +33,17 @@ option go_package = "v1"; // Job represents the configuration of a single job. message Job { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // Specification of the desired behavior of a job. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional JobSpec spec = 2; // Current status of a job. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional JobStatus status = 3; } @@ -77,7 +76,7 @@ message JobCondition { // JobList is a collection of jobs. message JobList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -124,13 +123,13 @@ message JobSpec { // and other jobs to not function correctly. However, You may see // `manualSelector=true` in jobs that were created with the old `extensions/v1beta1` // API. - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/selector-generation.md + // More info: https://git.k8s.io/community/contributors/design-proposals/selector-generation.md // +optional optional bool manualSelector = 5; // Describes the pod that will be created when executing a job. // More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/ - optional k8s.io.kubernetes.pkg.api.v1.PodTemplateSpec template = 6; + optional k8s.io.client_go.pkg.api.v1.PodTemplateSpec template = 6; } // JobStatus represents the current state of a Job. diff --git a/vendor/k8s.io/client-go/pkg/apis/batch/v1/types.go b/vendor/k8s.io/client-go/pkg/apis/batch/v1/types.go index 12c2861d..bcc8c208 100644 --- a/vendor/k8s.io/client-go/pkg/apis/batch/v1/types.go +++ b/vendor/k8s.io/client-go/pkg/apis/batch/v1/types.go @@ -27,17 +27,17 @@ import ( type Job struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Specification of the desired behavior of a job. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec JobSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` // Current status of a job. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status JobStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } @@ -46,7 +46,7 @@ type Job struct { type JobList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -94,7 +94,7 @@ type JobSpec struct { // and other jobs to not function correctly. However, You may see // `manualSelector=true` in jobs that were created with the old `extensions/v1beta1` // API. - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/selector-generation.md + // More info: https://git.k8s.io/community/contributors/design-proposals/selector-generation.md // +optional ManualSelector *bool `json:"manualSelector,omitempty" protobuf:"varint,5,opt,name=manualSelector"` diff --git a/vendor/k8s.io/client-go/pkg/apis/batch/v1/types_swagger_doc_generated.go b/vendor/k8s.io/client-go/pkg/apis/batch/v1/types_swagger_doc_generated.go index 93aae065..da498519 100644 --- a/vendor/k8s.io/client-go/pkg/apis/batch/v1/types_swagger_doc_generated.go +++ b/vendor/k8s.io/client-go/pkg/apis/batch/v1/types_swagger_doc_generated.go @@ -29,9 +29,9 @@ package v1 // AUTO-GENERATED FUNCTIONS START HERE var map_Job = map[string]string{ "": "Job represents the configuration of a single job.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "spec": "Specification of the desired behavior of a job. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", - "status": "Current status of a job. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "Specification of the desired behavior of a job. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", + "status": "Current status of a job. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (Job) SwaggerDoc() map[string]string { @@ -54,7 +54,7 @@ func (JobCondition) SwaggerDoc() map[string]string { var map_JobList = map[string]string{ "": "JobList is a collection of jobs.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "items": "items is the list of Jobs.", } @@ -68,7 +68,7 @@ var map_JobSpec = map[string]string{ "completions": "Specifies the desired number of successfully finished pods the job should be run with. Setting to nil means that the success of any pod signals the success of all pods, and allows parallelism to have any positive value. Setting to 1 means that parallelism is limited to 1 and the success of that pod signals the success of the job. More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/", "activeDeadlineSeconds": "Optional duration in seconds relative to the startTime that the job may be active before the system tries to terminate it; value must be positive integer", "selector": "A label query over pods that should match the pod count. Normally, the system sets this field for you. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors", - "manualSelector": "manualSelector controls generation of pod labels and pod selectors. Leave `manualSelector` unset unless you are certain what you are doing. When false or unset, the system pick labels unique to this job and appends those labels to the pod template. When true, the user is responsible for picking unique labels and specifying the selector. Failure to pick a unique label may cause this and other jobs to not function correctly. However, You may see `manualSelector=true` in jobs that were created with the old `extensions/v1beta1` API. More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/selector-generation.md", + "manualSelector": "manualSelector controls generation of pod labels and pod selectors. Leave `manualSelector` unset unless you are certain what you are doing. When false or unset, the system pick labels unique to this job and appends those labels to the pod template. When true, the user is responsible for picking unique labels and specifying the selector. Failure to pick a unique label may cause this and other jobs to not function correctly. However, You may see `manualSelector=true` in jobs that were created with the old `extensions/v1beta1` API. More info: https://git.k8s.io/community/contributors/design-proposals/selector-generation.md", "template": "Describes the pod that will be created when executing a job. More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/", } diff --git a/vendor/k8s.io/client-go/pkg/apis/batch/v2alpha1/generated.pb.go b/vendor/k8s.io/client-go/pkg/apis/batch/v2alpha1/generated.pb.go index c1f4305b..28df224b 100644 --- a/vendor/k8s.io/client-go/pkg/apis/batch/v2alpha1/generated.pb.go +++ b/vendor/k8s.io/client-go/pkg/apis/batch/v2alpha1/generated.pb.go @@ -1457,55 +1457,55 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 799 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x94, 0x4d, 0x4f, 0xe3, 0x46, - 0x18, 0xc7, 0xe3, 0x90, 0x37, 0x26, 0xa5, 0x05, 0xb7, 0x82, 0x28, 0x95, 0x9c, 0x28, 0x52, 0xa5, - 0x14, 0x81, 0x5d, 0x42, 0x85, 0x68, 0x6f, 0x35, 0x55, 0xd5, 0x22, 0xfa, 0x22, 0x07, 0xd4, 0xaa, - 0x42, 0x15, 0x63, 0xe7, 0x49, 0x32, 0xc4, 0x6f, 0xf5, 0x8c, 0xa3, 0xe6, 0xd6, 0x8f, 0xd0, 0x6f, - 0xd1, 0x6f, 0xb1, 0x97, 0xdd, 0x03, 0x47, 0x0e, 0x7b, 0xd8, 0xbd, 0x44, 0x8b, 0xf7, 0x5b, 0xec, - 0x69, 0xe5, 0x89, 0x13, 0x07, 0x1c, 0x2f, 0x61, 0x57, 0xe2, 0xe6, 0x19, 0x3f, 0xff, 0xdf, 0x3c, - 0xcf, 0xf3, 0x7f, 0x66, 0xd0, 0x37, 0x83, 0x43, 0x2a, 0x13, 0x47, 0x19, 0xf8, 0x3a, 0x78, 0x36, - 0x30, 0xa0, 0x8a, 0x3b, 0xe8, 0x29, 0xd8, 0x25, 0x54, 0xd1, 0x31, 0x33, 0xfa, 0xca, 0xb0, 0x85, - 0x4d, 0xb7, 0x8f, 0xf7, 0x94, 0x1e, 0xd8, 0xe0, 0x61, 0x06, 0x1d, 0xd9, 0xf5, 0x1c, 0xe6, 0x88, - 0x5f, 0x4e, 0xa4, 0x72, 0x2c, 0x95, 0xdd, 0x41, 0x4f, 0x0e, 0xa5, 0x32, 0x97, 0xca, 0x53, 0x69, - 0x75, 0xb7, 0x47, 0x58, 0xdf, 0xd7, 0x65, 0xc3, 0xb1, 0x94, 0x9e, 0xd3, 0x73, 0x14, 0x4e, 0xd0, - 0xfd, 0x2e, 0x5f, 0xf1, 0x05, 0xff, 0x9a, 0x90, 0xab, 0x5f, 0x47, 0x49, 0x61, 0x97, 0x58, 0xd8, - 0xe8, 0x13, 0x1b, 0xbc, 0x51, 0x9c, 0x96, 0x05, 0x0c, 0x2b, 0xc3, 0x44, 0x3e, 0x55, 0x25, 0x4d, - 0xe5, 0xf9, 0x36, 0x23, 0x16, 0x24, 0x04, 0x07, 0xf7, 0x09, 0xa8, 0xd1, 0x07, 0x0b, 0x27, 0x74, - 0xfb, 0x69, 0x3a, 0x9f, 0x11, 0x53, 0x21, 0x36, 0xa3, 0xcc, 0x4b, 0x88, 0xe6, 0x6a, 0xa2, 0xe0, - 0x0d, 0xc1, 0x8b, 0x0b, 0x82, 0x7f, 0xb0, 0xe5, 0x9a, 0xb0, 0xa8, 0xa6, 0x9d, 0x54, 0x7b, 0x16, - 0x45, 0xef, 0xdf, 0x6f, 0x66, 0x42, 0xd4, 0xf8, 0x3f, 0x8b, 0x8a, 0x47, 0x9e, 0x63, 0x1f, 0x3b, - 0xba, 0x78, 0x81, 0x4a, 0x61, 0x77, 0x3b, 0x98, 0xe1, 0x8a, 0x50, 0x17, 0x9a, 0xe5, 0xd6, 0x57, - 0x72, 0xe4, 0xf2, 0x7c, 0xb1, 0xb1, 0xcf, 0x61, 0xb4, 0x3c, 0xdc, 0x93, 0x7f, 0xd5, 0x2f, 0xc1, - 0x60, 0x3f, 0x03, 0xc3, 0xaa, 0x78, 0x35, 0xae, 0x65, 0x82, 0x71, 0x0d, 0xc5, 0x7b, 0xda, 0x8c, - 0x2a, 0xfe, 0x81, 0x72, 0xd4, 0x05, 0xa3, 0x92, 0xe5, 0xf4, 0x03, 0x79, 0xe9, 0x19, 0x92, 0xa3, - 0x1c, 0xdb, 0x2e, 0x18, 0xea, 0x47, 0xd1, 0x19, 0xb9, 0x70, 0xa5, 0x71, 0xa2, 0x78, 0x81, 0x0a, - 0x94, 0x61, 0xe6, 0xd3, 0xca, 0x0a, 0x67, 0x1f, 0xbe, 0x07, 0x9b, 0xeb, 0xd5, 0x8f, 0x23, 0x7a, - 0x61, 0xb2, 0xd6, 0x22, 0x6e, 0xe3, 0x99, 0x80, 0xca, 0x51, 0xe4, 0x09, 0xa1, 0x4c, 0x3c, 0x4f, - 0x74, 0x4b, 0x5e, 0xae, 0x5b, 0xa1, 0x9a, 0xf7, 0x6a, 0x3d, 0x3a, 0xa9, 0x34, 0xdd, 0x99, 0xeb, - 0xd4, 0xef, 0x28, 0x4f, 0x18, 0x58, 0xb4, 0x92, 0xad, 0xaf, 0x34, 0xcb, 0xad, 0xd6, 0xc3, 0xcb, - 0x51, 0xd7, 0x22, 0x7c, 0xfe, 0xa7, 0x10, 0xa4, 0x4d, 0x78, 0x8d, 0x27, 0xb9, 0x59, 0x19, 0x61, - 0xfb, 0xc4, 0x1d, 0x54, 0x0a, 0x07, 0xbd, 0xe3, 0x9b, 0xc0, 0xcb, 0x58, 0x8d, 0xd3, 0x6a, 0x47, - 0xfb, 0xda, 0x2c, 0x42, 0x3c, 0x43, 0x5b, 0x94, 0x61, 0x8f, 0x11, 0xbb, 0xf7, 0x3d, 0xe0, 0x8e, - 0x49, 0x6c, 0x68, 0x83, 0xe1, 0xd8, 0x1d, 0xca, 0x3d, 0x5d, 0x51, 0x3f, 0x0f, 0xc6, 0xb5, 0xad, - 0xf6, 0xe2, 0x10, 0x2d, 0x4d, 0x2b, 0x9e, 0xa3, 0x0d, 0xc3, 0xb1, 0x0d, 0xdf, 0xf3, 0xc0, 0x36, - 0x46, 0xbf, 0x39, 0x26, 0x31, 0x46, 0xdc, 0xc8, 0x55, 0x55, 0x8e, 0xb2, 0xd9, 0x38, 0xba, 0x1b, - 0xf0, 0x66, 0xd1, 0xa6, 0x96, 0x04, 0x89, 0x5f, 0xa0, 0x22, 0xf5, 0xa9, 0x0b, 0x76, 0xa7, 0x92, - 0xab, 0x0b, 0xcd, 0x92, 0x5a, 0x0e, 0xc6, 0xb5, 0x62, 0x7b, 0xb2, 0xa5, 0x4d, 0xff, 0x89, 0x7f, - 0xa3, 0xf2, 0xa5, 0xa3, 0x9f, 0x82, 0xe5, 0x9a, 0x98, 0x41, 0x25, 0xcf, 0x3d, 0xfd, 0xf6, 0x01, - 0x8d, 0x3f, 0x8e, 0xd5, 0x7c, 0x4e, 0x3f, 0x8d, 0x52, 0x2f, 0xcf, 0xfd, 0xd0, 0xe6, 0xcf, 0x10, - 0xff, 0x42, 0x55, 0xea, 0x1b, 0x06, 0x50, 0xda, 0xf5, 0xcd, 0x63, 0x47, 0xa7, 0x3f, 0x12, 0xca, - 0x1c, 0x6f, 0x74, 0x42, 0x2c, 0xc2, 0x2a, 0x85, 0xba, 0xd0, 0xcc, 0xab, 0x52, 0x30, 0xae, 0x55, - 0xdb, 0xa9, 0x51, 0xda, 0x3b, 0x08, 0xa2, 0x86, 0x36, 0xbb, 0x98, 0x98, 0xd0, 0x49, 0xb0, 0x8b, - 0x9c, 0x5d, 0x0d, 0xc6, 0xb5, 0xcd, 0x1f, 0x16, 0x46, 0x68, 0x29, 0xca, 0xc6, 0x73, 0x01, 0xad, - 0xdd, 0xba, 0x31, 0xe2, 0x19, 0x2a, 0x60, 0x83, 0x91, 0x61, 0x38, 0x40, 0xe1, 0xb0, 0xee, 0xa6, - 0xf7, 0x2c, 0x7e, 0x2d, 0x34, 0xe8, 0x42, 0x68, 0x12, 0xc4, 0x17, 0xee, 0x3b, 0x0e, 0xd1, 0x22, - 0x98, 0x68, 0xa2, 0x75, 0x13, 0x53, 0x36, 0x9d, 0xc2, 0x53, 0x62, 0x01, 0xf7, 0xaf, 0xdc, 0xda, - 0x5e, 0xee, 0xa2, 0x85, 0x0a, 0xf5, 0xb3, 0x60, 0x5c, 0x5b, 0x3f, 0xb9, 0xc3, 0xd1, 0x12, 0xe4, - 0xc6, 0x4b, 0x01, 0xcd, 0xfb, 0xf4, 0x08, 0x8f, 0x61, 0x1f, 0x95, 0xd8, 0x74, 0xd8, 0xb2, 0x1f, - 0x3c, 0x6c, 0xb3, 0x5b, 0x3b, 0x9b, 0xb4, 0x19, 0xbd, 0xf1, 0x54, 0x40, 0x9f, 0xdc, 0x89, 0x7f, - 0x84, 0xfa, 0x7e, 0xb9, 0xf5, 0xd8, 0xef, 0x2c, 0x51, 0x1b, 0xaf, 0x2a, 0xed, 0x89, 0x57, 0xb7, - 0xaf, 0x6e, 0xa4, 0xcc, 0xf5, 0x8d, 0x94, 0x79, 0x71, 0x23, 0x65, 0xfe, 0x0d, 0x24, 0xe1, 0x2a, - 0x90, 0x84, 0xeb, 0x40, 0x12, 0x5e, 0x05, 0x92, 0xf0, 0xdf, 0x6b, 0x29, 0xf3, 0x67, 0x69, 0xda, - 0x9d, 0xb7, 0x01, 0x00, 0x00, 0xff, 0xff, 0x32, 0x5e, 0xac, 0x56, 0xd9, 0x08, 0x00, 0x00, + // 786 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x94, 0x4d, 0x4f, 0xdb, 0x48, + 0x18, 0xc7, 0xe3, 0x90, 0x37, 0x26, 0xcb, 0x2e, 0x78, 0x57, 0x10, 0x65, 0x25, 0x27, 0x8a, 0xb4, + 0x52, 0x76, 0x05, 0xe3, 0x25, 0xac, 0x10, 0xdb, 0x5b, 0x4d, 0x55, 0xb5, 0x88, 0xbe, 0xc8, 0x01, + 0xb5, 0xaa, 0x50, 0xc5, 0xd8, 0x99, 0x24, 0x43, 0xfc, 0x56, 0xcf, 0x38, 0x52, 0x6e, 0xfd, 0x08, + 0xfd, 0x16, 0xfd, 0x16, 0xbd, 0xb4, 0x07, 0x8e, 0x1c, 0x7a, 0xa0, 0x97, 0xa8, 0xb8, 0xdf, 0xa2, + 0xa7, 0xca, 0x13, 0x27, 0x0e, 0x38, 0x2e, 0xa1, 0x95, 0xb8, 0x79, 0xc6, 0xcf, 0xff, 0x37, 0xcf, + 0xf3, 0x7f, 0x9e, 0x19, 0xf0, 0x7f, 0x6f, 0x87, 0x42, 0x62, 0xcb, 0x3d, 0x4f, 0xc3, 0xae, 0x85, + 0x19, 0xa6, 0xb2, 0xd3, 0xeb, 0xc8, 0xc8, 0x21, 0x54, 0xd6, 0x10, 0xd3, 0xbb, 0x72, 0xbf, 0x81, + 0x0c, 0xa7, 0x8b, 0x36, 0xe5, 0x0e, 0xb6, 0xb0, 0x8b, 0x18, 0x6e, 0x41, 0xc7, 0xb5, 0x99, 0x2d, + 0xfe, 0x3d, 0x92, 0xc2, 0x48, 0x0a, 0x9d, 0x5e, 0x07, 0x06, 0x52, 0xc8, 0xa5, 0x70, 0x2c, 0x2d, + 0x6f, 0x74, 0x08, 0xeb, 0x7a, 0x1a, 0xd4, 0x6d, 0x53, 0xee, 0xd8, 0x1d, 0x5b, 0xe6, 0x04, 0xcd, + 0x6b, 0xf3, 0x15, 0x5f, 0xf0, 0xaf, 0x11, 0xb9, 0xfc, 0x5f, 0x98, 0x14, 0x72, 0x88, 0x89, 0xf4, + 0x2e, 0xb1, 0xb0, 0x3b, 0x88, 0xd2, 0x32, 0x31, 0x43, 0x72, 0x3f, 0x96, 0x4f, 0x59, 0x4e, 0x52, + 0xb9, 0x9e, 0xc5, 0x88, 0x89, 0x63, 0x82, 0xed, 0xeb, 0x04, 0x54, 0xef, 0x62, 0x13, 0xc5, 0x74, + 0x5b, 0x49, 0x3a, 0x8f, 0x11, 0x43, 0x26, 0x16, 0xa3, 0xcc, 0x8d, 0x89, 0xd6, 0x13, 0x8d, 0x9e, + 0x55, 0xcb, 0xd6, 0xf5, 0x6d, 0x89, 0x89, 0x6a, 0x6f, 0xd3, 0x20, 0xbf, 0xeb, 0xda, 0xd6, 0x9e, + 0xad, 0x89, 0xc7, 0xa0, 0x10, 0xf8, 0xd4, 0x42, 0x0c, 0x95, 0x84, 0xaa, 0x50, 0x2f, 0x36, 0xfe, + 0x85, 0x61, 0xbf, 0xa6, 0xd3, 0x8e, 0x3a, 0x16, 0x44, 0xc3, 0xfe, 0x26, 0x7c, 0xa2, 0x9d, 0x60, + 0x9d, 0x3d, 0xc2, 0x0c, 0x29, 0xe2, 0xe9, 0xb0, 0x92, 0xf2, 0x87, 0x15, 0x10, 0xed, 0xa9, 0x13, + 0xaa, 0xf8, 0x1c, 0x64, 0xa8, 0x83, 0xf5, 0x52, 0x9a, 0xd3, 0xb7, 0xe1, 0xdc, 0xd3, 0x00, 0xc3, + 0x1c, 0x9b, 0x0e, 0xd6, 0x95, 0x5f, 0xc2, 0x33, 0x32, 0xc1, 0x4a, 0xe5, 0x44, 0xf1, 0x18, 0xe4, + 0x28, 0x43, 0xcc, 0xa3, 0xa5, 0x05, 0xce, 0xde, 0xf9, 0x01, 0x36, 0xd7, 0x2b, 0xbf, 0x86, 0xf4, + 0xdc, 0x68, 0xad, 0x86, 0xdc, 0xda, 0x07, 0x01, 0x14, 0xc3, 0xc8, 0x7d, 0x42, 0x99, 0x78, 0x14, + 0x73, 0x0b, 0xce, 0xe7, 0x56, 0xa0, 0xe6, 0x5e, 0x2d, 0x87, 0x27, 0x15, 0xc6, 0x3b, 0x53, 0x4e, + 0x3d, 0x03, 0x59, 0xc2, 0xb0, 0x49, 0x4b, 0xe9, 0xea, 0x42, 0xbd, 0xd8, 0x68, 0xdc, 0xbc, 0x1c, + 0x65, 0x29, 0xc4, 0x67, 0x1f, 0x06, 0x20, 0x75, 0xc4, 0xab, 0xbd, 0xcb, 0x4c, 0xca, 0x08, 0xec, + 0x13, 0xd7, 0x41, 0x21, 0x18, 0xd9, 0x96, 0x67, 0x60, 0x5e, 0xc6, 0x62, 0x94, 0x56, 0x33, 0xdc, + 0x57, 0x27, 0x11, 0xe2, 0x21, 0x58, 0xa3, 0x0c, 0xb9, 0x8c, 0x58, 0x9d, 0x7b, 0x18, 0xb5, 0x0c, + 0x62, 0xe1, 0x26, 0xd6, 0x6d, 0xab, 0x45, 0x79, 0x4f, 0x17, 0x94, 0x3f, 0xfd, 0x61, 0x65, 0xad, + 0x39, 0x3b, 0x44, 0x4d, 0xd2, 0x8a, 0x47, 0x60, 0x45, 0xb7, 0x2d, 0xdd, 0x73, 0x5d, 0x6c, 0xe9, + 0x83, 0xa7, 0xb6, 0x41, 0xf4, 0x01, 0x6f, 0xe4, 0xa2, 0x02, 0xc3, 0x6c, 0x56, 0x76, 0xaf, 0x06, + 0x7c, 0x9d, 0xb5, 0xa9, 0xc6, 0x41, 0xe2, 0x5f, 0x20, 0x4f, 0x3d, 0xea, 0x60, 0xab, 0x55, 0xca, + 0x54, 0x85, 0x7a, 0x41, 0x29, 0xfa, 0xc3, 0x4a, 0xbe, 0x39, 0xda, 0x52, 0xc7, 0xff, 0xc4, 0x57, + 0xa0, 0x78, 0x62, 0x6b, 0x07, 0xd8, 0x74, 0x0c, 0xc4, 0x70, 0x29, 0xcb, 0x7b, 0x7a, 0xe7, 0x06, + 0xc6, 0xef, 0x45, 0x6a, 0x3e, 0xa7, 0xbf, 0x87, 0xa9, 0x17, 0xa7, 0x7e, 0xa8, 0xd3, 0x67, 0x88, + 0x2f, 0x41, 0x99, 0x7a, 0xba, 0x8e, 0x29, 0x6d, 0x7b, 0xc6, 0x9e, 0xad, 0xd1, 0x07, 0x84, 0x32, + 0xdb, 0x1d, 0xec, 0x13, 0x93, 0xb0, 0x52, 0xae, 0x2a, 0xd4, 0xb3, 0x8a, 0xe4, 0x0f, 0x2b, 0xe5, + 0x66, 0x62, 0x94, 0xfa, 0x1d, 0x82, 0xa8, 0x82, 0xd5, 0x36, 0x22, 0x06, 0x6e, 0xc5, 0xd8, 0x79, + 0xce, 0x2e, 0xfb, 0xc3, 0xca, 0xea, 0xfd, 0x99, 0x11, 0x6a, 0x82, 0xb2, 0xf6, 0x51, 0x00, 0x4b, + 0x97, 0x6e, 0x8c, 0x78, 0x08, 0x72, 0x48, 0x67, 0xa4, 0x1f, 0x0c, 0x50, 0x30, 0xac, 0x1b, 0xc9, + 0x9e, 0x45, 0xaf, 0x85, 0x8a, 0xdb, 0x38, 0x68, 0x12, 0x8e, 0x2e, 0xdc, 0x5d, 0x0e, 0x51, 0x43, + 0x98, 0x68, 0x80, 0x65, 0x03, 0x51, 0x36, 0x9e, 0xc2, 0x03, 0x62, 0x62, 0xde, 0xbf, 0x62, 0xe3, + 0x9f, 0xf9, 0x2e, 0x5a, 0xa0, 0x50, 0xfe, 0xf0, 0x87, 0x95, 0xe5, 0xfd, 0x2b, 0x1c, 0x35, 0x46, + 0xae, 0x7d, 0x12, 0xc0, 0x74, 0x9f, 0x6e, 0xe1, 0x31, 0xec, 0x82, 0x02, 0x1b, 0x0f, 0x5b, 0xfa, + 0xa7, 0x87, 0x6d, 0x72, 0x6b, 0x27, 0x93, 0x36, 0xa1, 0xd7, 0xde, 0x0b, 0xe0, 0xb7, 0x2b, 0xf1, + 0xb7, 0x50, 0xdf, 0xe3, 0x4b, 0x8f, 0xfd, 0xfa, 0x1c, 0xb5, 0xf1, 0xaa, 0x92, 0x9e, 0x78, 0x05, + 0x9e, 0x5e, 0x48, 0xa9, 0xb3, 0x0b, 0x29, 0x75, 0x7e, 0x21, 0xa5, 0x5e, 0xfb, 0x92, 0x70, 0xea, + 0x4b, 0xc2, 0x99, 0x2f, 0x09, 0xe7, 0xbe, 0x24, 0x7c, 0xf6, 0x25, 0xe1, 0xcd, 0x17, 0x29, 0xf5, + 0xa2, 0x30, 0x76, 0xe8, 0x5b, 0x00, 0x00, 0x00, 0xff, 0xff, 0x88, 0x78, 0x12, 0x5b, 0xa7, 0x08, + 0x00, 0x00, } diff --git a/vendor/k8s.io/client-go/pkg/apis/batch/v2alpha1/generated.proto b/vendor/k8s.io/client-go/pkg/apis/batch/v2alpha1/generated.proto index a5230d9c..48509d6f 100644 --- a/vendor/k8s.io/client-go/pkg/apis/batch/v2alpha1/generated.proto +++ b/vendor/k8s.io/client-go/pkg/apis/batch/v2alpha1/generated.proto @@ -19,13 +19,12 @@ limitations under the License. syntax = 'proto2'; -package k8s.io.kubernetes.pkg.apis.batch.v2alpha1; +package k8s.io.client_go.pkg.apis.batch.v2alpha1; import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; import "k8s.io/kubernetes/pkg/api/v1/generated.proto"; import "k8s.io/kubernetes/pkg/apis/batch/v1/generated.proto"; @@ -35,17 +34,17 @@ option go_package = "v2alpha1"; // CronJob represents the configuration of a single cron job. message CronJob { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // Specification of the desired behavior of a cron job, including the schedule. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional CronJobSpec spec = 2; // Current status of a cron job. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional CronJobStatus status = 3; } @@ -53,7 +52,7 @@ message CronJob { // CronJobList is a collection of cron jobs. message CronJobList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -99,7 +98,7 @@ message CronJobSpec { message CronJobStatus { // A list of pointers to currently running jobs. // +optional - repeated k8s.io.kubernetes.pkg.api.v1.ObjectReference active = 1; + repeated k8s.io.client_go.pkg.api.v1.ObjectReference active = 1; // Information when was the last time the job was successfully scheduled. // +optional @@ -109,12 +108,12 @@ message CronJobStatus { // JobTemplate describes a template for creating copies of a predefined pod. message JobTemplate { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // Defines jobs that will be created from this template. - // http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status + // https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional JobTemplateSpec template = 2; } @@ -122,13 +121,13 @@ message JobTemplate { // JobTemplateSpec describes the data a Job should have when created from a template message JobTemplateSpec { // Standard object's metadata of the jobs created from this template. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // Specification of the desired behavior of the job. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional - optional k8s.io.kubernetes.pkg.apis.batch.v1.JobSpec spec = 2; + optional k8s.io.client_go.pkg.apis.batch.v1.JobSpec spec = 2; } diff --git a/vendor/k8s.io/client-go/pkg/apis/batch/v2alpha1/types.go b/vendor/k8s.io/client-go/pkg/apis/batch/v2alpha1/types.go index daedaace..d5b3c487 100644 --- a/vendor/k8s.io/client-go/pkg/apis/batch/v2alpha1/types.go +++ b/vendor/k8s.io/client-go/pkg/apis/batch/v2alpha1/types.go @@ -26,12 +26,12 @@ import ( type JobTemplate struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Defines jobs that will be created from this template. - // http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status + // https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Template JobTemplateSpec `json:"template,omitempty" protobuf:"bytes,2,opt,name=template"` } @@ -39,12 +39,12 @@ type JobTemplate struct { // JobTemplateSpec describes the data a Job should have when created from a template type JobTemplateSpec struct { // Standard object's metadata of the jobs created from this template. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Specification of the desired behavior of the job. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec batchv1.JobSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` } @@ -55,17 +55,17 @@ type JobTemplateSpec struct { type CronJob struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Specification of the desired behavior of a cron job, including the schedule. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec CronJobSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` // Current status of a cron job. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status CronJobStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } @@ -75,7 +75,7 @@ type CronJobList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` diff --git a/vendor/k8s.io/client-go/pkg/apis/batch/v2alpha1/types_swagger_doc_generated.go b/vendor/k8s.io/client-go/pkg/apis/batch/v2alpha1/types_swagger_doc_generated.go index d91b2484..2b3ed4c5 100644 --- a/vendor/k8s.io/client-go/pkg/apis/batch/v2alpha1/types_swagger_doc_generated.go +++ b/vendor/k8s.io/client-go/pkg/apis/batch/v2alpha1/types_swagger_doc_generated.go @@ -29,9 +29,9 @@ package v2alpha1 // AUTO-GENERATED FUNCTIONS START HERE var map_CronJob = map[string]string{ "": "CronJob represents the configuration of a single cron job.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "spec": "Specification of the desired behavior of a cron job, including the schedule. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", - "status": "Current status of a cron job. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "Specification of the desired behavior of a cron job, including the schedule. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", + "status": "Current status of a cron job. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (CronJob) SwaggerDoc() map[string]string { @@ -40,7 +40,7 @@ func (CronJob) SwaggerDoc() map[string]string { var map_CronJobList = map[string]string{ "": "CronJobList is a collection of cron jobs.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "items": "items is the list of CronJobs.", } @@ -75,8 +75,8 @@ func (CronJobStatus) SwaggerDoc() map[string]string { var map_JobTemplate = map[string]string{ "": "JobTemplate describes a template for creating copies of a predefined pod.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "template": "Defines jobs that will be created from this template. http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "template": "Defines jobs that will be created from this template. https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (JobTemplate) SwaggerDoc() map[string]string { @@ -85,8 +85,8 @@ func (JobTemplate) SwaggerDoc() map[string]string { var map_JobTemplateSpec = map[string]string{ "": "JobTemplateSpec describes the data a Job should have when created from a template", - "metadata": "Standard object's metadata of the jobs created from this template. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "spec": "Specification of the desired behavior of the job. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", + "metadata": "Standard object's metadata of the jobs created from this template. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "Specification of the desired behavior of the job. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (JobTemplateSpec) SwaggerDoc() map[string]string { diff --git a/vendor/k8s.io/client-go/pkg/apis/certificates/v1beta1/generated.pb.go b/vendor/k8s.io/client-go/pkg/apis/certificates/v1beta1/generated.pb.go index b0336e5f..347df982 100644 --- a/vendor/k8s.io/client-go/pkg/apis/certificates/v1beta1/generated.pb.go +++ b/vendor/k8s.io/client-go/pkg/apis/certificates/v1beta1/generated.pb.go @@ -38,9 +38,10 @@ import proto "github.com/gogo/protobuf/proto" import fmt "fmt" import math "math" +import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + import strings "strings" import reflect "reflect" -import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" import io "io" @@ -275,10 +276,15 @@ func (m *CertificateSigningRequestSpec) MarshalTo(dAtA []byte) (int, error) { } } if len(m.Extra) > 0 { + keysForExtra := make([]string, 0, len(m.Extra)) for k := range m.Extra { + keysForExtra = append(keysForExtra, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForExtra) + for _, k := range keysForExtra { dAtA[i] = 0x32 i++ - v := m.Extra[k] + v := m.Extra[string(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -1632,58 +1638,57 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 833 bytes of a gzipped FileDescriptorProto + // 820 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x54, 0xcf, 0x8f, 0xdb, 0x44, - 0x14, 0x8e, 0xf3, 0x6b, 0x93, 0xc9, 0xb2, 0xad, 0x46, 0xa8, 0x32, 0x2b, 0xd5, 0x5e, 0x59, 0x80, - 0xb6, 0x08, 0x6c, 0xb2, 0x20, 0x58, 0x95, 0x03, 0x92, 0x4b, 0x85, 0x0a, 0x2d, 0x3f, 0x66, 0x1b, - 0x24, 0x10, 0x07, 0x26, 0xce, 0xab, 0x77, 0x9a, 0xf8, 0x07, 0x9e, 0x71, 0xb4, 0xb9, 0xa0, 0xde, - 0xb8, 0x72, 0xe4, 0x82, 0xc4, 0x9f, 0xb3, 0xc7, 0x1e, 0x39, 0xa0, 0x88, 0x0d, 0x27, 0x2e, 0xfc, - 0x01, 0x3d, 0xa1, 0x19, 0x4f, 0x62, 0xb3, 0x21, 0xb4, 0x2b, 0xe5, 0xe6, 0xf9, 0xe6, 0xbd, 0xef, - 0x7b, 0xef, 0x7b, 0xcf, 0x83, 0x3e, 0x1c, 0x1f, 0x73, 0x97, 0x25, 0xde, 0x38, 0x1f, 0x42, 0x16, - 0x83, 0x00, 0xee, 0xa5, 0xe3, 0xd0, 0xa3, 0x29, 0xe3, 0x5e, 0x00, 0x99, 0x60, 0x8f, 0x58, 0x40, - 0x25, 0x3a, 0xed, 0x0f, 0x41, 0xd0, 0xbe, 0x17, 0x42, 0x0c, 0x19, 0x15, 0x30, 0x72, 0xd3, 0x2c, - 0x11, 0x09, 0xf6, 0x0a, 0x02, 0xb7, 0x24, 0x70, 0xd3, 0x71, 0xe8, 0x4a, 0x02, 0xb7, 0x4a, 0xe0, - 0x6a, 0x82, 0xfd, 0xb7, 0x42, 0x26, 0x4e, 0xf3, 0xa1, 0x1b, 0x24, 0x91, 0x17, 0x26, 0x61, 0xe2, - 0x29, 0x9e, 0x61, 0xfe, 0x48, 0x9d, 0xd4, 0x41, 0x7d, 0x15, 0xfc, 0xfb, 0xef, 0xea, 0x02, 0x69, - 0xca, 0x22, 0x1a, 0x9c, 0xb2, 0x18, 0xb2, 0x59, 0x59, 0x62, 0x04, 0x82, 0x7a, 0xd3, 0xb5, 0xaa, - 0xf6, 0xbd, 0x4d, 0x59, 0x59, 0x1e, 0x0b, 0x16, 0xc1, 0x5a, 0xc2, 0x7b, 0xcf, 0x4b, 0xe0, 0xc1, - 0x29, 0x44, 0x74, 0x2d, 0xef, 0x9d, 0x4d, 0x79, 0xb9, 0x60, 0x13, 0x8f, 0xc5, 0x82, 0x8b, 0x6c, - 0x2d, 0xa9, 0xd2, 0x13, 0x87, 0x6c, 0x0a, 0x59, 0xd9, 0x10, 0x9c, 0xd1, 0x28, 0x9d, 0xc0, 0x7f, - 0xf4, 0xe4, 0xfc, 0x55, 0x47, 0xaf, 0xdc, 0x29, 0x1d, 0x3d, 0x61, 0x61, 0xcc, 0xe2, 0x90, 0xc0, - 0xf7, 0x39, 0x70, 0x81, 0xbf, 0x43, 0x1d, 0x69, 0xc6, 0x88, 0x0a, 0x6a, 0x1a, 0x07, 0xc6, 0x61, - 0xef, 0xe8, 0x6d, 0x57, 0x8f, 0xa6, 0x5a, 0x5b, 0x39, 0x1c, 0x19, 0xed, 0x4e, 0xfb, 0xee, 0xe7, - 0xc3, 0xc7, 0x10, 0x88, 0x07, 0x20, 0xa8, 0x8f, 0xcf, 0xe7, 0x76, 0x6d, 0x31, 0xb7, 0x51, 0x89, - 0x91, 0x15, 0x2b, 0x4e, 0x51, 0x93, 0xa7, 0x10, 0x98, 0x75, 0xc5, 0xfe, 0x99, 0x7b, 0xc5, 0xc1, - 0xbb, 0x1b, 0x6b, 0x3f, 0x49, 0x21, 0xf0, 0x77, 0xb5, 0x76, 0x53, 0x9e, 0x88, 0x52, 0xc2, 0x67, - 0xa8, 0xcd, 0x05, 0x15, 0x39, 0x37, 0x1b, 0x4a, 0xf3, 0x8b, 0x2d, 0x6a, 0x2a, 0x5e, 0x7f, 0x4f, - 0xab, 0xb6, 0x8b, 0x33, 0xd1, 0x7a, 0xce, 0x2f, 0x75, 0xe4, 0x6c, 0xcc, 0xbd, 0x93, 0xc4, 0x23, - 0x26, 0x58, 0x12, 0xe3, 0x63, 0xd4, 0x14, 0xb3, 0x14, 0x94, 0xe1, 0x5d, 0xff, 0xd5, 0x65, 0x0b, - 0x0f, 0x67, 0x29, 0x3c, 0x9b, 0xdb, 0x2f, 0x5f, 0x8e, 0x97, 0x38, 0x51, 0x19, 0xf8, 0x75, 0xd4, - 0xce, 0x80, 0xf2, 0x24, 0x56, 0x76, 0x76, 0xcb, 0x42, 0x88, 0x42, 0x89, 0xbe, 0xc5, 0xb7, 0xd0, - 0x4e, 0x04, 0x9c, 0xd3, 0x10, 0x94, 0x07, 0x5d, 0xff, 0x9a, 0x0e, 0xdc, 0x79, 0x50, 0xc0, 0x64, - 0x79, 0x8f, 0x1f, 0xa3, 0xbd, 0x09, 0xe5, 0x62, 0x90, 0x8e, 0xa8, 0x80, 0x87, 0x2c, 0x02, 0xb3, - 0xa9, 0x5c, 0x7b, 0xe3, 0xc5, 0xf6, 0x40, 0x66, 0xf8, 0x37, 0x34, 0xfb, 0xde, 0xfd, 0x7f, 0x31, - 0x91, 0x4b, 0xcc, 0xce, 0xdf, 0x06, 0xba, 0xb9, 0xd1, 0x9f, 0xfb, 0x8c, 0x0b, 0xfc, 0xed, 0xda, - 0x3e, 0xba, 0x2f, 0x56, 0x87, 0xcc, 0x56, 0xdb, 0x78, 0x5d, 0xd7, 0xd2, 0x59, 0x22, 0x95, 0x5d, - 0x4c, 0x50, 0x8b, 0x09, 0x88, 0xb8, 0x59, 0x3f, 0x68, 0x1c, 0xf6, 0x8e, 0x3e, 0xd9, 0xde, 0x62, - 0xf8, 0x2f, 0x69, 0xd9, 0xd6, 0x3d, 0x29, 0x40, 0x0a, 0x1d, 0x67, 0xd1, 0xf8, 0x9f, 0x86, 0xe5, - 0xca, 0xe2, 0xd7, 0xd0, 0x4e, 0x56, 0x1c, 0x55, 0xbf, 0xbb, 0x7e, 0x4f, 0x4e, 0x49, 0x47, 0x90, - 0xe5, 0x1d, 0x7e, 0x13, 0x75, 0x72, 0x0e, 0x59, 0x4c, 0x23, 0xd0, 0xa3, 0x5f, 0xf5, 0x39, 0xd0, - 0x38, 0x59, 0x45, 0xe0, 0x9b, 0xa8, 0x91, 0xb3, 0x91, 0x1e, 0x7d, 0x4f, 0x07, 0x36, 0x06, 0xf7, - 0x3e, 0x22, 0x12, 0xc7, 0x0e, 0x6a, 0x87, 0x59, 0x92, 0xa7, 0xdc, 0x6c, 0x1e, 0x34, 0x0e, 0xbb, - 0x3e, 0x92, 0x1b, 0xf4, 0xb1, 0x42, 0x88, 0xbe, 0xc1, 0x47, 0xa8, 0x33, 0x86, 0xd9, 0x40, 0xad, - 0x50, 0x4b, 0x45, 0xdd, 0x90, 0x51, 0x0a, 0xe0, 0xcf, 0xe6, 0x76, 0xe7, 0x53, 0x7d, 0x4b, 0x56, - 0x71, 0xf8, 0x07, 0xd4, 0x82, 0x33, 0x91, 0x51, 0xb3, 0xad, 0xec, 0xfd, 0x7a, 0xbb, 0xff, 0xba, - 0x7b, 0x57, 0x72, 0xdf, 0x8d, 0x45, 0x36, 0x2b, 0xdd, 0x56, 0x18, 0x29, 0x64, 0xf7, 0x73, 0x84, - 0xca, 0x18, 0x7c, 0x1d, 0x35, 0xc6, 0x30, 0x2b, 0x7e, 0x32, 0x22, 0x3f, 0xf1, 0x97, 0xa8, 0x35, - 0xa5, 0x93, 0x1c, 0xf4, 0x5b, 0xf4, 0xc1, 0x95, 0xeb, 0x53, 0xec, 0x5f, 0x49, 0x0a, 0x52, 0x30, - 0xdd, 0xae, 0x1f, 0x1b, 0xce, 0xdc, 0x40, 0xf6, 0x73, 0x5e, 0x0c, 0xfc, 0xa3, 0x81, 0x50, 0xb0, - 0xfc, 0xa1, 0xb9, 0x69, 0x28, 0x83, 0x4e, 0xb6, 0x67, 0xd0, 0xea, 0xb1, 0x28, 0x5f, 0xe3, 0x15, - 0xc4, 0x49, 0x45, 0x1a, 0xf7, 0x51, 0xaf, 0x42, 0xad, 0xac, 0xd8, 0xf5, 0xaf, 0x2d, 0xe6, 0x76, - 0xaf, 0x42, 0x4e, 0xaa, 0x31, 0xce, 0xfb, 0xda, 0x57, 0xd5, 0x39, 0xb6, 0x97, 0x3f, 0x91, 0xa1, - 0xd6, 0xa2, 0x7b, 0x79, 0xe9, 0x6f, 0x77, 0x7e, 0xfe, 0xd5, 0xae, 0x3d, 0xf9, 0xfd, 0xa0, 0xe6, - 0xdf, 0x3a, 0xbf, 0xb0, 0x6a, 0x4f, 0x2f, 0xac, 0xda, 0x6f, 0x17, 0x56, 0xed, 0xc9, 0xc2, 0x32, - 0xce, 0x17, 0x96, 0xf1, 0x74, 0x61, 0x19, 0x7f, 0x2c, 0x2c, 0xe3, 0xa7, 0x3f, 0xad, 0xda, 0x37, - 0x3b, 0xba, 0xb3, 0x7f, 0x02, 0x00, 0x00, 0xff, 0xff, 0xc5, 0x92, 0xb9, 0x6f, 0x52, 0x08, 0x00, - 0x00, + 0x14, 0x8e, 0xf3, 0x6b, 0x93, 0xc9, 0xb2, 0xad, 0x46, 0xa8, 0x32, 0x2b, 0xd5, 0x8e, 0x2c, 0x40, + 0x0b, 0xa2, 0x36, 0x59, 0x10, 0xac, 0xca, 0x01, 0xc9, 0xa5, 0x42, 0x85, 0x96, 0x1f, 0xb3, 0x0d, + 0x12, 0x88, 0x03, 0x13, 0xe7, 0xd5, 0x3b, 0xcd, 0xfa, 0x07, 0x9e, 0x71, 0xd4, 0x5c, 0x50, 0x6f, + 0x5c, 0x39, 0x72, 0x41, 0xe2, 0xcf, 0xd9, 0x63, 0x8f, 0x3d, 0xa0, 0x88, 0x35, 0x27, 0x2e, 0xfc, + 0x01, 0x3d, 0xa1, 0x19, 0x4f, 0xe2, 0x90, 0x28, 0xb4, 0x95, 0x72, 0x9b, 0xf9, 0xe6, 0xbd, 0xef, + 0x7b, 0xef, 0x9b, 0x37, 0x83, 0x3e, 0x9e, 0x9c, 0x70, 0x97, 0x25, 0xde, 0x24, 0x1f, 0x41, 0x16, + 0x83, 0x00, 0xee, 0xa5, 0x93, 0xd0, 0xa3, 0x29, 0xe3, 0x5e, 0x00, 0x99, 0x60, 0x0f, 0x58, 0x40, + 0x25, 0x3a, 0x1d, 0x8c, 0x40, 0xd0, 0x81, 0x17, 0x42, 0x0c, 0x19, 0x15, 0x30, 0x76, 0xd3, 0x2c, + 0x11, 0x09, 0xf6, 0x4a, 0x02, 0xb7, 0x22, 0x70, 0xd3, 0x49, 0xe8, 0x4a, 0x02, 0x77, 0x95, 0xc0, + 0xd5, 0x04, 0x87, 0x37, 0x42, 0x26, 0xce, 0xf2, 0x91, 0x1b, 0x24, 0x91, 0x17, 0x26, 0x61, 0xe2, + 0x29, 0x9e, 0x51, 0xfe, 0x40, 0xed, 0xd4, 0x46, 0xad, 0x4a, 0xfe, 0xc3, 0xf7, 0x75, 0x81, 0x34, + 0x65, 0x11, 0x0d, 0xce, 0x58, 0x0c, 0xd9, 0xac, 0x2a, 0x31, 0x02, 0x41, 0xbd, 0xe9, 0x46, 0x55, + 0x87, 0xde, 0xb6, 0xac, 0x2c, 0x8f, 0x05, 0x8b, 0x60, 0x23, 0xe1, 0x83, 0xe7, 0x25, 0xf0, 0xe0, + 0x0c, 0x22, 0xba, 0x91, 0xf7, 0xde, 0xb6, 0xbc, 0x5c, 0xb0, 0x73, 0x8f, 0xc5, 0x82, 0x8b, 0x6c, + 0x3d, 0xc9, 0xf9, 0xbb, 0x8e, 0x5e, 0xbb, 0x55, 0x79, 0x73, 0xca, 0xc2, 0x98, 0xc5, 0x21, 0x81, + 0x1f, 0x73, 0xe0, 0x02, 0xff, 0x80, 0x3a, 0xb2, 0xad, 0x31, 0x15, 0xd4, 0x34, 0xfa, 0xc6, 0x51, + 0xef, 0xf8, 0x5d, 0x57, 0x9b, 0xbc, 0xaa, 0x52, 0xd9, 0x2c, 0xa3, 0xdd, 0xe9, 0xc0, 0xfd, 0x72, + 0xf4, 0x10, 0x02, 0x71, 0x0f, 0x04, 0xf5, 0xf1, 0xc5, 0xdc, 0xae, 0x15, 0x73, 0x1b, 0x55, 0x18, + 0x59, 0xb2, 0xe2, 0x14, 0x35, 0x79, 0x0a, 0x81, 0x59, 0x57, 0xec, 0x5f, 0xb8, 0x2f, 0x79, 0x85, + 0xee, 0xd6, 0xda, 0x4f, 0x53, 0x08, 0xfc, 0x7d, 0xad, 0xdd, 0x94, 0x3b, 0xa2, 0x94, 0xf0, 0x23, + 0xd4, 0xe6, 0x82, 0x8a, 0x9c, 0x9b, 0x0d, 0xa5, 0xf9, 0xd5, 0x0e, 0x35, 0x15, 0xaf, 0x7f, 0xa0, + 0x55, 0xdb, 0xe5, 0x9e, 0x68, 0x3d, 0xe7, 0xb7, 0x3a, 0x72, 0xb6, 0xe6, 0xde, 0x4a, 0xe2, 0x31, + 0x13, 0x2c, 0x89, 0xf1, 0x09, 0x6a, 0x8a, 0x59, 0x0a, 0xca, 0xf0, 0xae, 0xff, 0xfa, 0xa2, 0x85, + 0xfb, 0xb3, 0x14, 0x9e, 0xcd, 0xed, 0x57, 0xd7, 0xe3, 0x25, 0x4e, 0x54, 0x06, 0x7e, 0x13, 0xb5, + 0x33, 0xa0, 0x3c, 0x89, 0x95, 0x9d, 0xdd, 0xaa, 0x10, 0xa2, 0x50, 0xa2, 0x4f, 0xf1, 0x5b, 0x68, + 0x2f, 0x02, 0xce, 0x69, 0x08, 0xca, 0x83, 0xae, 0x7f, 0x45, 0x07, 0xee, 0xdd, 0x2b, 0x61, 0xb2, + 0x38, 0xc7, 0x0f, 0xd1, 0xc1, 0x39, 0xe5, 0x62, 0x98, 0x8e, 0xa9, 0x80, 0xfb, 0x2c, 0x02, 0xb3, + 0xa9, 0x5c, 0x7b, 0xfb, 0xc5, 0xe6, 0x40, 0x66, 0xf8, 0xd7, 0x34, 0xfb, 0xc1, 0xdd, 0xff, 0x30, + 0x91, 0x35, 0x66, 0xe7, 0x1f, 0x03, 0x5d, 0xdf, 0xea, 0xcf, 0x5d, 0xc6, 0x05, 0xfe, 0x7e, 0x63, + 0x1e, 0xdd, 0x17, 0xab, 0x43, 0x66, 0xab, 0x69, 0xbc, 0xaa, 0x6b, 0xe9, 0x2c, 0x90, 0x95, 0x59, + 0x4c, 0x50, 0x8b, 0x09, 0x88, 0xb8, 0x59, 0xef, 0x37, 0x8e, 0x7a, 0xc7, 0x9f, 0xed, 0x6e, 0x30, + 0xfc, 0x57, 0xb4, 0x6c, 0xeb, 0x8e, 0x14, 0x20, 0xa5, 0x8e, 0x53, 0x34, 0xfe, 0xa7, 0x61, 0x39, + 0xb2, 0xf8, 0x0d, 0xb4, 0x97, 0x95, 0x5b, 0xd5, 0xef, 0xbe, 0xdf, 0x93, 0xb7, 0xa4, 0x23, 0xc8, + 0xe2, 0x0c, 0xbf, 0x83, 0x3a, 0x39, 0x87, 0x2c, 0xa6, 0x11, 0xe8, 0xab, 0x5f, 0xf6, 0x39, 0xd4, + 0x38, 0x59, 0x46, 0xe0, 0xeb, 0xa8, 0x91, 0xb3, 0xb1, 0xbe, 0xfa, 0x9e, 0x0e, 0x6c, 0x0c, 0xef, + 0x7c, 0x42, 0x24, 0x8e, 0x1d, 0xd4, 0x0e, 0xb3, 0x24, 0x4f, 0xb9, 0xd9, 0xec, 0x37, 0x8e, 0xba, + 0x3e, 0x92, 0x13, 0xf4, 0xa9, 0x42, 0x88, 0x3e, 0xc1, 0xc7, 0xa8, 0x33, 0x81, 0xd9, 0x50, 0x8d, + 0x50, 0x4b, 0x45, 0x5d, 0x93, 0x51, 0x0a, 0xe0, 0xcf, 0xe6, 0x76, 0xe7, 0x73, 0x7d, 0x4a, 0x96, + 0x71, 0xf8, 0x27, 0xd4, 0x82, 0x47, 0x22, 0xa3, 0x66, 0x5b, 0xd9, 0xfb, 0xed, 0x6e, 0xdf, 0xba, + 0x7b, 0x5b, 0x72, 0xdf, 0x8e, 0x45, 0x36, 0xab, 0xdc, 0x56, 0x18, 0x29, 0x65, 0x0f, 0x73, 0x84, + 0xaa, 0x18, 0x7c, 0x15, 0x35, 0x26, 0x30, 0x2b, 0x1f, 0x19, 0x91, 0x4b, 0xfc, 0x35, 0x6a, 0x4d, + 0xe9, 0x79, 0x0e, 0xfa, 0x2f, 0xfa, 0xe8, 0xa5, 0xeb, 0x53, 0xec, 0xdf, 0x48, 0x0a, 0x52, 0x32, + 0xdd, 0xac, 0x9f, 0x18, 0xce, 0xdc, 0x40, 0xf6, 0x73, 0x7e, 0x0c, 0xfc, 0xb3, 0x81, 0x50, 0xb0, + 0x78, 0xd0, 0xdc, 0x34, 0x94, 0x41, 0xa7, 0xbb, 0x33, 0x68, 0xf9, 0x59, 0x54, 0xbf, 0xf1, 0x12, + 0xe2, 0x64, 0x45, 0x1a, 0x0f, 0x50, 0x6f, 0x85, 0x5a, 0x59, 0xb1, 0xef, 0x5f, 0x29, 0xe6, 0x76, + 0x6f, 0x85, 0x9c, 0xac, 0xc6, 0x38, 0x1f, 0x6a, 0x5f, 0x55, 0xe7, 0xd8, 0x5e, 0x3c, 0x22, 0x43, + 0x8d, 0x45, 0x77, 0x7d, 0xe8, 0x6f, 0x76, 0x7e, 0xfd, 0xdd, 0xae, 0x3d, 0xfe, 0xa3, 0x5f, 0xf3, + 0x6f, 0x5c, 0x5c, 0x5a, 0xb5, 0x27, 0x97, 0x56, 0xed, 0xe9, 0xa5, 0x55, 0x7b, 0x5c, 0x58, 0xc6, + 0x45, 0x61, 0x19, 0x4f, 0x0a, 0xcb, 0x78, 0x5a, 0x58, 0xc6, 0x9f, 0x85, 0x65, 0xfc, 0xf2, 0x97, + 0x55, 0xfb, 0x6e, 0x4f, 0x77, 0xf7, 0x6f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xe1, 0xa1, 0xbb, 0xcc, + 0x20, 0x08, 0x00, 0x00, } diff --git a/vendor/k8s.io/client-go/pkg/apis/certificates/v1beta1/generated.proto b/vendor/k8s.io/client-go/pkg/apis/certificates/v1beta1/generated.proto index 6d58d716..e62bd572 100644 --- a/vendor/k8s.io/client-go/pkg/apis/certificates/v1beta1/generated.proto +++ b/vendor/k8s.io/client-go/pkg/apis/certificates/v1beta1/generated.proto @@ -19,13 +19,12 @@ limitations under the License. syntax = 'proto2'; -package k8s.io.kubernetes.pkg.apis.certificates.v1beta1; +package k8s.io.client_go.pkg.apis.certificates.v1beta1; import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; // Package-wide variables from generator "generated". option go_package = "v1beta1"; diff --git a/vendor/k8s.io/client-go/pkg/apis/extensions/types.go b/vendor/k8s.io/client-go/pkg/apis/extensions/types.go index a1697cd8..161158dc 100644 --- a/vendor/k8s.io/client-go/pkg/apis/extensions/types.go +++ b/vendor/k8s.io/client-go/pkg/apis/extensions/types.go @@ -67,15 +67,15 @@ type ScaleStatus struct { // represents a scaling request for a resource. type Scale struct { metav1.TypeMeta - // Standard object metadata; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata. + // Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. // +optional metav1.ObjectMeta - // defines the behavior of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. + // defines the behavior of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. // +optional Spec ScaleSpec - // current status of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. Read-only. + // current status of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. Read-only. // +optional Status ScaleStatus } @@ -235,7 +235,7 @@ type DeploymentRollback struct { } type RollbackConfig struct { - // The revision to rollback to. If set to 0, rollbck to the last revision. + // The revision to rollback to. If set to 0, rollback to the last revision. // +optional Revision int64 } @@ -327,6 +327,12 @@ type DeploymentStatus struct { // Represents the latest available observations of a deployment's current state. Conditions []DeploymentCondition + + // Count of hash collisions for the Deployment. The Deployment controller uses this + // field as a collision avoidance mechanism when it needs to create the name for the + // newest ReplicaSet. + // +optional + CollisionCount *int64 } type DeploymentConditionType string @@ -380,7 +386,7 @@ type DaemonSetUpdateStrategy struct { // Rolling update config params. Present only if type = "RollingUpdate". //--- // TODO: Update this to follow our convention for oneOf, whatever we decide it - // to be. Same as DeploymentStrategy.RollingUpdate. + // to be. Same as Deployment `strategy.rollingUpdate`. // See https://github.com/kubernetes/kubernetes/issues/35345 // +optional RollingUpdate *RollingUpdateDaemonSet @@ -443,10 +449,17 @@ type DaemonSetSpec struct { // +optional MinReadySeconds int32 + // DEPRECATED. // A sequence number representing a specific generation of the template. // Populated by the system. It can be set only during the creation. // +optional TemplateGeneration int64 + + // The number of old history to retain to allow rollback. + // This is a pointer to distinguish between explicit zero and not specified. + // Defaults to 10. + // +optional + RevisionHistoryLimit *int32 } // DaemonSetStatus represents the current status of a daemon set. @@ -486,6 +499,12 @@ type DaemonSetStatus struct { // (ready for at least spec.minReadySeconds) // +optional NumberUnavailable int32 + + // Count of hash collisions for the DaemonSet. The DaemonSet controller + // uses this field as a collision avoidance mechanism when it needs to + // create the name for the newest ControllerRevision. + // +optional + CollisionCount *int64 } // +genclient=true @@ -494,12 +513,12 @@ type DaemonSetStatus struct { type DaemonSet struct { metav1.TypeMeta // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta // The desired behavior of this daemon set. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec DaemonSetSpec @@ -507,12 +526,13 @@ type DaemonSet struct { // out of date by some window of time. // Populated by the system. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status DaemonSetStatus } const ( + // DEPRECATED: DefaultDaemonSetUniqueLabelKey is used instead. // DaemonSetTemplateGenerationKey is the key of the labels that is added // to daemon set pods to distinguish between old and new pod templates // during DaemonSet template update. @@ -523,7 +543,7 @@ const ( type DaemonSetList struct { metav1.TypeMeta // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta @@ -534,7 +554,7 @@ type DaemonSetList struct { type ThirdPartyResourceDataList struct { metav1.TypeMeta // Standard list metadata - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta // Items is a list of third party objects @@ -550,17 +570,17 @@ type ThirdPartyResourceDataList struct { type Ingress struct { metav1.TypeMeta // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta // Spec is the desired state of the Ingress. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec IngressSpec // Status is the current state of the Ingress. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status IngressStatus } @@ -569,7 +589,7 @@ type Ingress struct { type IngressList struct { metav1.TypeMeta // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta @@ -878,6 +898,10 @@ type PodSecurityPolicySpec struct { // will not be forced to. // +optional ReadOnlyRootFilesystem bool + // AllowedHostPaths is a white list of allowed host path prefixes. Empty indicates that all + // host paths may be used. + // +optional + AllowedHostPaths []string } // HostPortRange defines a range of host ports that will be enabled by a policy @@ -916,6 +940,7 @@ var ( Quobyte FSType = "quobyte" AzureDisk FSType = "azureDisk" PhotonPersistentDisk FSType = "photonPersistentDisk" + StorageOS FSType = "storageos" Projected FSType = "projected" PortworxVolume FSType = "portworxVolume" ScaleIO FSType = "scaleIO" @@ -927,7 +952,7 @@ type SELinuxStrategyOptions struct { // Rule is the strategy that will dictate the allowable labels that may be set. Rule SELinuxStrategy // seLinuxOptions required to run as; required for MustRunAs - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/security_context.md + // More info: https://git.k8s.io/community/contributors/design-proposals/security_context.md // +optional SELinuxOptions *api.SELinuxOptions } @@ -1036,6 +1061,7 @@ type PodSecurityPolicyList struct { // +genclient=true +// NetworkPolicy describes what network traffic is allowed for a set of Pods type NetworkPolicy struct { metav1.TypeMeta // +optional @@ -1055,13 +1081,12 @@ type NetworkPolicySpec struct { PodSelector metav1.LabelSelector // List of ingress rules to be applied to the selected pods. - // Traffic is allowed to a pod if namespace.networkPolicy.ingress.isolation is undefined and cluster policy allows it, + // Traffic is allowed to a pod if there are no NetworkPolicies selecting the pod // OR if the traffic source is the pod's local node, // OR if the traffic matches at least one ingress rule across all of the NetworkPolicy // objects whose podSelector matches the pod. - // If this field is empty then this NetworkPolicy does not affect ingress isolation. - // If this field is present and contains at least one rule, this policy allows any traffic - // which matches at least one of the ingress rules in this list. + // If this field is empty then this NetworkPolicy does not allow any traffic + // (and serves solely to ensure that the pods it selects are isolated by default). // +optional Ingress []NetworkPolicyIngressRule } diff --git a/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/conversion.go b/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/conversion.go index d53dbc47..cec1e5e4 100644 --- a/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/conversion.go +++ b/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/conversion.go @@ -23,8 +23,10 @@ import ( "k8s.io/apimachinery/pkg/conversion" "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/intstr" + "k8s.io/client-go/pkg/api" v1 "k8s.io/client-go/pkg/api/v1" "k8s.io/client-go/pkg/apis/extensions" + "k8s.io/client-go/pkg/apis/networking" ) func addConversionFuncs(scheme *runtime.Scheme) error { @@ -42,6 +44,18 @@ func addConversionFuncs(scheme *runtime.Scheme) error { Convert_v1beta1_RollingUpdateDaemonSet_To_extensions_RollingUpdateDaemonSet, Convert_extensions_ReplicaSetSpec_To_v1beta1_ReplicaSetSpec, Convert_v1beta1_ReplicaSetSpec_To_extensions_ReplicaSetSpec, + Convert_v1beta1_NetworkPolicy_To_networking_NetworkPolicy, + Convert_networking_NetworkPolicy_To_v1beta1_NetworkPolicy, + Convert_v1beta1_NetworkPolicyIngressRule_To_networking_NetworkPolicyIngressRule, + Convert_networking_NetworkPolicyIngressRule_To_v1beta1_NetworkPolicyIngressRule, + Convert_v1beta1_NetworkPolicyList_To_networking_NetworkPolicyList, + Convert_networking_NetworkPolicyList_To_v1beta1_NetworkPolicyList, + Convert_v1beta1_NetworkPolicyPeer_To_networking_NetworkPolicyPeer, + Convert_networking_NetworkPolicyPeer_To_v1beta1_NetworkPolicyPeer, + Convert_v1beta1_NetworkPolicyPort_To_networking_NetworkPolicyPort, + Convert_networking_NetworkPolicyPort_To_v1beta1_NetworkPolicyPort, + Convert_v1beta1_NetworkPolicySpec_To_networking_NetworkPolicySpec, + Convert_networking_NetworkPolicySpec_To_v1beta1_NetworkPolicySpec, ) if err != nil { return err @@ -260,3 +274,155 @@ func Convert_v1beta1_ReplicaSetSpec_To_extensions_ReplicaSetSpec(in *ReplicaSetS } return nil } + +func Convert_v1beta1_NetworkPolicy_To_networking_NetworkPolicy(in *NetworkPolicy, out *networking.NetworkPolicy, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + return Convert_v1beta1_NetworkPolicySpec_To_networking_NetworkPolicySpec(&in.Spec, &out.Spec, s) +} + +func Convert_networking_NetworkPolicy_To_v1beta1_NetworkPolicy(in *networking.NetworkPolicy, out *NetworkPolicy, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + return Convert_networking_NetworkPolicySpec_To_v1beta1_NetworkPolicySpec(&in.Spec, &out.Spec, s) +} + +func Convert_v1beta1_NetworkPolicySpec_To_networking_NetworkPolicySpec(in *NetworkPolicySpec, out *networking.NetworkPolicySpec, s conversion.Scope) error { + if err := s.Convert(&in.PodSelector, &out.PodSelector, 0); err != nil { + return err + } + out.Ingress = make([]networking.NetworkPolicyIngressRule, len(in.Ingress)) + for i := range in.Ingress { + if err := Convert_v1beta1_NetworkPolicyIngressRule_To_networking_NetworkPolicyIngressRule(&in.Ingress[i], &out.Ingress[i], s); err != nil { + return err + } + } + return nil +} + +func Convert_networking_NetworkPolicySpec_To_v1beta1_NetworkPolicySpec(in *networking.NetworkPolicySpec, out *NetworkPolicySpec, s conversion.Scope) error { + if err := s.Convert(&in.PodSelector, &out.PodSelector, 0); err != nil { + return err + } + out.Ingress = make([]NetworkPolicyIngressRule, len(in.Ingress)) + for i := range in.Ingress { + if err := Convert_networking_NetworkPolicyIngressRule_To_v1beta1_NetworkPolicyIngressRule(&in.Ingress[i], &out.Ingress[i], s); err != nil { + return err + } + } + return nil +} + +func Convert_v1beta1_NetworkPolicyIngressRule_To_networking_NetworkPolicyIngressRule(in *NetworkPolicyIngressRule, out *networking.NetworkPolicyIngressRule, s conversion.Scope) error { + out.Ports = make([]networking.NetworkPolicyPort, len(in.Ports)) + for i := range in.Ports { + if err := Convert_v1beta1_NetworkPolicyPort_To_networking_NetworkPolicyPort(&in.Ports[i], &out.Ports[i], s); err != nil { + return err + } + } + out.From = make([]networking.NetworkPolicyPeer, len(in.From)) + for i := range in.From { + if err := Convert_v1beta1_NetworkPolicyPeer_To_networking_NetworkPolicyPeer(&in.From[i], &out.From[i], s); err != nil { + return err + } + } + return nil +} + +func Convert_networking_NetworkPolicyIngressRule_To_v1beta1_NetworkPolicyIngressRule(in *networking.NetworkPolicyIngressRule, out *NetworkPolicyIngressRule, s conversion.Scope) error { + out.Ports = make([]NetworkPolicyPort, len(in.Ports)) + for i := range in.Ports { + if err := Convert_networking_NetworkPolicyPort_To_v1beta1_NetworkPolicyPort(&in.Ports[i], &out.Ports[i], s); err != nil { + return err + } + } + out.From = make([]NetworkPolicyPeer, len(in.From)) + for i := range in.From { + if err := Convert_networking_NetworkPolicyPeer_To_v1beta1_NetworkPolicyPeer(&in.From[i], &out.From[i], s); err != nil { + return err + } + } + return nil +} + +func Convert_v1beta1_NetworkPolicyPeer_To_networking_NetworkPolicyPeer(in *NetworkPolicyPeer, out *networking.NetworkPolicyPeer, s conversion.Scope) error { + if in.PodSelector != nil { + out.PodSelector = new(metav1.LabelSelector) + if err := s.Convert(in.PodSelector, out.PodSelector, 0); err != nil { + return err + } + } else { + out.PodSelector = nil + } + if in.NamespaceSelector != nil { + out.NamespaceSelector = new(metav1.LabelSelector) + if err := s.Convert(in.NamespaceSelector, out.NamespaceSelector, 0); err != nil { + return err + } + } else { + out.NamespaceSelector = nil + } + return nil +} + +func Convert_networking_NetworkPolicyPeer_To_v1beta1_NetworkPolicyPeer(in *networking.NetworkPolicyPeer, out *NetworkPolicyPeer, s conversion.Scope) error { + if in.PodSelector != nil { + out.PodSelector = new(metav1.LabelSelector) + if err := s.Convert(in.PodSelector, out.PodSelector, 0); err != nil { + return err + } + } else { + out.PodSelector = nil + } + if in.NamespaceSelector != nil { + out.NamespaceSelector = new(metav1.LabelSelector) + if err := s.Convert(in.NamespaceSelector, out.NamespaceSelector, 0); err != nil { + return err + } + } else { + out.NamespaceSelector = nil + } + return nil +} + +func Convert_v1beta1_NetworkPolicyPort_To_networking_NetworkPolicyPort(in *NetworkPolicyPort, out *networking.NetworkPolicyPort, s conversion.Scope) error { + if in.Protocol != nil { + out.Protocol = new(api.Protocol) + *out.Protocol = api.Protocol(*in.Protocol) + } else { + out.Protocol = nil + } + out.Port = in.Port + return nil +} + +func Convert_networking_NetworkPolicyPort_To_v1beta1_NetworkPolicyPort(in *networking.NetworkPolicyPort, out *NetworkPolicyPort, s conversion.Scope) error { + if in.Protocol != nil { + out.Protocol = new(v1.Protocol) + *out.Protocol = v1.Protocol(*in.Protocol) + } else { + out.Protocol = nil + } + out.Port = in.Port + return nil +} + +func Convert_v1beta1_NetworkPolicyList_To_networking_NetworkPolicyList(in *NetworkPolicyList, out *networking.NetworkPolicyList, s conversion.Scope) error { + out.ListMeta = in.ListMeta + out.Items = make([]networking.NetworkPolicy, len(in.Items)) + for i := range in.Items { + if err := Convert_v1beta1_NetworkPolicy_To_networking_NetworkPolicy(&in.Items[i], &out.Items[i], s); err != nil { + return err + } + } + return nil +} + +func Convert_networking_NetworkPolicyList_To_v1beta1_NetworkPolicyList(in *networking.NetworkPolicyList, out *NetworkPolicyList, s conversion.Scope) error { + out.ListMeta = in.ListMeta + out.Items = make([]NetworkPolicy, len(in.Items)) + for i := range in.Items { + if err := Convert_networking_NetworkPolicy_To_v1beta1_NetworkPolicy(&in.Items[i], &out.Items[i], s); err != nil { + return err + } + } + return nil +} diff --git a/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/defaults.go b/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/defaults.go index 56191772..a644e5ab 100644 --- a/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/defaults.go +++ b/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/defaults.go @@ -56,6 +56,10 @@ func SetDefaults_DaemonSet(obj *DaemonSet) { updateStrategy.RollingUpdate.MaxUnavailable = &maxUnavailable } } + if obj.Spec.RevisionHistoryLimit == nil { + obj.Spec.RevisionHistoryLimit = new(int32) + *obj.Spec.RevisionHistoryLimit = 10 + } } func SetDefaults_Deployment(obj *Deployment) { diff --git a/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/generated.pb.go b/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/generated.pb.go index b3bf3f16..2c750674 100644 --- a/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/generated.pb.go +++ b/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/generated.pb.go @@ -93,12 +93,12 @@ import math "math" import k8s_io_apimachinery_pkg_apis_meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" import k8s_io_apimachinery_pkg_util_intstr "k8s.io/apimachinery/pkg/util/intstr" - import k8s_io_kubernetes_pkg_api_v1 "k8s.io/client-go/pkg/api/v1" +import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + import strings "strings" import reflect "reflect" -import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" import io "io" @@ -690,6 +690,11 @@ func (m *DaemonSetSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x28 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.TemplateGeneration)) + if m.RevisionHistoryLimit != nil { + dAtA[i] = 0x30 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(*m.RevisionHistoryLimit)) + } return i, nil } @@ -732,6 +737,11 @@ func (m *DaemonSetStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x40 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.NumberUnavailable)) + if m.CollisionCount != nil { + dAtA[i] = 0x48 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(*m.CollisionCount)) + } return i, nil } @@ -917,10 +927,15 @@ func (m *DeploymentRollback) MarshalTo(dAtA []byte) (int, error) { i = encodeVarintGenerated(dAtA, i, uint64(len(m.Name))) i += copy(dAtA[i:], m.Name) if len(m.UpdatedAnnotations) > 0 { + keysForUpdatedAnnotations := make([]string, 0, len(m.UpdatedAnnotations)) for k := range m.UpdatedAnnotations { + keysForUpdatedAnnotations = append(keysForUpdatedAnnotations, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForUpdatedAnnotations) + for _, k := range keysForUpdatedAnnotations { dAtA[i] = 0x12 i++ - v := m.UpdatedAnnotations[k] + v := m.UpdatedAnnotations[string(k)] mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v))) i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) dAtA[i] = 0xa @@ -1069,6 +1084,11 @@ func (m *DeploymentStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x38 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ReadyReplicas)) + if m.CollisionCount != nil { + dAtA[i] = 0x40 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(*m.CollisionCount)) + } return i, nil } @@ -1984,6 +2004,21 @@ func (m *PodSecurityPolicySpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0 } i++ + if len(m.AllowedHostPaths) > 0 { + for _, s := range m.AllowedHostPaths { + dAtA[i] = 0x7a + 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 } @@ -2451,10 +2486,15 @@ func (m *ScaleStatus) MarshalTo(dAtA []byte) (int, error) { i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Replicas)) if len(m.Selector) > 0 { + keysForSelector := make([]string, 0, len(m.Selector)) for k := range m.Selector { + keysForSelector = append(keysForSelector, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForSelector) + for _, k := range keysForSelector { dAtA[i] = 0x12 i++ - v := m.Selector[k] + v := m.Selector[string(k)] mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v))) i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) dAtA[i] = 0xa @@ -2776,6 +2816,9 @@ func (m *DaemonSetSpec) Size() (n int) { n += 1 + l + sovGenerated(uint64(l)) n += 1 + sovGenerated(uint64(m.MinReadySeconds)) n += 1 + sovGenerated(uint64(m.TemplateGeneration)) + if m.RevisionHistoryLimit != nil { + n += 1 + sovGenerated(uint64(*m.RevisionHistoryLimit)) + } return n } @@ -2790,6 +2833,9 @@ func (m *DaemonSetStatus) Size() (n int) { n += 1 + sovGenerated(uint64(m.UpdatedNumberScheduled)) n += 1 + sovGenerated(uint64(m.NumberAvailable)) n += 1 + sovGenerated(uint64(m.NumberUnavailable)) + if m.CollisionCount != nil { + n += 1 + sovGenerated(uint64(*m.CollisionCount)) + } return n } @@ -2911,6 +2957,9 @@ func (m *DeploymentStatus) Size() (n int) { } } n += 1 + sovGenerated(uint64(m.ReadyReplicas)) + if m.CollisionCount != nil { + n += 1 + sovGenerated(uint64(*m.CollisionCount)) + } return n } @@ -3232,6 +3281,12 @@ func (m *PodSecurityPolicySpec) Size() (n int) { l = m.FSGroup.Size() n += 1 + l + sovGenerated(uint64(l)) n += 2 + if len(m.AllowedHostPaths) > 0 { + for _, s := range m.AllowedHostPaths { + l = len(s) + n += 1 + l + sovGenerated(uint64(l)) + } + } return n } @@ -3577,6 +3632,7 @@ func (this *DaemonSetSpec) String() string { `UpdateStrategy:` + strings.Replace(strings.Replace(this.UpdateStrategy.String(), "DaemonSetUpdateStrategy", "DaemonSetUpdateStrategy", 1), `&`, ``, 1) + `,`, `MinReadySeconds:` + fmt.Sprintf("%v", this.MinReadySeconds) + `,`, `TemplateGeneration:` + fmt.Sprintf("%v", this.TemplateGeneration) + `,`, + `RevisionHistoryLimit:` + valueToStringGenerated(this.RevisionHistoryLimit) + `,`, `}`, }, "") return s @@ -3594,6 +3650,7 @@ func (this *DaemonSetStatus) String() string { `UpdatedNumberScheduled:` + fmt.Sprintf("%v", this.UpdatedNumberScheduled) + `,`, `NumberAvailable:` + fmt.Sprintf("%v", this.NumberAvailable) + `,`, `NumberUnavailable:` + fmt.Sprintf("%v", this.NumberUnavailable) + `,`, + `CollisionCount:` + valueToStringGenerated(this.CollisionCount) + `,`, `}`, }, "") return s @@ -3699,6 +3756,7 @@ func (this *DeploymentStatus) String() string { `UnavailableReplicas:` + fmt.Sprintf("%v", this.UnavailableReplicas) + `,`, `Conditions:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.Conditions), "DeploymentCondition", "DeploymentCondition", 1), `&`, ``, 1) + `,`, `ReadyReplicas:` + fmt.Sprintf("%v", this.ReadyReplicas) + `,`, + `CollisionCount:` + valueToStringGenerated(this.CollisionCount) + `,`, `}`, }, "") return s @@ -3963,6 +4021,7 @@ func (this *PodSecurityPolicySpec) String() string { `SupplementalGroups:` + strings.Replace(strings.Replace(this.SupplementalGroups.String(), "SupplementalGroupsStrategyOptions", "SupplementalGroupsStrategyOptions", 1), `&`, ``, 1) + `,`, `FSGroup:` + strings.Replace(strings.Replace(this.FSGroup.String(), "FSGroupStrategyOptions", "FSGroupStrategyOptions", 1), `&`, ``, 1) + `,`, `ReadOnlyRootFilesystem:` + fmt.Sprintf("%v", this.ReadOnlyRootFilesystem) + `,`, + `AllowedHostPaths:` + fmt.Sprintf("%v", this.AllowedHostPaths) + `,`, `}`, }, "") return s @@ -5072,6 +5131,26 @@ func (m *DaemonSetSpec) Unmarshal(dAtA []byte) error { break } } + case 6: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field RevisionHistoryLimit", wireType) + } + var v int32 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= (int32(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + m.RevisionHistoryLimit = &v default: iNdEx = preIndex skippy, err := skipGenerated(dAtA[iNdEx:]) @@ -5274,6 +5353,26 @@ func (m *DaemonSetStatus) Unmarshal(dAtA []byte) error { break } } + case 9: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field CollisionCount", wireType) + } + var v int64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= (int64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + m.CollisionCount = &v default: iNdEx = preIndex skippy, err := skipGenerated(dAtA[iNdEx:]) @@ -6558,6 +6657,26 @@ func (m *DeploymentStatus) Unmarshal(dAtA []byte) error { break } } + case 8: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field CollisionCount", wireType) + } + var v int64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= (int64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + m.CollisionCount = &v default: iNdEx = preIndex skippy, err := skipGenerated(dAtA[iNdEx:]) @@ -9342,6 +9461,35 @@ func (m *PodSecurityPolicySpec) Unmarshal(dAtA []byte) error { } } m.ReadOnlyRootFilesystem = bool(v != 0) + case 15: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AllowedHostPaths", 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.AllowedHostPaths = append(m.AllowedHostPaths, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipGenerated(dAtA[iNdEx:]) @@ -11794,216 +11942,220 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 3369 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x5b, 0xdb, 0x6f, 0x1b, 0xc7, - 0xd5, 0xf7, 0x8a, 0xa4, 0x45, 0x1d, 0x59, 0x92, 0x35, 0x72, 0x64, 0x46, 0x49, 0x44, 0x67, 0x3f, - 0x7c, 0x89, 0xf3, 0x7d, 0x09, 0xf5, 0xc5, 0xf9, 0x9c, 0x26, 0x4e, 0xe2, 0x44, 0x94, 0x7c, 0x51, - 0x21, 0xc9, 0xcc, 0x90, 0x32, 0x1a, 0xe7, 0xd6, 0x15, 0x39, 0xa2, 0xd6, 0xde, 0x5b, 0x76, 0x67, - 0x15, 0x11, 0x41, 0xdb, 0x00, 0x45, 0xf3, 0x58, 0xb4, 0x2f, 0x45, 0x0a, 0xa4, 0x8f, 0x7d, 0xe8, - 0x4b, 0x9b, 0x3c, 0xb4, 0x69, 0xff, 0x82, 0xfa, 0xa1, 0x28, 0x52, 0xa0, 0x05, 0x8a, 0x22, 0x15, - 0x6a, 0x05, 0xcd, 0x3f, 0xd0, 0xe6, 0xc5, 0x4f, 0xc5, 0xcc, 0xce, 0xde, 0x77, 0x65, 0x93, 0xb2, - 0x89, 0x02, 0x7d, 0xe3, 0xce, 0x9c, 0xf3, 0x3b, 0x97, 0x39, 0x73, 0xe6, 0xcc, 0x85, 0xf0, 0xd2, - 0x8d, 0xe7, 0x9c, 0x9a, 0x6a, 0x2e, 0xdc, 0x70, 0x37, 0x89, 0x6d, 0x10, 0x4a, 0x9c, 0x05, 0xeb, - 0x46, 0x77, 0x41, 0xb1, 0x54, 0x67, 0x81, 0xec, 0x52, 0x62, 0x38, 0xaa, 0x69, 0x38, 0x0b, 0x3b, - 0x4f, 0x6f, 0x12, 0xaa, 0x3c, 0xbd, 0xd0, 0x25, 0x06, 0xb1, 0x15, 0x4a, 0x3a, 0x35, 0xcb, 0x36, - 0xa9, 0x89, 0x9e, 0xf2, 0xd8, 0x6b, 0x21, 0x7b, 0xcd, 0xba, 0xd1, 0xad, 0x31, 0xf6, 0x5a, 0xc8, - 0x5e, 0x13, 0xec, 0x73, 0x4f, 0x75, 0x55, 0xba, 0xed, 0x6e, 0xd6, 0xda, 0xa6, 0xbe, 0xd0, 0x35, - 0xbb, 0xe6, 0x02, 0x47, 0xd9, 0x74, 0xb7, 0xf8, 0x17, 0xff, 0xe0, 0xbf, 0x3c, 0xf4, 0xb9, 0xff, - 0x17, 0xca, 0x29, 0x96, 0xaa, 0x2b, 0xed, 0x6d, 0xd5, 0x20, 0x76, 0xcf, 0x57, 0x6f, 0xc1, 0x26, - 0x8e, 0xe9, 0xda, 0x6d, 0x92, 0xd4, 0xe9, 0x40, 0x2e, 0x67, 0x41, 0x27, 0x54, 0x59, 0xd8, 0x49, - 0x59, 0x32, 0xb7, 0x90, 0xc7, 0x65, 0xbb, 0x06, 0x55, 0xf5, 0xb4, 0x98, 0x67, 0xef, 0xc4, 0xe0, - 0xb4, 0xb7, 0x89, 0xae, 0xa4, 0xf8, 0x9e, 0xc9, 0xe3, 0x73, 0xa9, 0xaa, 0x2d, 0xa8, 0x06, 0x75, - 0xa8, 0x7d, 0x90, 0x4d, 0x0e, 0xb1, 0x77, 0x88, 0x1d, 0x1d, 0x25, 0x45, 0xb7, 0x34, 0x92, 0x65, - 0xd3, 0x93, 0xb9, 0x83, 0x9b, 0x41, 0x2d, 0xd7, 0x00, 0x16, 0x1b, 0x2b, 0x57, 0x89, 0xcd, 0xc6, - 0x0c, 0x9d, 0x82, 0xa2, 0xa1, 0xe8, 0xa4, 0x22, 0x9d, 0x92, 0x4e, 0x8f, 0xd5, 0x8f, 0xdd, 0xdc, - 0xab, 0x1e, 0xd9, 0xdf, 0xab, 0x16, 0xd7, 0x15, 0x9d, 0x60, 0xde, 0x23, 0xff, 0x58, 0x82, 0x07, - 0x97, 0x5c, 0x87, 0x9a, 0xfa, 0x1a, 0xa1, 0xb6, 0xda, 0x5e, 0x72, 0x6d, 0x9b, 0x18, 0xb4, 0x49, - 0x15, 0xea, 0x3a, 0x77, 0xe6, 0x47, 0xd7, 0xa0, 0xb4, 0xa3, 0x68, 0x2e, 0xa9, 0x8c, 0x9c, 0x92, - 0x4e, 0x8f, 0x9f, 0xa9, 0xd5, 0x44, 0x2c, 0x45, 0x1d, 0xe3, 0x47, 0x53, 0xcd, 0x1f, 0xed, 0xda, - 0xab, 0xae, 0x62, 0x50, 0x95, 0xf6, 0xea, 0x27, 0x04, 0xe4, 0x31, 0x21, 0xf7, 0x2a, 0xc3, 0xc2, - 0x1e, 0xa4, 0xfc, 0x7d, 0x09, 0x1e, 0xc9, 0xd5, 0x6d, 0x55, 0x75, 0x28, 0xd2, 0xa1, 0xa4, 0x52, - 0xa2, 0x3b, 0x15, 0xe9, 0x54, 0xe1, 0xf4, 0xf8, 0x99, 0xcb, 0xb5, 0xbe, 0x22, 0xb9, 0x96, 0x0b, - 0x5e, 0x9f, 0x10, 0x7a, 0x95, 0x56, 0x18, 0x3c, 0xf6, 0xa4, 0xc8, 0x3f, 0x94, 0x00, 0x45, 0x79, - 0x5a, 0x8a, 0xdd, 0x25, 0xf4, 0x2e, 0xbc, 0xf4, 0xda, 0xe1, 0xbc, 0x34, 0x23, 0x20, 0xc7, 0x3d, - 0x81, 0x31, 0x27, 0xbd, 0x2f, 0xc1, 0x6c, 0x5a, 0x27, 0xee, 0x9d, 0xad, 0xb8, 0x77, 0x16, 0x0f, - 0xe1, 0x1d, 0x0f, 0x35, 0xc7, 0x2d, 0xbf, 0x1c, 0x81, 0xb1, 0x65, 0x85, 0xe8, 0xa6, 0xd1, 0x24, - 0x14, 0x7d, 0x13, 0xca, 0x6c, 0x7a, 0x76, 0x14, 0xaa, 0x70, 0x8f, 0x8c, 0x9f, 0xf9, 0xbf, 0x83, - 0xcc, 0x75, 0x6a, 0x8c, 0xba, 0xb6, 0xf3, 0x74, 0xed, 0xca, 0xe6, 0x75, 0xd2, 0xa6, 0x6b, 0x84, - 0x2a, 0x75, 0x24, 0xe4, 0x40, 0xd8, 0x86, 0x03, 0x54, 0xf4, 0x16, 0x14, 0x1d, 0x8b, 0xb4, 0x85, - 0x33, 0x5f, 0xec, 0xd3, 0xac, 0x40, 0xd3, 0xa6, 0x45, 0xda, 0xe1, 0x68, 0xb1, 0x2f, 0xcc, 0x71, - 0xd1, 0x16, 0x1c, 0x75, 0x78, 0x18, 0x54, 0x0a, 0x5c, 0xc2, 0xf9, 0x81, 0x25, 0x78, 0xc1, 0x34, - 0x29, 0x64, 0x1c, 0xf5, 0xbe, 0xb1, 0x40, 0x97, 0x7f, 0x27, 0xc1, 0x44, 0x40, 0xcb, 0x47, 0xec, - 0x8d, 0x94, 0xef, 0x6a, 0x77, 0xe7, 0x3b, 0xc6, 0xcd, 0x3d, 0x77, 0x5c, 0xc8, 0x2a, 0xfb, 0x2d, - 0x11, 0xbf, 0xbd, 0xe9, 0xc7, 0xc3, 0x08, 0x8f, 0x87, 0xe7, 0x06, 0x35, 0x2b, 0x27, 0x0c, 0xbe, - 0x28, 0x44, 0xcc, 0x61, 0xee, 0x44, 0x6f, 0x42, 0xd9, 0x21, 0x1a, 0x69, 0x53, 0xd3, 0x16, 0xe6, - 0x3c, 0x73, 0x97, 0xe6, 0x28, 0x9b, 0x44, 0x6b, 0x0a, 0xd6, 0xfa, 0x31, 0x66, 0x8f, 0xff, 0x85, - 0x03, 0x48, 0xf4, 0x3a, 0x94, 0x29, 0xd1, 0x2d, 0x4d, 0xa1, 0xfe, 0xc4, 0x7a, 0x2a, 0xdf, 0x24, - 0x06, 0xdb, 0x30, 0x3b, 0x2d, 0xc1, 0xc0, 0x07, 0x3f, 0x70, 0x96, 0xdf, 0x8a, 0x03, 0x40, 0xf4, - 0x81, 0x04, 0x93, 0xae, 0xd5, 0x61, 0xa4, 0x94, 0x25, 0xd8, 0x6e, 0x4f, 0x44, 0xc3, 0xc5, 0x41, - 0xdd, 0xb6, 0x11, 0x43, 0xab, 0xcf, 0x0a, 0xe1, 0x93, 0xf1, 0x76, 0x9c, 0x90, 0x8a, 0x16, 0x61, - 0x4a, 0x57, 0x0d, 0x4c, 0x94, 0x4e, 0xaf, 0x49, 0xda, 0xa6, 0xd1, 0x71, 0x2a, 0xc5, 0x53, 0xd2, - 0xe9, 0x52, 0xfd, 0xa4, 0x00, 0x98, 0x5a, 0x8b, 0x77, 0xe3, 0x24, 0x3d, 0xfa, 0x3a, 0x20, 0xdf, - 0xae, 0x4b, 0xde, 0x7a, 0xa1, 0x9a, 0x46, 0xa5, 0x74, 0x4a, 0x3a, 0x5d, 0xa8, 0xcf, 0x09, 0x14, - 0xd4, 0x4a, 0x51, 0xe0, 0x0c, 0x2e, 0xf9, 0x9f, 0x45, 0x98, 0x4a, 0x04, 0x38, 0xba, 0x0a, 0xb3, - 0x6d, 0x2f, 0x7d, 0xae, 0xbb, 0xfa, 0x26, 0xb1, 0x9b, 0xed, 0x6d, 0xd2, 0x71, 0x35, 0xd2, 0xe1, - 0xa3, 0x5e, 0xaa, 0xcf, 0x0b, 0x19, 0xb3, 0x4b, 0x99, 0x54, 0x38, 0x87, 0x9b, 0xe9, 0x6d, 0xf0, - 0xa6, 0x35, 0xd5, 0x71, 0x02, 0xcc, 0x11, 0x8e, 0x19, 0xe8, 0xbd, 0x9e, 0xa2, 0xc0, 0x19, 0x5c, - 0x4c, 0xc7, 0x0e, 0x71, 0x54, 0x9b, 0x74, 0x92, 0x3a, 0x16, 0xe2, 0x3a, 0x2e, 0x67, 0x52, 0xe1, - 0x1c, 0x6e, 0x74, 0x16, 0xc6, 0x3d, 0x69, 0xdc, 0xe3, 0x62, 0x68, 0x82, 0x84, 0xbd, 0x1e, 0x76, - 0xe1, 0x28, 0x1d, 0x33, 0xcd, 0xdc, 0xe4, 0x55, 0x40, 0x27, 0x7f, 0x48, 0xae, 0xa4, 0x28, 0x70, - 0x06, 0x17, 0x33, 0xcd, 0x8b, 0x99, 0x94, 0x69, 0x47, 0xe3, 0xa6, 0x6d, 0x64, 0x52, 0xe1, 0x1c, - 0x6e, 0x16, 0x79, 0x9e, 0xca, 0x8b, 0x3b, 0x8a, 0xaa, 0x29, 0x9b, 0x1a, 0xa9, 0x8c, 0xc6, 0x23, - 0x6f, 0x3d, 0xde, 0x8d, 0x93, 0xf4, 0xe8, 0x12, 0x4c, 0x7b, 0x4d, 0x1b, 0x86, 0x12, 0x80, 0x94, - 0x39, 0xc8, 0x83, 0x02, 0x64, 0x7a, 0x3d, 0x49, 0x80, 0xd3, 0x3c, 0xf2, 0x5f, 0x24, 0x38, 0x99, - 0x33, 0x93, 0xd0, 0xcb, 0x50, 0xa4, 0x3d, 0xcb, 0x5f, 0x7f, 0xff, 0xd7, 0xcf, 0xe8, 0xad, 0x9e, - 0x45, 0x6e, 0xef, 0x55, 0x1f, 0xca, 0x61, 0x63, 0xdd, 0x98, 0x33, 0xa2, 0x6f, 0xc3, 0x84, 0x6d, - 0x6a, 0x9a, 0x6a, 0x74, 0x3d, 0x12, 0x91, 0x4d, 0x2e, 0xf4, 0x39, 0xd3, 0x71, 0x14, 0x23, 0xcc, - 0x96, 0xd3, 0xfb, 0x7b, 0xd5, 0x89, 0x58, 0x1f, 0x8e, 0x8b, 0x93, 0x7f, 0x3d, 0x02, 0xb0, 0x4c, - 0x2c, 0xcd, 0xec, 0xe9, 0xc4, 0x18, 0xc6, 0x0a, 0xfa, 0x76, 0x6c, 0x05, 0x7d, 0xa9, 0xdf, 0x8c, - 0x16, 0xa8, 0x9a, 0xbb, 0x84, 0x76, 0x13, 0x4b, 0xe8, 0xcb, 0x83, 0x8b, 0x38, 0x78, 0x0d, 0xbd, - 0x55, 0x80, 0x99, 0x90, 0x78, 0xc9, 0x34, 0x3a, 0x2a, 0x9f, 0x13, 0x2f, 0xc4, 0x62, 0xe2, 0xf1, - 0x44, 0x4c, 0x9c, 0xcc, 0x60, 0x89, 0xc4, 0xc3, 0xd5, 0x40, 0xfb, 0x11, 0xce, 0x7e, 0x3e, 0x2e, - 0xfc, 0xf6, 0x5e, 0xf5, 0xc0, 0xa2, 0xbc, 0x16, 0x60, 0xc6, 0x95, 0x45, 0x8f, 0xc1, 0x51, 0x9b, - 0x28, 0x8e, 0x69, 0xf0, 0x34, 0x31, 0x16, 0x1a, 0x85, 0x79, 0x2b, 0x16, 0xbd, 0xe8, 0x09, 0x18, - 0xd5, 0x89, 0xe3, 0x28, 0x5d, 0xc2, 0x33, 0xc2, 0x58, 0x7d, 0x4a, 0x10, 0x8e, 0xae, 0x79, 0xcd, - 0xd8, 0xef, 0x47, 0xd7, 0x61, 0x52, 0x53, 0x1c, 0x11, 0xda, 0x2d, 0x55, 0x27, 0x7c, 0xce, 0x8f, - 0x9f, 0xf9, 0x9f, 0xbb, 0x8b, 0x18, 0xc6, 0x11, 0xae, 0x44, 0xab, 0x31, 0x24, 0x9c, 0x40, 0x46, - 0x3b, 0x80, 0x58, 0x4b, 0xcb, 0x56, 0x0c, 0xc7, 0x73, 0x19, 0x93, 0x37, 0xda, 0xb7, 0xbc, 0x20, - 0xbf, 0xad, 0xa6, 0xd0, 0x70, 0x86, 0x04, 0xf9, 0xf7, 0x12, 0x4c, 0x86, 0x03, 0x36, 0x84, 0x42, - 0xe9, 0xad, 0x78, 0xa1, 0xf4, 0xfc, 0xc0, 0xc1, 0x9b, 0x53, 0x29, 0x7d, 0x58, 0x00, 0x14, 0x12, - 0xb1, 0xd4, 0xb0, 0xa9, 0xb4, 0x6f, 0xdc, 0xc5, 0x3e, 0xe2, 0xa7, 0x12, 0x20, 0x91, 0xac, 0x17, - 0x0d, 0xc3, 0xa4, 0x3c, 0xff, 0xfb, 0x6a, 0xbe, 0x36, 0xb0, 0x9a, 0xbe, 0x06, 0xb5, 0x8d, 0x14, - 0xf6, 0x05, 0x83, 0xda, 0xbd, 0x70, 0xc4, 0xd2, 0x04, 0x38, 0x43, 0x21, 0xf4, 0x0e, 0x80, 0x2d, - 0x30, 0x5b, 0xa6, 0x48, 0x01, 0x2f, 0x0d, 0x90, 0x4d, 0x19, 0xc0, 0x92, 0x69, 0x6c, 0xa9, 0xdd, - 0x30, 0xa1, 0xe1, 0x00, 0x18, 0x47, 0x84, 0xcc, 0x5d, 0x80, 0x93, 0x39, 0xda, 0xa3, 0xe3, 0x50, - 0xb8, 0x41, 0x7a, 0x9e, 0x5b, 0x31, 0xfb, 0x89, 0x4e, 0x44, 0xf7, 0x63, 0x63, 0x62, 0x2b, 0x75, - 0x6e, 0xe4, 0x39, 0x49, 0xfe, 0xb2, 0x14, 0x8d, 0x35, 0x5e, 0xc5, 0x9e, 0x86, 0xb2, 0x4d, 0x2c, - 0x4d, 0x6d, 0x2b, 0x8e, 0xa8, 0x67, 0x78, 0x41, 0x8a, 0x45, 0x1b, 0x0e, 0x7a, 0x63, 0xf5, 0xee, - 0xc8, 0xfd, 0xad, 0x77, 0x0b, 0xf7, 0xba, 0xde, 0x35, 0xa1, 0xec, 0xf8, 0x85, 0x6e, 0x91, 0x83, - 0x2f, 0x1e, 0x22, 0x67, 0x8b, 0x1a, 0x37, 0x10, 0x18, 0x54, 0xb7, 0x81, 0x90, 0xac, 0xba, 0xb6, - 0xd4, 0x67, 0x5d, 0xbb, 0x0a, 0x27, 0x6c, 0xb2, 0xa3, 0x32, 0x35, 0x2e, 0xab, 0x0e, 0x35, 0xed, - 0xde, 0xaa, 0xaa, 0xab, 0x54, 0x94, 0x3d, 0x95, 0xfd, 0xbd, 0xea, 0x09, 0x9c, 0xd1, 0x8f, 0x33, - 0xb9, 0x58, 0x76, 0xb6, 0x14, 0xd7, 0x21, 0x1d, 0x9e, 0xd2, 0xca, 0x61, 0x76, 0x6e, 0xf0, 0x56, - 0x2c, 0x7a, 0x91, 0x1e, 0x0b, 0xee, 0xf2, 0xbd, 0x08, 0xee, 0xc9, 0xfc, 0xc0, 0x46, 0x1b, 0x70, - 0xd2, 0xb2, 0xcd, 0xae, 0x4d, 0x1c, 0x67, 0x99, 0x28, 0x1d, 0x4d, 0x35, 0x88, 0xef, 0xaf, 0x31, - 0x6e, 0xe7, 0x43, 0xfb, 0x7b, 0xd5, 0x93, 0x8d, 0x6c, 0x12, 0x9c, 0xc7, 0x2b, 0x7f, 0x54, 0x84, - 0xe3, 0xc9, 0x55, 0x36, 0xa7, 0x2a, 0x95, 0x06, 0xaa, 0x4a, 0x9f, 0x8c, 0x4c, 0x1b, 0xaf, 0x64, - 0x0f, 0xa2, 0x21, 0x63, 0xea, 0x2c, 0xc2, 0x94, 0xc8, 0x23, 0x7e, 0xa7, 0xa8, 0xcb, 0x83, 0x68, - 0xd8, 0x88, 0x77, 0xe3, 0x24, 0x3d, 0xab, 0x35, 0xc3, 0x12, 0xd2, 0x07, 0x29, 0xc6, 0x6b, 0xcd, - 0xc5, 0x24, 0x01, 0x4e, 0xf3, 0xa0, 0x35, 0x98, 0x71, 0x8d, 0x34, 0x94, 0x17, 0x9d, 0x0f, 0x09, - 0xa8, 0x99, 0x8d, 0x34, 0x09, 0xce, 0xe2, 0x43, 0x3b, 0x00, 0x6d, 0xbf, 0x20, 0x70, 0x2a, 0x47, - 0x79, 0xae, 0xae, 0x0f, 0x3c, 0xb7, 0x82, 0xda, 0x22, 0xcc, 0x88, 0x41, 0x93, 0x83, 0x23, 0x92, - 0xd0, 0x0b, 0x30, 0x61, 0xf3, 0x8d, 0x87, 0x6f, 0x80, 0x57, 0xbc, 0x3f, 0x20, 0xd8, 0x26, 0x70, - 0xb4, 0x13, 0xc7, 0x69, 0xe5, 0x3f, 0x48, 0xd1, 0x25, 0x2a, 0x28, 0xb5, 0xcf, 0xc5, 0xca, 0xaa, - 0xc7, 0x12, 0x65, 0xd5, 0x6c, 0x9a, 0x23, 0x52, 0x55, 0x7d, 0x27, 0xbb, 0xca, 0xbe, 0x78, 0xa8, - 0x2a, 0x3b, 0x5c, 0x6a, 0xef, 0x5c, 0x66, 0x7f, 0x22, 0xc1, 0xec, 0xc5, 0xe6, 0x25, 0xdb, 0x74, - 0x2d, 0x5f, 0xbd, 0x2b, 0x96, 0xe7, 0xab, 0xaf, 0x41, 0xd1, 0x76, 0x35, 0xdf, 0xae, 0xff, 0xf2, - 0xed, 0xc2, 0xae, 0xc6, 0xec, 0x9a, 0x49, 0x70, 0x79, 0x46, 0x31, 0x06, 0xf4, 0x16, 0x1c, 0xb5, - 0x15, 0xa3, 0x4b, 0xfc, 0x45, 0xf8, 0xd9, 0x3e, 0xad, 0x59, 0x59, 0xc6, 0x8c, 0x3d, 0x52, 0x0a, - 0x72, 0x34, 0x2c, 0x50, 0xe5, 0x9f, 0x48, 0x30, 0x75, 0xb9, 0xd5, 0x6a, 0xac, 0x18, 0x7c, 0x16, - 0x37, 0x14, 0xba, 0xcd, 0xea, 0x04, 0x4b, 0xa1, 0xdb, 0xc9, 0x3a, 0x81, 0xf5, 0x61, 0xde, 0x83, - 0xb6, 0x61, 0x94, 0x65, 0x0f, 0x62, 0x74, 0x06, 0x2c, 0xf1, 0x85, 0xb8, 0xba, 0x07, 0x12, 0xd6, - 0x9f, 0xa2, 0x01, 0xfb, 0xf0, 0xf2, 0x7b, 0x70, 0x22, 0xa2, 0x1e, 0xf3, 0x17, 0x3f, 0x9d, 0x44, - 0x6d, 0x28, 0x31, 0x4d, 0xfc, 0xb3, 0xc7, 0x7e, 0x8f, 0xd0, 0x12, 0x26, 0x87, 0x75, 0x14, 0xfb, - 0x72, 0xb0, 0x87, 0x2d, 0xaf, 0xc1, 0xc4, 0x65, 0xd3, 0xa1, 0x0d, 0xd3, 0xa6, 0xdc, 0x6d, 0xe8, - 0x11, 0x28, 0xe8, 0xaa, 0x21, 0x56, 0xe9, 0x71, 0xc1, 0x53, 0x60, 0xeb, 0x08, 0x6b, 0xe7, 0xdd, - 0xca, 0xae, 0xc8, 0x46, 0x61, 0xb7, 0xb2, 0x8b, 0x59, 0xbb, 0x7c, 0x09, 0x46, 0xc5, 0x70, 0x44, - 0x81, 0x0a, 0x07, 0x03, 0x15, 0x32, 0x80, 0x7e, 0x31, 0x02, 0xa3, 0x42, 0xfb, 0x21, 0x6c, 0xe6, - 0xde, 0x88, 0x6d, 0xe6, 0xce, 0x0d, 0x36, 0xd2, 0xb9, 0x3b, 0xb9, 0x4e, 0x62, 0x27, 0xf7, 0xe2, - 0x80, 0xf8, 0x07, 0x6f, 0xe3, 0x3e, 0x96, 0x60, 0x32, 0x1e, 0x73, 0xe8, 0x2c, 0x8c, 0xb3, 0x35, - 0x45, 0x6d, 0x93, 0xf5, 0xb0, 0x28, 0x0e, 0x0e, 0x56, 0x9a, 0x61, 0x17, 0x8e, 0xd2, 0xa1, 0x6e, - 0xc0, 0xc6, 0xc2, 0x42, 0x38, 0x25, 0xdf, 0xe5, 0x2e, 0x55, 0xb5, 0x9a, 0x77, 0x5f, 0x53, 0x5b, - 0x31, 0xe8, 0x15, 0xbb, 0x49, 0x6d, 0xd5, 0xe8, 0xa6, 0x04, 0xf1, 0x18, 0x8b, 0x22, 0xcb, 0x37, - 0x25, 0x18, 0x17, 0x2a, 0x0f, 0x61, 0x4b, 0xf2, 0x7a, 0x7c, 0x4b, 0xf2, 0xec, 0x80, 0xf3, 0x39, - 0x7b, 0x3f, 0xf2, 0x69, 0x68, 0x0a, 0x9b, 0xc1, 0x2c, 0xc1, 0x6c, 0x9b, 0x0e, 0x4d, 0x26, 0x18, - 0x36, 0xd7, 0x30, 0xef, 0x41, 0xdf, 0x93, 0xe0, 0xb8, 0x9a, 0x98, 0xf3, 0xc2, 0xd7, 0x2f, 0x0f, - 0xa6, 0x5a, 0x00, 0x53, 0xaf, 0x08, 0x79, 0xc7, 0x93, 0x3d, 0x38, 0x25, 0x52, 0x76, 0x21, 0x45, - 0x85, 0x14, 0x28, 0x6e, 0x53, 0x6a, 0x89, 0x41, 0x58, 0x1a, 0x3c, 0xf3, 0x84, 0x2a, 0x95, 0xb9, - 0xf9, 0xad, 0x56, 0x03, 0x73, 0x68, 0xf9, 0xe7, 0x23, 0x81, 0xc3, 0x9a, 0xde, 0x24, 0x09, 0xf2, - 0xad, 0x74, 0x2f, 0xf2, 0xed, 0x78, 0x56, 0xae, 0x45, 0xdf, 0x80, 0x02, 0xd5, 0x06, 0xdd, 0x94, - 0x0a, 0x09, 0xad, 0xd5, 0x66, 0x98, 0xb0, 0x5a, 0xab, 0x4d, 0xcc, 0x20, 0xd1, 0xdb, 0x50, 0x62, - 0xab, 0x19, 0x9b, 0xe3, 0x85, 0xc1, 0x73, 0x08, 0xf3, 0x57, 0x18, 0x61, 0xec, 0xcb, 0xc1, 0x1e, - 0xae, 0xfc, 0x1e, 0x4c, 0xc4, 0x12, 0x01, 0xba, 0x0e, 0xc7, 0x34, 0x53, 0xe9, 0xd4, 0x15, 0x4d, - 0x31, 0xda, 0xc4, 0x4e, 0xa6, 0xc6, 0xec, 0xfd, 0xcc, 0x6a, 0x84, 0x43, 0x24, 0x94, 0xe0, 0x02, - 0x31, 0xda, 0x87, 0x63, 0xd8, 0xb2, 0x02, 0x10, 0x5a, 0x8f, 0xaa, 0x50, 0x62, 0x21, 0xec, 0xad, - 0x4c, 0x63, 0xf5, 0x31, 0xa6, 0x2b, 0x8b, 0x6c, 0x07, 0x7b, 0xed, 0xe8, 0x0c, 0x80, 0x43, 0xda, - 0x36, 0xa1, 0x3c, 0xef, 0x78, 0x27, 0x40, 0x41, 0x06, 0x6e, 0x06, 0x3d, 0x38, 0x42, 0x25, 0xff, - 0x49, 0x82, 0x89, 0x75, 0x42, 0xdf, 0x35, 0xed, 0x1b, 0x0d, 0x53, 0x53, 0xdb, 0xbd, 0x21, 0xe4, - 0xfd, 0xcd, 0x58, 0xde, 0x7f, 0xa5, 0xcf, 0x31, 0x8b, 0x69, 0x9b, 0x97, 0xfd, 0xe5, 0xbf, 0x4b, - 0x50, 0x89, 0x51, 0x46, 0xd3, 0x04, 0x81, 0x92, 0x65, 0xda, 0xd4, 0x5f, 0xe3, 0x0f, 0xa5, 0x01, - 0x4b, 0xa9, 0x91, 0x55, 0x9e, 0xc1, 0x62, 0x0f, 0x9d, 0xd9, 0xb9, 0x65, 0x9b, 0xba, 0x88, 0xfb, - 0xc3, 0x49, 0x21, 0xc4, 0x0e, 0xed, 0xbc, 0x68, 0x9b, 0x3a, 0xe6, 0xd8, 0xf2, 0x1f, 0x25, 0x98, - 0x8e, 0x51, 0x0e, 0x21, 0xa5, 0x2b, 0xf1, 0x94, 0xfe, 0xe2, 0x61, 0x0c, 0xcb, 0x49, 0xec, 0x5f, - 0x25, 0xcd, 0x62, 0x0e, 0x40, 0x5b, 0x30, 0x6e, 0x99, 0x9d, 0xe6, 0x3d, 0xb8, 0x99, 0x9b, 0x62, - 0x2b, 0x64, 0x23, 0xc4, 0xc2, 0x51, 0x60, 0xb4, 0x0b, 0xd3, 0x86, 0xa2, 0x13, 0xc7, 0x52, 0xda, - 0xa4, 0x79, 0x0f, 0xce, 0x45, 0x1e, 0xe0, 0xb7, 0x05, 0x49, 0x44, 0x9c, 0x16, 0x22, 0xff, 0x2a, - 0x65, 0xb7, 0x69, 0x53, 0xf4, 0x2a, 0x94, 0xf9, 0x23, 0x89, 0xb6, 0xa9, 0x89, 0xa5, 0xed, 0x2c, - 0x1b, 0x9a, 0x86, 0x68, 0xbb, 0xbd, 0x57, 0xfd, 0xef, 0x03, 0x8f, 0x75, 0x7d, 0x42, 0x1c, 0xc0, - 0xa0, 0x75, 0x28, 0x5a, 0x87, 0x29, 0x33, 0xf8, 0xc2, 0xc2, 0x6b, 0x0b, 0x8e, 0x23, 0xff, 0x23, - 0xa9, 0x38, 0x5f, 0x5e, 0xae, 0xdf, 0xb3, 0x01, 0x0b, 0xca, 0x9a, 0xdc, 0x41, 0xb3, 0x61, 0x54, - 0xac, 0xb2, 0x22, 0x2e, 0x2f, 0x1d, 0x26, 0x2e, 0xa3, 0x2b, 0x43, 0xb0, 0x89, 0xf0, 0x1b, 0x7d, - 0x41, 0xf2, 0x5f, 0x25, 0x98, 0xe6, 0x0a, 0xb5, 0x5d, 0x5b, 0xa5, 0xbd, 0xa1, 0x65, 0xd0, 0xad, - 0x58, 0x06, 0x5d, 0xee, 0xd3, 0xd0, 0x94, 0xc6, 0xb9, 0x59, 0xf4, 0x73, 0x09, 0x1e, 0x48, 0x51, - 0x0f, 0x21, 0xc3, 0x90, 0x78, 0x86, 0x79, 0xe5, 0xb0, 0x06, 0xe6, 0x64, 0x99, 0x9b, 0x90, 0x61, - 0x1e, 0x0f, 0xdc, 0x33, 0x00, 0x96, 0xad, 0xee, 0xa8, 0x1a, 0xe9, 0x8a, 0xcb, 0xe0, 0x72, 0x38, - 0x24, 0x8d, 0xa0, 0x07, 0x47, 0xa8, 0xd0, 0xb7, 0x60, 0xb6, 0x43, 0xb6, 0x14, 0x57, 0xa3, 0x8b, - 0x9d, 0xce, 0x92, 0x62, 0x29, 0x9b, 0xaa, 0xa6, 0x52, 0x55, 0xec, 0xb0, 0xc7, 0xea, 0x17, 0xbc, - 0x4b, 0xda, 0x2c, 0x8a, 0xdb, 0x7b, 0xd5, 0xc7, 0x0f, 0xbe, 0x98, 0xf1, 0x89, 0x7b, 0x38, 0x47, - 0x08, 0xfa, 0xae, 0x04, 0x15, 0x9b, 0xbc, 0xe3, 0xaa, 0x36, 0xe9, 0x2c, 0xdb, 0xa6, 0x15, 0xd3, - 0xa0, 0xc0, 0x35, 0xb8, 0xb4, 0xbf, 0x57, 0xad, 0xe0, 0x1c, 0x9a, 0x7e, 0x74, 0xc8, 0x15, 0x84, - 0x28, 0xcc, 0x28, 0x9a, 0x66, 0xbe, 0x4b, 0xe2, 0x1e, 0x28, 0x72, 0xf9, 0xf5, 0xfd, 0xbd, 0xea, - 0xcc, 0x62, 0xba, 0xbb, 0x1f, 0xd1, 0x59, 0xf0, 0x68, 0x01, 0x46, 0x77, 0x4c, 0xcd, 0xd5, 0x89, - 0x53, 0x29, 0x71, 0x49, 0x2c, 0xe3, 0x8e, 0x5e, 0xf5, 0x9a, 0x6e, 0xef, 0x55, 0x8f, 0x5e, 0x6c, - 0xf2, 0xa3, 0x0f, 0x9f, 0x8a, 0xed, 0xd1, 0x58, 0xcd, 0x24, 0xa6, 0x3c, 0x3f, 0x77, 0x2d, 0x87, - 0x39, 0xe6, 0x72, 0xd8, 0x85, 0xa3, 0x74, 0x48, 0x87, 0xb1, 0x6d, 0xb1, 0x6f, 0x77, 0x2a, 0xa3, - 0x03, 0xad, 0x7e, 0xb1, 0x7d, 0x7f, 0x7d, 0x5a, 0x88, 0x1c, 0xf3, 0x9b, 0x1d, 0x1c, 0x4a, 0x40, - 0x4f, 0xc0, 0x28, 0xff, 0x58, 0x59, 0xe6, 0xa7, 0xb5, 0xe5, 0x30, 0x13, 0x5d, 0xf6, 0x9a, 0xb1, - 0xdf, 0xef, 0x93, 0xae, 0x34, 0x96, 0xf8, 0xe1, 0x6a, 0x82, 0x74, 0xa5, 0xb1, 0x84, 0xfd, 0x7e, - 0x64, 0xc1, 0xa8, 0x43, 0x56, 0x55, 0xc3, 0xdd, 0xad, 0xc0, 0x40, 0xd7, 0xc5, 0xcd, 0x0b, 0x9c, - 0x3b, 0x71, 0x14, 0x15, 0x4a, 0x14, 0xfd, 0xd8, 0x17, 0x83, 0x76, 0x61, 0xcc, 0x76, 0x8d, 0x45, - 0x67, 0xc3, 0x21, 0x76, 0x65, 0x9c, 0xcb, 0xec, 0x37, 0x39, 0x63, 0x9f, 0x3f, 0x29, 0x35, 0xf0, - 0x60, 0x40, 0x81, 0x43, 0x61, 0xe8, 0x23, 0x09, 0x90, 0xe3, 0x5a, 0x96, 0x46, 0x74, 0x62, 0x50, - 0x45, 0xe3, 0xa7, 0x61, 0x4e, 0xe5, 0x18, 0xd7, 0xa1, 0xd1, 0xaf, 0xdd, 0x29, 0xa0, 0xa4, 0x32, - 0xc1, 0x51, 0x73, 0x9a, 0x14, 0x67, 0xe8, 0xc1, 0x86, 0x62, 0xcb, 0xe1, 0xbf, 0x2b, 0x13, 0x03, - 0x0d, 0x45, 0xf6, 0xa9, 0x60, 0x38, 0x14, 0xa2, 0x1f, 0xfb, 0x62, 0xd0, 0x55, 0x98, 0xb5, 0x89, - 0xd2, 0xb9, 0x62, 0x68, 0x3d, 0x6c, 0x9a, 0xf4, 0xa2, 0xaa, 0x11, 0xa7, 0xe7, 0x50, 0xa2, 0x57, - 0x26, 0x79, 0xd8, 0x04, 0x4f, 0x2e, 0x70, 0x26, 0x15, 0xce, 0xe1, 0xe6, 0x2f, 0x01, 0xc4, 0x19, - 0xec, 0x70, 0xde, 0xd2, 0x1d, 0xee, 0x25, 0x40, 0xa8, 0xea, 0x7d, 0x7b, 0x09, 0x10, 0x11, 0x71, - 0xf0, 0x11, 0xd2, 0x57, 0x23, 0x30, 0x13, 0x12, 0xdf, 0xf5, 0x4b, 0x80, 0x0c, 0x96, 0x21, 0xbc, - 0x04, 0xc8, 0xbe, 0x4a, 0x2f, 0xdc, 0xef, 0xab, 0xf4, 0xfb, 0xf0, 0x02, 0x81, 0xdf, 0xce, 0x87, - 0x4e, 0xfc, 0xf7, 0xbf, 0x9d, 0x0f, 0x75, 0xcd, 0x29, 0x67, 0x7e, 0x33, 0x12, 0x35, 0xe8, 0x3f, - 0xe8, 0x0a, 0xf8, 0xf0, 0x2f, 0x0d, 0xe5, 0xcf, 0x0b, 0x70, 0x3c, 0x39, 0x63, 0x63, 0x37, 0x81, - 0xd2, 0x1d, 0x6f, 0x02, 0x1b, 0x70, 0x62, 0xcb, 0xd5, 0xb4, 0x1e, 0x77, 0x48, 0xe4, 0x3a, 0xd0, - 0x3b, 0xb5, 0x7f, 0x58, 0x70, 0x9e, 0xb8, 0x98, 0x41, 0x83, 0x33, 0x39, 0x73, 0x6e, 0x35, 0x0b, - 0x03, 0xdd, 0x6a, 0xa6, 0x2e, 0xd5, 0x8a, 0x77, 0x7f, 0xa9, 0x96, 0x7d, 0x43, 0x59, 0x1a, 0xe0, - 0x86, 0xf2, 0x5e, 0x5c, 0x29, 0x66, 0x24, 0xbe, 0x3b, 0x5d, 0x29, 0xca, 0x0f, 0xc3, 0x9c, 0x60, - 0x63, 0xdf, 0x4b, 0xa6, 0x41, 0x6d, 0x53, 0xd3, 0x88, 0xbd, 0xec, 0xea, 0x7a, 0x4f, 0x3e, 0x0f, - 0x93, 0xf1, 0x7b, 0x6d, 0x6f, 0xe4, 0xbd, 0xab, 0x76, 0x71, 0x97, 0x12, 0x19, 0x79, 0xaf, 0x1d, - 0x07, 0x14, 0xf2, 0x07, 0x12, 0xcc, 0x66, 0xbf, 0xa1, 0x43, 0x1a, 0x4c, 0xea, 0xca, 0x6e, 0xf4, - 0x11, 0xa1, 0x34, 0xe0, 0x8e, 0x1b, 0xed, 0xef, 0x55, 0x27, 0xd7, 0x62, 0x58, 0x38, 0x81, 0x2d, - 0x7f, 0x21, 0xc1, 0xc9, 0x9c, 0x6b, 0xc6, 0xe1, 0x6a, 0x82, 0xae, 0x41, 0x59, 0x57, 0x76, 0x9b, - 0xae, 0xdd, 0x25, 0x03, 0x9f, 0x31, 0xf0, 0x5c, 0xb2, 0x26, 0x50, 0x70, 0x80, 0x27, 0x7f, 0x22, - 0x41, 0x25, 0xaf, 0x1e, 0x44, 0x67, 0x63, 0x17, 0xa2, 0x8f, 0x26, 0x2e, 0x44, 0xa7, 0x53, 0x7c, - 0x43, 0xba, 0x0e, 0xfd, 0x54, 0x82, 0xd9, 0xec, 0xba, 0x19, 0x3d, 0x13, 0xd3, 0xb8, 0x9a, 0xd0, - 0x78, 0x2a, 0xc1, 0x25, 0xf4, 0xdd, 0x86, 0x49, 0x51, 0x5d, 0x0b, 0x18, 0xe1, 0xe5, 0x27, 0x0f, - 0xce, 0xaa, 0x02, 0xcc, 0xaf, 0x13, 0xf9, 0x48, 0xc6, 0xdb, 0x70, 0x02, 0x57, 0xfe, 0xd9, 0x08, - 0x94, 0x9a, 0x6d, 0x45, 0x23, 0x43, 0x28, 0xea, 0xae, 0xc5, 0x8a, 0xba, 0x7e, 0xdf, 0xf9, 0x73, - 0x2d, 0x73, 0xeb, 0xb9, 0xcd, 0x44, 0x3d, 0x77, 0x6e, 0x20, 0xf4, 0x83, 0x4b, 0xb9, 0xe7, 0x61, - 0x2c, 0x50, 0xa2, 0xbf, 0xd5, 0x43, 0xfe, 0x78, 0x04, 0xc6, 0x23, 0x22, 0xfa, 0x5c, 0x7b, 0x76, - 0x62, 0xab, 0xf7, 0x20, 0x7f, 0x29, 0x8a, 0xc8, 0xae, 0xf9, 0xeb, 0xb7, 0xf7, 0x86, 0x2e, 0x7c, - 0x0b, 0x95, 0x5e, 0xd6, 0xcf, 0xc3, 0x24, 0xe5, 0xff, 0xb0, 0x09, 0xce, 0xf8, 0x0a, 0x3c, 0x8a, - 0x83, 0x97, 0x99, 0xad, 0x58, 0x2f, 0x4e, 0x50, 0xcf, 0xbd, 0x00, 0x13, 0x31, 0x61, 0x7d, 0x3d, - 0x79, 0xfb, 0xad, 0x04, 0x8f, 0xde, 0x71, 0x4f, 0x86, 0xea, 0xb1, 0xe9, 0x55, 0x4b, 0x4c, 0xaf, - 0xf9, 0x7c, 0x80, 0x21, 0x3e, 0x96, 0xf8, 0xd1, 0x08, 0xa0, 0xd6, 0xb6, 0x6a, 0x77, 0x1a, 0x8a, - 0x4d, 0x7b, 0x58, 0xfc, 0x8f, 0x6a, 0x08, 0x13, 0xee, 0x2c, 0x8c, 0x77, 0x88, 0xd3, 0xb6, 0x55, - 0xee, 0x2c, 0xb1, 0x57, 0x08, 0xce, 0x41, 0x96, 0xc3, 0x2e, 0x1c, 0xa5, 0x43, 0x5d, 0x28, 0xef, - 0x78, 0xff, 0xd4, 0xf3, 0x6f, 0xde, 0xfa, 0x2d, 0x66, 0xc3, 0xff, 0xfa, 0x85, 0xf1, 0x25, 0x1a, - 0x1c, 0x1c, 0x80, 0xcb, 0x1f, 0x4a, 0x30, 0x9b, 0x76, 0xcc, 0x32, 0x53, 0xfd, 0xfe, 0x3b, 0xe7, - 0x61, 0x28, 0x72, 0x74, 0xe6, 0x95, 0x63, 0xde, 0x89, 0x37, 0x93, 0x8c, 0x79, 0xab, 0xfc, 0xa5, - 0x04, 0x73, 0xd9, 0xaa, 0x0d, 0x61, 0x2b, 0x71, 0x3d, 0xbe, 0x95, 0xe8, 0xf7, 0xd8, 0x20, 0x5b, - 0xef, 0x9c, 0x6d, 0xc5, 0x5e, 0xe6, 0x18, 0x0c, 0xc1, 0xc8, 0xad, 0xb8, 0x91, 0x8b, 0x87, 0x36, - 0x32, 0xdb, 0xc0, 0xfa, 0x13, 0x37, 0x6f, 0xcd, 0x1f, 0xf9, 0xec, 0xd6, 0xfc, 0x91, 0x3f, 0xdf, - 0x9a, 0x3f, 0xf2, 0xfe, 0xfe, 0xbc, 0x74, 0x73, 0x7f, 0x5e, 0xfa, 0x6c, 0x7f, 0x5e, 0xfa, 0xdb, - 0xfe, 0xbc, 0xf4, 0x83, 0x2f, 0xe6, 0x8f, 0x5c, 0x1b, 0x15, 0x98, 0xff, 0x0a, 0x00, 0x00, 0xff, - 0xff, 0x56, 0x18, 0xbd, 0xf5, 0xb1, 0x3c, 0x00, 0x00, + // 3428 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x5b, 0x5b, 0x6f, 0x24, 0x47, + 0xf5, 0xdf, 0xf6, 0x78, 0xec, 0xf1, 0xf1, 0xda, 0x5e, 0x97, 0x1d, 0xef, 0xc4, 0x49, 0xec, 0x4d, + 0xff, 0xf5, 0x4f, 0x36, 0x90, 0x1d, 0x93, 0x0d, 0x1b, 0x92, 0x4d, 0xb2, 0x89, 0xc7, 0xde, 0x8b, + 0x91, 0xed, 0x9d, 0xd4, 0x8c, 0x57, 0x64, 0x73, 0xa3, 0x3d, 0x53, 0x1e, 0xf7, 0x6e, 0xdf, 0xd2, + 0x5d, 0xed, 0x78, 0x14, 0x01, 0x91, 0x10, 0x79, 0xe0, 0x01, 0xc1, 0x0b, 0x0a, 0x12, 0x3c, 0xf2, + 0xc0, 0x0b, 0x24, 0x0f, 0x10, 0xf8, 0x04, 0xec, 0x03, 0x42, 0x41, 0x02, 0x29, 0x42, 0xc1, 0x62, + 0x1d, 0x91, 0x2f, 0x80, 0xf2, 0xb2, 0x4f, 0xa8, 0xaa, 0xab, 0xef, 0xdd, 0xde, 0x9d, 0xb1, 0x77, + 0x84, 0xc4, 0xdb, 0x74, 0xd5, 0x39, 0xbf, 0x73, 0xa9, 0x53, 0xa7, 0x4e, 0x5d, 0x06, 0x5e, 0xbc, + 0xf9, 0xac, 0x53, 0x51, 0xcd, 0x85, 0x9b, 0xee, 0x26, 0xb1, 0x0d, 0x42, 0x89, 0xb3, 0x60, 0xdd, + 0x6c, 0x2f, 0x28, 0x96, 0xea, 0x2c, 0x90, 0x5d, 0x4a, 0x0c, 0x47, 0x35, 0x0d, 0x67, 0x61, 0xe7, + 0xa9, 0x4d, 0x42, 0x95, 0xa7, 0x16, 0xda, 0xc4, 0x20, 0xb6, 0x42, 0x49, 0xab, 0x62, 0xd9, 0x26, + 0x35, 0xd1, 0x19, 0x8f, 0xbd, 0x12, 0xb2, 0x57, 0xac, 0x9b, 0xed, 0x0a, 0x63, 0xaf, 0x84, 0xec, + 0x15, 0xc1, 0x3e, 0x7b, 0xa6, 0xad, 0xd2, 0x6d, 0x77, 0xb3, 0xd2, 0x34, 0xf5, 0x85, 0xb6, 0xd9, + 0x36, 0x17, 0x38, 0xca, 0xa6, 0xbb, 0xc5, 0xbf, 0xf8, 0x07, 0xff, 0xe5, 0xa1, 0xcf, 0x7e, 0x5d, + 0x28, 0xa7, 0x58, 0xaa, 0xae, 0x34, 0xb7, 0x55, 0x83, 0xd8, 0x1d, 0x5f, 0xbd, 0x05, 0x9b, 0x38, + 0xa6, 0x6b, 0x37, 0x49, 0x52, 0xa7, 0x03, 0xb9, 0x9c, 0x05, 0x9d, 0x50, 0x65, 0x61, 0x27, 0x65, + 0xc9, 0xec, 0x42, 0x1e, 0x97, 0xed, 0x1a, 0x54, 0xd5, 0xd3, 0x62, 0x9e, 0xb9, 0x1b, 0x83, 0xd3, + 0xdc, 0x26, 0xba, 0x92, 0xe2, 0x7b, 0x3a, 0x8f, 0xcf, 0xa5, 0xaa, 0xb6, 0xa0, 0x1a, 0xd4, 0xa1, + 0x76, 0x8a, 0xe9, 0xc9, 0xdc, 0x61, 0xca, 0xb2, 0xe5, 0xb9, 0x03, 0x06, 0xd5, 0x32, 0x35, 0xb5, + 0xd9, 0xc9, 0x1b, 0x50, 0xb9, 0x02, 0xb0, 0x58, 0x5b, 0xb9, 0x46, 0x6c, 0x36, 0x70, 0xe8, 0x14, + 0x0c, 0x1a, 0x8a, 0x4e, 0xca, 0xd2, 0x29, 0xe9, 0xf4, 0x48, 0xf5, 0xf8, 0xad, 0xbd, 0xf9, 0x63, + 0xfb, 0x7b, 0xf3, 0x83, 0xeb, 0x8a, 0x4e, 0x30, 0xef, 0x91, 0x7f, 0x26, 0xc1, 0x83, 0x4b, 0xae, + 0x43, 0x4d, 0x7d, 0x8d, 0x50, 0x5b, 0x6d, 0x2e, 0xb9, 0xb6, 0x4d, 0x0c, 0x5a, 0xa7, 0x0a, 0x75, + 0x9d, 0xbb, 0xf3, 0xa3, 0xeb, 0x50, 0xdc, 0x51, 0x34, 0x97, 0x94, 0x07, 0x4e, 0x49, 0xa7, 0x47, + 0xcf, 0x56, 0x2a, 0x22, 0xa0, 0xa2, 0xde, 0xf1, 0x43, 0xaa, 0xe2, 0x0f, 0x79, 0xe5, 0x15, 0x57, + 0x31, 0xa8, 0x4a, 0x3b, 0xd5, 0x69, 0x01, 0x79, 0x5c, 0xc8, 0xbd, 0xc6, 0xb0, 0xb0, 0x07, 0x29, + 0xff, 0x48, 0x82, 0x47, 0x72, 0x75, 0x5b, 0x55, 0x1d, 0x8a, 0x74, 0x28, 0xaa, 0x94, 0xe8, 0x4e, + 0x59, 0x3a, 0x55, 0x38, 0x3d, 0x7a, 0xf6, 0x4a, 0xa5, 0xab, 0x70, 0xae, 0xe4, 0x82, 0x57, 0xc7, + 0x84, 0x5e, 0xc5, 0x15, 0x06, 0x8f, 0x3d, 0x29, 0xf2, 0x4f, 0x24, 0x40, 0x51, 0x9e, 0x86, 0x62, + 0xb7, 0x09, 0xbd, 0x07, 0x2f, 0xbd, 0x7a, 0x38, 0x2f, 0x4d, 0x09, 0xc8, 0x51, 0x4f, 0x60, 0xcc, + 0x49, 0xef, 0x49, 0x30, 0x93, 0xd6, 0x89, 0x7b, 0x67, 0x2b, 0xee, 0x9d, 0xc5, 0x43, 0x78, 0xc7, + 0x43, 0xcd, 0x71, 0xcb, 0x6f, 0x07, 0x60, 0x64, 0x59, 0x21, 0xba, 0x69, 0xd4, 0x09, 0x45, 0xdf, + 0x86, 0x12, 0x9b, 0xa3, 0x2d, 0x85, 0x2a, 0xdc, 0x23, 0xa3, 0x67, 0xbf, 0x76, 0x90, 0xb9, 0x4e, + 0x85, 0x51, 0x57, 0x76, 0x9e, 0xaa, 0x5c, 0xdd, 0xbc, 0x41, 0x9a, 0x74, 0x8d, 0x50, 0xa5, 0x8a, + 0x84, 0x1c, 0x08, 0xdb, 0x70, 0x80, 0x8a, 0xde, 0x84, 0x41, 0xc7, 0x22, 0x4d, 0xe1, 0xcc, 0x17, + 0xba, 0x34, 0x2b, 0xd0, 0xb4, 0x6e, 0x91, 0x66, 0x38, 0x5a, 0xec, 0x0b, 0x73, 0x5c, 0xb4, 0x05, + 0x43, 0x0e, 0x0f, 0x83, 0x72, 0x81, 0x4b, 0xb8, 0xd0, 0xb3, 0x04, 0x2f, 0x98, 0xc6, 0x85, 0x8c, + 0x21, 0xef, 0x1b, 0x0b, 0x74, 0xf9, 0x4f, 0x12, 0x8c, 0x05, 0xb4, 0x7c, 0xc4, 0x5e, 0x4f, 0xf9, + 0xae, 0x72, 0x6f, 0xbe, 0x63, 0xdc, 0xdc, 0x73, 0x27, 0x84, 0xac, 0x92, 0xdf, 0x12, 0xf1, 0xdb, + 0x1b, 0x7e, 0x3c, 0x0c, 0xf0, 0x78, 0x78, 0xb6, 0x57, 0xb3, 0x72, 0xc2, 0xe0, 0xa3, 0xc1, 0x88, + 0x39, 0xcc, 0x9d, 0xe8, 0x0d, 0x28, 0x39, 0x44, 0x23, 0x4d, 0x6a, 0xda, 0xc2, 0x9c, 0xa7, 0xef, + 0xd1, 0x1c, 0x65, 0x93, 0x68, 0x75, 0xc1, 0x5a, 0x3d, 0xce, 0xec, 0xf1, 0xbf, 0x70, 0x00, 0x89, + 0x5e, 0x83, 0x12, 0x25, 0xba, 0xa5, 0x29, 0xd4, 0x9f, 0x58, 0x67, 0xf2, 0x4d, 0x62, 0xb0, 0x35, + 0xb3, 0xd5, 0x10, 0x0c, 0x7c, 0xf0, 0x03, 0x67, 0xf9, 0xad, 0x38, 0x00, 0x44, 0xef, 0x4b, 0x30, + 0xee, 0x5a, 0x2d, 0x46, 0x4a, 0x59, 0x82, 0x6d, 0x77, 0x44, 0x34, 0x5c, 0xea, 0xd5, 0x6d, 0x1b, + 0x31, 0xb4, 0xea, 0x8c, 0x10, 0x3e, 0x1e, 0x6f, 0xc7, 0x09, 0xa9, 0x68, 0x11, 0x26, 0x74, 0xd5, + 0xc0, 0x44, 0x69, 0x75, 0xea, 0xa4, 0x69, 0x1a, 0x2d, 0xa7, 0x3c, 0x78, 0x4a, 0x3a, 0x5d, 0xac, + 0x9e, 0x14, 0x00, 0x13, 0x6b, 0xf1, 0x6e, 0x9c, 0xa4, 0x47, 0xdf, 0x04, 0xe4, 0xdb, 0x75, 0xd9, + 0x5b, 0x2f, 0x54, 0xd3, 0x28, 0x17, 0x4f, 0x49, 0xa7, 0x0b, 0xd5, 0x59, 0x81, 0x82, 0x1a, 0x29, + 0x0a, 0x9c, 0xc1, 0x85, 0x56, 0x61, 0xda, 0x26, 0x3b, 0x2a, 0xb3, 0xf1, 0x8a, 0xea, 0x50, 0xd3, + 0xee, 0xac, 0xaa, 0xba, 0x4a, 0xcb, 0x43, 0x5c, 0xa7, 0xf2, 0xfe, 0xde, 0xfc, 0x34, 0xce, 0xe8, + 0xc7, 0x99, 0x5c, 0xf2, 0x87, 0x45, 0x98, 0x48, 0x4c, 0x17, 0x74, 0x0d, 0x66, 0x9a, 0x5e, 0x32, + 0x5e, 0x77, 0xf5, 0x4d, 0x62, 0xd7, 0x9b, 0xdb, 0xa4, 0xe5, 0x6a, 0xa4, 0xc5, 0x63, 0xa8, 0x58, + 0x9d, 0x13, 0x1a, 0xcf, 0x2c, 0x65, 0x52, 0xe1, 0x1c, 0x6e, 0xe6, 0x05, 0x83, 0x37, 0xad, 0xa9, + 0x8e, 0x13, 0x60, 0x0e, 0x70, 0xcc, 0xc0, 0x0b, 0xeb, 0x29, 0x0a, 0x9c, 0xc1, 0xc5, 0x74, 0x6c, + 0x11, 0x47, 0xb5, 0x49, 0x2b, 0xa9, 0x63, 0x21, 0xae, 0xe3, 0x72, 0x26, 0x15, 0xce, 0xe1, 0x46, + 0xe7, 0x60, 0xd4, 0x93, 0xc6, 0xc7, 0x4f, 0x0c, 0x74, 0x90, 0xfe, 0xd7, 0xc3, 0x2e, 0x1c, 0xa5, + 0x63, 0xa6, 0x99, 0x9b, 0x0e, 0xb1, 0x77, 0x48, 0x2b, 0x7f, 0x80, 0xaf, 0xa6, 0x28, 0x70, 0x06, + 0x17, 0x33, 0xcd, 0x8b, 0xc0, 0x94, 0x69, 0x43, 0x71, 0xd3, 0x36, 0x32, 0xa9, 0x70, 0x0e, 0x37, + 0x8b, 0x63, 0x4f, 0xe5, 0xc5, 0x1d, 0x45, 0xd5, 0x94, 0x4d, 0x8d, 0x94, 0x87, 0xe3, 0x71, 0xbc, + 0x1e, 0xef, 0xc6, 0x49, 0x7a, 0x74, 0x19, 0x26, 0xbd, 0xa6, 0x0d, 0x43, 0x09, 0x40, 0x4a, 0x1c, + 0xe4, 0x41, 0x01, 0x32, 0xb9, 0x9e, 0x24, 0xc0, 0x69, 0x1e, 0x74, 0x1e, 0xc6, 0x9b, 0xa6, 0xa6, + 0xf1, 0x78, 0x5c, 0x32, 0x5d, 0x83, 0x96, 0x47, 0xb8, 0xaf, 0x10, 0x9b, 0x8f, 0x4b, 0xb1, 0x1e, + 0x9c, 0xa0, 0x94, 0xff, 0x2e, 0xc1, 0xc9, 0x9c, 0x39, 0x8d, 0x5e, 0x82, 0x41, 0xda, 0xb1, 0xfc, + 0x4a, 0xe0, 0xab, 0xfe, 0xda, 0xd2, 0xe8, 0x58, 0xe4, 0xce, 0xde, 0xfc, 0x43, 0x39, 0x6c, 0xac, + 0x1b, 0x73, 0x46, 0xf4, 0x5d, 0x18, 0xb3, 0x99, 0x38, 0xa3, 0xed, 0x91, 0x88, 0xbc, 0x76, 0xb1, + 0xcb, 0x9c, 0x83, 0xa3, 0x18, 0x61, 0xde, 0x9e, 0xdc, 0xdf, 0x9b, 0x1f, 0x8b, 0xf5, 0xe1, 0xb8, + 0x38, 0xf9, 0xf7, 0x03, 0x00, 0xcb, 0xc4, 0xd2, 0xcc, 0x8e, 0x4e, 0x8c, 0x7e, 0xac, 0xe5, 0x6f, + 0xc5, 0xd6, 0xf2, 0x17, 0xbb, 0xcd, 0xad, 0x81, 0xaa, 0xb9, 0x8b, 0x79, 0x3b, 0xb1, 0x98, 0xbf, + 0xd4, 0xbb, 0x88, 0x83, 0x57, 0xf3, 0xdb, 0x05, 0x98, 0x0a, 0x89, 0x97, 0x4c, 0xa3, 0xa5, 0xf2, + 0xf9, 0xf4, 0x7c, 0x2c, 0x26, 0x1e, 0x4f, 0xc4, 0xc4, 0xc9, 0x0c, 0x96, 0x48, 0x3c, 0x5c, 0x0b, + 0xb4, 0x1f, 0xe0, 0xec, 0x17, 0xe2, 0xc2, 0xef, 0xec, 0xcd, 0x1f, 0xb8, 0xb3, 0xa8, 0x04, 0x98, + 0x71, 0x65, 0xd1, 0x63, 0x30, 0x64, 0x13, 0xc5, 0x31, 0x0d, 0x9e, 0x62, 0x46, 0x42, 0xa3, 0x30, + 0x6f, 0xc5, 0xa2, 0x17, 0x3d, 0x01, 0xc3, 0x3a, 0x71, 0x1c, 0xa5, 0x4d, 0x78, 0x36, 0x19, 0xa9, + 0x4e, 0x08, 0xc2, 0xe1, 0x35, 0xaf, 0x19, 0xfb, 0xfd, 0xe8, 0x06, 0x8c, 0x6b, 0x8a, 0x23, 0x42, + 0xbb, 0xa1, 0xea, 0x84, 0xe7, 0x8b, 0xd1, 0xb3, 0x5f, 0xb9, 0xb7, 0x88, 0x61, 0x1c, 0xe1, 0x9a, + 0xb8, 0x1a, 0x43, 0xc2, 0x09, 0x64, 0xb4, 0x03, 0x88, 0xb5, 0x34, 0x6c, 0xc5, 0x70, 0x3c, 0x97, + 0x31, 0x79, 0xc3, 0x5d, 0xcb, 0x0b, 0x72, 0xe3, 0x6a, 0x0a, 0x0d, 0x67, 0x48, 0x90, 0xff, 0x2c, + 0xc1, 0x78, 0x38, 0x60, 0x7d, 0x28, 0xd9, 0xde, 0x8c, 0x97, 0x6c, 0xcf, 0xf5, 0x1c, 0xbc, 0x39, + 0x35, 0xdb, 0x07, 0x05, 0x40, 0x21, 0x11, 0x4b, 0x0d, 0x9b, 0x4a, 0xf3, 0xe6, 0x3d, 0xec, 0x68, + 0x7e, 0x29, 0x01, 0x12, 0x89, 0x7e, 0xd1, 0x30, 0x4c, 0xca, 0xd7, 0x0e, 0x5f, 0xcd, 0x57, 0x7b, + 0x56, 0xd3, 0xd7, 0xa0, 0xb2, 0x91, 0xc2, 0xbe, 0x68, 0x50, 0xbb, 0x13, 0x8e, 0x58, 0x9a, 0x00, + 0x67, 0x28, 0x84, 0xde, 0x06, 0xb0, 0x05, 0x66, 0xc3, 0x14, 0x29, 0xe0, 0xc5, 0x1e, 0xb2, 0x29, + 0x03, 0x58, 0x32, 0x8d, 0x2d, 0xb5, 0x1d, 0x26, 0x34, 0x1c, 0x00, 0xe3, 0x88, 0x90, 0xd9, 0x8b, + 0x70, 0x32, 0x47, 0x7b, 0x74, 0x02, 0x0a, 0x37, 0x49, 0xc7, 0x73, 0x2b, 0x66, 0x3f, 0xd1, 0x74, + 0x74, 0x67, 0x38, 0x22, 0x36, 0x75, 0xe7, 0x07, 0x9e, 0x95, 0xe4, 0x2f, 0x8a, 0xd1, 0x58, 0xe3, + 0xf5, 0xf4, 0x69, 0x28, 0xd9, 0xc4, 0xd2, 0xd4, 0xa6, 0xe2, 0x88, 0x5a, 0x88, 0x97, 0xc6, 0x58, + 0xb4, 0xe1, 0xa0, 0x37, 0x56, 0x79, 0x0f, 0xdc, 0xdf, 0xca, 0xbb, 0x70, 0xd4, 0x95, 0xb7, 0x09, + 0x25, 0xc7, 0x2f, 0xb9, 0x07, 0x39, 0xf8, 0xe2, 0x21, 0x72, 0xb6, 0xa8, 0xb6, 0x03, 0x81, 0x41, + 0x9d, 0x1d, 0x08, 0xc9, 0xaa, 0xb0, 0x8b, 0x5d, 0x56, 0xd8, 0x47, 0x5a, 0x15, 0xb3, 0xec, 0x6c, + 0x29, 0xae, 0x43, 0x5a, 0x3c, 0xa5, 0x95, 0xc2, 0xec, 0x5c, 0xe3, 0xad, 0x58, 0xf4, 0x22, 0x3d, + 0x16, 0xdc, 0xa5, 0xa3, 0x08, 0xee, 0xf1, 0xfc, 0xc0, 0x46, 0x1b, 0x70, 0xd2, 0xb2, 0xcd, 0xb6, + 0x4d, 0x1c, 0x67, 0x99, 0x28, 0x2d, 0x4d, 0x35, 0x88, 0xef, 0xaf, 0x11, 0x6e, 0xe7, 0x43, 0xfb, + 0x7b, 0xf3, 0x27, 0x6b, 0xd9, 0x24, 0x38, 0x8f, 0x57, 0xfe, 0x74, 0x10, 0x4e, 0x24, 0x57, 0xd9, + 0x9c, 0x8a, 0x56, 0xea, 0xa9, 0xa2, 0x7d, 0x32, 0x32, 0x6d, 0xbc, 0x72, 0x3f, 0x88, 0x86, 0x8c, + 0xa9, 0xb3, 0x08, 0x13, 0x22, 0x8f, 0xf8, 0x9d, 0xa2, 0xa6, 0x0f, 0xa2, 0x61, 0x23, 0xde, 0x8d, + 0x93, 0xf4, 0xac, 0x4e, 0x0d, 0xcb, 0x4f, 0x1f, 0x64, 0x30, 0x5e, 0xa7, 0x2e, 0x26, 0x09, 0x70, + 0x9a, 0x07, 0xad, 0xc1, 0x94, 0x6b, 0xa4, 0xa1, 0xbc, 0xe8, 0x7c, 0x48, 0x40, 0x4d, 0x6d, 0xa4, + 0x49, 0x70, 0x16, 0x1f, 0xda, 0x01, 0x68, 0xfa, 0x05, 0x81, 0x53, 0x1e, 0xe2, 0xb9, 0xba, 0xda, + 0xf3, 0xdc, 0x0a, 0x6a, 0x8b, 0x30, 0x23, 0x06, 0x4d, 0x0e, 0x8e, 0x48, 0x42, 0xcf, 0xc3, 0x98, + 0xcd, 0x37, 0x2d, 0xbe, 0x01, 0x5e, 0xe1, 0xff, 0x80, 0x60, 0x1b, 0xc3, 0xd1, 0x4e, 0x1c, 0xa7, + 0xcd, 0xa8, 0xd5, 0x4b, 0xf7, 0x5c, 0xab, 0xff, 0x45, 0x8a, 0x2e, 0x6f, 0x41, 0x99, 0x7e, 0x3e, + 0x56, 0x92, 0x3d, 0x96, 0x28, 0xc9, 0x66, 0xd2, 0x1c, 0x91, 0x8a, 0xec, 0x7b, 0xd9, 0x15, 0xfa, + 0xa5, 0x43, 0x55, 0xe8, 0xe1, 0x32, 0x7d, 0xf7, 0x12, 0xfd, 0x23, 0x09, 0x66, 0x2e, 0xd5, 0x2f, + 0xdb, 0xa6, 0x6b, 0xf9, 0xea, 0x5d, 0xb5, 0x3c, 0x3f, 0x7f, 0x03, 0x06, 0x6d, 0x57, 0xf3, 0xed, + 0xfa, 0x3f, 0xdf, 0x2e, 0xec, 0x6a, 0xcc, 0xae, 0xa9, 0x04, 0x97, 0x67, 0x14, 0x63, 0x40, 0x6f, + 0xc2, 0x90, 0xad, 0x18, 0x6d, 0xe2, 0x2f, 0xe0, 0xcf, 0x74, 0x69, 0xcd, 0xca, 0x32, 0x66, 0xec, + 0x91, 0x32, 0x92, 0xa3, 0x61, 0x81, 0x2a, 0xff, 0x42, 0x82, 0x89, 0x2b, 0x8d, 0x46, 0x6d, 0xc5, + 0xe0, 0x19, 0xa0, 0xa6, 0xd0, 0x6d, 0x56, 0x63, 0x58, 0x0a, 0xdd, 0x4e, 0xd6, 0x18, 0xac, 0x0f, + 0xf3, 0x1e, 0xb4, 0x0d, 0xc3, 0x2c, 0xf3, 0x10, 0xa3, 0xd5, 0xe3, 0xf6, 0x40, 0x88, 0xab, 0x7a, + 0x20, 0x61, 0xed, 0x2a, 0x1a, 0xb0, 0x0f, 0x2f, 0xbf, 0x0b, 0xd3, 0x11, 0xf5, 0x98, 0xbf, 0xf8, + 0x19, 0x2b, 0x6a, 0x42, 0x91, 0x69, 0xe2, 0x9f, 0xa0, 0x76, 0x7b, 0x10, 0x98, 0x30, 0x39, 0xac, + 0xc1, 0xd8, 0x97, 0x83, 0x3d, 0x6c, 0x79, 0x0d, 0xc6, 0xae, 0x98, 0x0e, 0xad, 0x99, 0x36, 0xe5, + 0x6e, 0x43, 0x8f, 0x40, 0x41, 0x57, 0x0d, 0xb1, 0xc2, 0x8f, 0x0a, 0x9e, 0x02, 0x5b, 0x83, 0x58, + 0x3b, 0xef, 0x56, 0x76, 0x45, 0x26, 0x0b, 0xbb, 0x95, 0x5d, 0xcc, 0xda, 0xe5, 0xcb, 0x30, 0x2c, + 0x86, 0x23, 0x0a, 0x54, 0x38, 0x18, 0xa8, 0x90, 0x01, 0xf4, 0x9b, 0x01, 0x18, 0x16, 0xda, 0xf7, + 0x61, 0x23, 0xf8, 0x7a, 0x6c, 0x23, 0x78, 0xbe, 0xb7, 0x91, 0xce, 0xdd, 0x05, 0xb6, 0x12, 0xbb, + 0xc0, 0x17, 0x7a, 0xc4, 0x3f, 0x78, 0x0b, 0xf8, 0xa1, 0x04, 0xe3, 0xf1, 0x98, 0x43, 0xe7, 0x60, + 0x94, 0xad, 0x47, 0x6a, 0x93, 0xac, 0x87, 0x05, 0x75, 0x70, 0xa0, 0x53, 0x0f, 0xbb, 0x70, 0x94, + 0x0e, 0xb5, 0x03, 0x36, 0x16, 0x16, 0xc2, 0x29, 0xf9, 0x2e, 0x77, 0xa9, 0xaa, 0x55, 0xbc, 0xab, + 0xa7, 0xca, 0x8a, 0x41, 0xaf, 0xda, 0x75, 0x6a, 0xab, 0x46, 0x3b, 0x25, 0x88, 0xc7, 0x58, 0x14, + 0x59, 0xbe, 0x25, 0xc1, 0xa8, 0x50, 0xb9, 0x0f, 0xdb, 0x99, 0xd7, 0xe2, 0xdb, 0x99, 0x67, 0x7a, + 0x9c, 0xcf, 0xd9, 0x7b, 0x99, 0x8f, 0x43, 0x53, 0xd8, 0x0c, 0x66, 0x09, 0x66, 0xdb, 0x74, 0x68, + 0x32, 0xc1, 0xb0, 0xb9, 0x86, 0x79, 0x0f, 0xfa, 0x81, 0x04, 0x27, 0xd4, 0xc4, 0x9c, 0x17, 0xbe, + 0x7e, 0xa9, 0x37, 0xd5, 0x02, 0x98, 0x6a, 0x59, 0xc8, 0x3b, 0x91, 0xec, 0xc1, 0x29, 0x91, 0xb2, + 0x0b, 0x29, 0x2a, 0xa4, 0xc0, 0xe0, 0x36, 0xa5, 0x96, 0x18, 0x84, 0xa5, 0xde, 0x33, 0x4f, 0xa8, + 0x52, 0x89, 0x9b, 0xdf, 0x68, 0xd4, 0x30, 0x87, 0x96, 0x7f, 0x3d, 0x10, 0x38, 0xac, 0xee, 0x4d, + 0x92, 0x20, 0xdf, 0x4a, 0x47, 0x91, 0x6f, 0x47, 0xb3, 0x72, 0x2d, 0xfa, 0x16, 0x14, 0xa8, 0xd6, + 0xeb, 0x86, 0x56, 0x48, 0x68, 0xac, 0xd6, 0xc3, 0x84, 0xd5, 0x58, 0xad, 0x63, 0x06, 0x89, 0xde, + 0x82, 0x22, 0x5b, 0xcd, 0xd8, 0x1c, 0x2f, 0xf4, 0x9e, 0x43, 0x98, 0xbf, 0xc2, 0x08, 0x63, 0x5f, + 0x0e, 0xf6, 0x70, 0xe5, 0x77, 0x61, 0x2c, 0x96, 0x08, 0xd0, 0x0d, 0x38, 0xae, 0x99, 0x4a, 0xab, + 0xaa, 0x68, 0x8a, 0xd1, 0x24, 0x76, 0x32, 0x35, 0x66, 0xef, 0x85, 0x56, 0x23, 0x1c, 0x22, 0xa1, + 0x04, 0xd7, 0xa0, 0xd1, 0x3e, 0x1c, 0xc3, 0x96, 0x15, 0x80, 0xd0, 0x7a, 0x34, 0x0f, 0x45, 0x16, + 0xc2, 0xde, 0xca, 0x34, 0x52, 0x1d, 0x61, 0xba, 0xb2, 0xc8, 0x76, 0xb0, 0xd7, 0x8e, 0xce, 0x02, + 0x38, 0xa4, 0x69, 0x13, 0xca, 0xf3, 0x8e, 0x77, 0x7a, 0x14, 0x64, 0xe0, 0x7a, 0xd0, 0x83, 0x23, + 0x54, 0xf2, 0xdf, 0x24, 0x18, 0x5b, 0x27, 0xf4, 0x1d, 0xd3, 0xbe, 0x59, 0xe3, 0xd7, 0xcc, 0x7d, + 0xc8, 0xfb, 0x9b, 0xb1, 0xbc, 0xff, 0x72, 0x97, 0x63, 0x16, 0xd3, 0x36, 0x2f, 0xfb, 0xcb, 0xff, + 0x92, 0xa0, 0x1c, 0xa3, 0x8c, 0xa6, 0x09, 0x02, 0x45, 0xcb, 0xb4, 0xa9, 0xbf, 0xc6, 0x1f, 0x4a, + 0x03, 0x96, 0x52, 0x23, 0xab, 0x3c, 0x83, 0xc5, 0x1e, 0x3a, 0xb3, 0x73, 0xcb, 0x36, 0x75, 0x11, + 0xf7, 0x87, 0x93, 0x42, 0x88, 0x1d, 0xda, 0x79, 0xc9, 0x36, 0x75, 0xcc, 0xb1, 0xe5, 0xbf, 0x4a, + 0x30, 0x19, 0xa3, 0xec, 0x43, 0x4a, 0x57, 0xe2, 0x29, 0xfd, 0x85, 0xc3, 0x18, 0x96, 0x93, 0xd8, + 0xbf, 0x4c, 0x9a, 0xc5, 0x1c, 0x80, 0xb6, 0x60, 0xd4, 0x32, 0x5b, 0xf5, 0x23, 0xb8, 0x5f, 0x9c, + 0x60, 0x2b, 0x64, 0x2d, 0xc4, 0xc2, 0x51, 0x60, 0xb4, 0x0b, 0x93, 0x86, 0xa2, 0x13, 0xc7, 0x52, + 0x9a, 0xa4, 0x7e, 0x04, 0x67, 0x2a, 0x0f, 0xf0, 0x5b, 0x8a, 0x24, 0x22, 0x4e, 0x0b, 0x91, 0x7f, + 0x97, 0xb2, 0xdb, 0xb4, 0x29, 0x7a, 0x05, 0x4a, 0xfc, 0xa9, 0x47, 0xd3, 0xd4, 0xc4, 0xd2, 0x76, + 0x8e, 0x0d, 0x4d, 0x4d, 0xb4, 0xdd, 0xd9, 0x9b, 0xff, 0xff, 0x03, 0x8f, 0x84, 0x7d, 0x42, 0x1c, + 0xc0, 0xa0, 0x75, 0x18, 0xb4, 0x0e, 0x53, 0x66, 0xf0, 0x85, 0x85, 0xd7, 0x16, 0x1c, 0x47, 0xfe, + 0x77, 0x52, 0x71, 0xbe, 0xbc, 0xdc, 0x38, 0xb2, 0x01, 0x0b, 0xca, 0x9a, 0xdc, 0x41, 0xb3, 0x61, + 0x58, 0xac, 0xb2, 0x22, 0x2e, 0x2f, 0x1f, 0x26, 0x2e, 0xa3, 0x2b, 0x43, 0xb0, 0x89, 0xf0, 0x1b, + 0x7d, 0x41, 0xf2, 0x3f, 0x24, 0x98, 0xe4, 0x0a, 0x35, 0x5d, 0x5b, 0xa5, 0x9d, 0xbe, 0x65, 0xd0, + 0xad, 0x58, 0x06, 0x5d, 0xee, 0xd2, 0xd0, 0x94, 0xc6, 0xb9, 0x59, 0xf4, 0x33, 0x09, 0x1e, 0x48, + 0x51, 0xf7, 0x21, 0xc3, 0x90, 0x78, 0x86, 0x79, 0xf9, 0xb0, 0x06, 0xe6, 0x64, 0x99, 0x1f, 0x8e, + 0x66, 0x98, 0xc7, 0x03, 0xf7, 0x2c, 0x80, 0x65, 0xab, 0x3b, 0xaa, 0x46, 0xda, 0xe2, 0x12, 0xba, + 0x14, 0x0e, 0x49, 0x2d, 0xe8, 0xc1, 0x11, 0x2a, 0xf4, 0x1d, 0x98, 0x69, 0x91, 0x2d, 0xc5, 0xd5, + 0xe8, 0x62, 0xab, 0xb5, 0xa4, 0x58, 0xca, 0xa6, 0xaa, 0xa9, 0x54, 0x15, 0x3b, 0xec, 0x91, 0xea, + 0x45, 0xef, 0x72, 0x38, 0x8b, 0xe2, 0xce, 0xde, 0xfc, 0xe3, 0x07, 0x5f, 0xea, 0xf8, 0xc4, 0x1d, + 0x9c, 0x23, 0x04, 0x7d, 0x5f, 0x82, 0xb2, 0x4d, 0xde, 0x76, 0x55, 0x9b, 0xb4, 0x96, 0x6d, 0xd3, + 0x8a, 0x69, 0x50, 0xe0, 0x1a, 0x5c, 0xde, 0xdf, 0x9b, 0x2f, 0xe3, 0x1c, 0x9a, 0x6e, 0x74, 0xc8, + 0x15, 0x84, 0x28, 0x4c, 0x29, 0x9a, 0x66, 0xbe, 0x43, 0xe2, 0x1e, 0x18, 0xe4, 0xf2, 0xab, 0xfb, + 0x7b, 0xf3, 0x53, 0x8b, 0xe9, 0xee, 0x6e, 0x44, 0x67, 0xc1, 0xa3, 0x05, 0x18, 0xde, 0x31, 0x35, + 0x57, 0x27, 0x4e, 0xb9, 0xc8, 0x25, 0xb1, 0x8c, 0x3b, 0x7c, 0xcd, 0x6b, 0xba, 0xb3, 0x37, 0x3f, + 0x74, 0xa9, 0xce, 0x8f, 0x3e, 0x7c, 0x2a, 0xb6, 0x47, 0x63, 0x35, 0x93, 0x98, 0xf2, 0xfc, 0xcc, + 0xb6, 0x14, 0xe6, 0x98, 0x2b, 0x61, 0x17, 0x8e, 0xd2, 0x21, 0x1d, 0x46, 0xb6, 0xc5, 0xbe, 0xdd, + 0x29, 0x0f, 0xf7, 0xb4, 0xfa, 0xc5, 0xf6, 0xfd, 0xd5, 0x49, 0x21, 0x72, 0xc4, 0x6f, 0x76, 0x70, + 0x28, 0x01, 0x3d, 0x01, 0xc3, 0xfc, 0x63, 0x65, 0x99, 0x1f, 0x80, 0x95, 0xc2, 0x4c, 0x74, 0xc5, + 0x6b, 0xc6, 0x7e, 0xbf, 0x4f, 0xba, 0x52, 0x5b, 0xe2, 0x07, 0xb3, 0x09, 0xd2, 0x95, 0xda, 0x12, + 0xf6, 0xfb, 0x91, 0x05, 0xc3, 0x0e, 0x59, 0x55, 0x0d, 0x77, 0xb7, 0x0c, 0x3d, 0x5d, 0x35, 0xd7, + 0x2f, 0x72, 0xee, 0xc4, 0x51, 0x54, 0x28, 0x51, 0xf4, 0x63, 0x5f, 0x0c, 0xda, 0x85, 0x11, 0xdb, + 0x35, 0x16, 0x9d, 0x0d, 0x87, 0xd8, 0xe5, 0x51, 0x2e, 0xb3, 0xdb, 0xe4, 0x8c, 0x7d, 0xfe, 0xa4, + 0xd4, 0xc0, 0x83, 0x01, 0x05, 0x0e, 0x85, 0xa1, 0x9f, 0x4b, 0x80, 0x1c, 0xd7, 0xb2, 0x34, 0xa2, + 0x13, 0x83, 0x2a, 0x1a, 0x3f, 0x0d, 0x73, 0xca, 0xc7, 0xb9, 0x0e, 0xb5, 0x6e, 0xed, 0x4e, 0x01, + 0x25, 0x95, 0x09, 0x8e, 0xa9, 0xd3, 0xa4, 0x38, 0x43, 0x0f, 0x36, 0x14, 0x5b, 0x0e, 0xff, 0x5d, + 0x1e, 0xeb, 0x69, 0x28, 0xb2, 0x4f, 0x05, 0xc3, 0xa1, 0x10, 0xfd, 0xd8, 0x17, 0x83, 0xae, 0xc1, + 0x8c, 0x4d, 0x94, 0xd6, 0x55, 0x43, 0xeb, 0x60, 0xd3, 0xa4, 0x97, 0x54, 0x8d, 0x38, 0x1d, 0x87, + 0x12, 0xbd, 0x3c, 0xce, 0xc3, 0x26, 0x78, 0xea, 0x81, 0x33, 0xa9, 0x70, 0x0e, 0x37, 0x7a, 0x19, + 0x4e, 0x88, 0x89, 0xc9, 0x43, 0x93, 0x9f, 0xa0, 0x4d, 0xf0, 0xa9, 0x38, 0xcd, 0x76, 0xc4, 0x8b, + 0x89, 0x3e, 0x9c, 0xa2, 0xe6, 0xef, 0x10, 0xc4, 0x09, 0x70, 0x7f, 0xde, 0x14, 0x1e, 0xee, 0x1d, + 0x42, 0xa8, 0xea, 0x7d, 0x7b, 0x87, 0x10, 0x11, 0x71, 0xf0, 0x21, 0xd4, 0x97, 0x03, 0x30, 0x15, + 0x12, 0xdf, 0xf3, 0x3b, 0x84, 0x0c, 0x96, 0x3e, 0xbc, 0x43, 0xc8, 0xbe, 0xc8, 0x2f, 0xdc, 0xef, + 0x8b, 0xfc, 0xfb, 0xf0, 0xfe, 0x81, 0xbf, 0x0d, 0x08, 0x9d, 0xf8, 0xdf, 0xff, 0x36, 0x20, 0xd4, + 0x35, 0xa7, 0x20, 0xfa, 0xc3, 0x40, 0xd4, 0xa0, 0xff, 0xa1, 0x0b, 0xe8, 0xc3, 0xbf, 0xb8, 0x94, + 0x3f, 0x2b, 0xc0, 0x89, 0xe4, 0x8c, 0x8d, 0xdd, 0x43, 0x4a, 0x77, 0xbd, 0x87, 0xac, 0xc1, 0xf4, + 0x96, 0xab, 0x69, 0x1d, 0xee, 0x90, 0xc8, 0x65, 0xa4, 0x77, 0xee, 0xff, 0xb0, 0xe0, 0x9c, 0xbe, + 0x94, 0x41, 0x83, 0x33, 0x39, 0x73, 0xee, 0x54, 0x0b, 0x3d, 0xdd, 0xa9, 0xa6, 0xae, 0xf4, 0x06, + 0xbb, 0xb8, 0xd2, 0xcb, 0xbc, 0x1f, 0x2d, 0xf6, 0x70, 0x3f, 0x7a, 0x14, 0x17, 0x9a, 0x19, 0x89, + 0xef, 0x6e, 0x17, 0x9a, 0xf2, 0xc3, 0x30, 0x2b, 0xd8, 0x28, 0xbf, 0x6b, 0x34, 0xa8, 0x6d, 0x6a, + 0x1a, 0xb1, 0x97, 0x5d, 0x5d, 0xef, 0xc8, 0x17, 0x60, 0x3c, 0x7e, 0xab, 0xee, 0x8d, 0xbc, 0x77, + 0xd1, 0x2f, 0x6e, 0x63, 0x22, 0x23, 0xef, 0xb5, 0xe3, 0x80, 0x42, 0x7e, 0x5f, 0x82, 0x99, 0xec, + 0x17, 0x7c, 0x48, 0x83, 0x71, 0x5d, 0xd9, 0x8d, 0x3e, 0x7f, 0x94, 0x7a, 0xdc, 0xb3, 0xf3, 0xeb, + 0xd3, 0xb5, 0x18, 0x16, 0x4e, 0x60, 0xcb, 0x9f, 0x4b, 0x70, 0x32, 0xe7, 0xa2, 0xb2, 0xbf, 0x9a, + 0xa0, 0xeb, 0x50, 0xd2, 0x95, 0xdd, 0xba, 0x6b, 0xb7, 0x49, 0xcf, 0xa7, 0x14, 0x3c, 0x97, 0xac, + 0x09, 0x14, 0x1c, 0xe0, 0xc9, 0x1f, 0x49, 0x50, 0xce, 0xab, 0x28, 0xd1, 0xb9, 0xd8, 0x95, 0xea, + 0xa3, 0x89, 0x2b, 0xd5, 0xc9, 0x14, 0x5f, 0x9f, 0x2e, 0x54, 0x3f, 0x96, 0x60, 0x26, 0xbb, 0xf2, + 0x46, 0x4f, 0xc7, 0x34, 0x9e, 0x4f, 0x68, 0x3c, 0x91, 0xe0, 0x12, 0xfa, 0x6e, 0xc3, 0xb8, 0xa8, + 0xcf, 0x05, 0x8c, 0xf0, 0xf2, 0x93, 0x07, 0x67, 0x55, 0x01, 0xe6, 0x57, 0x9a, 0x7c, 0x24, 0xe3, + 0x6d, 0x38, 0x81, 0x2b, 0xff, 0x6a, 0x00, 0x8a, 0xf5, 0xa6, 0xa2, 0x91, 0x3e, 0x14, 0x75, 0xd7, + 0x63, 0x45, 0x5d, 0xb7, 0xff, 0x77, 0xe0, 0x5a, 0xe6, 0xd6, 0x73, 0x9b, 0x89, 0x7a, 0xee, 0x7c, + 0x4f, 0xe8, 0x07, 0x97, 0x72, 0xcf, 0xc1, 0x48, 0xa0, 0x44, 0x77, 0xab, 0x87, 0xfc, 0xe1, 0x00, + 0x8c, 0x46, 0x44, 0x74, 0xb9, 0xf6, 0xec, 0xc4, 0x56, 0xef, 0x5e, 0xfe, 0x5a, 0x15, 0x91, 0x5d, + 0xf1, 0xd7, 0x6f, 0xef, 0x05, 0x5f, 0xf8, 0x12, 0x2b, 0xbd, 0xac, 0x5f, 0x80, 0x71, 0xca, 0xff, + 0x69, 0x14, 0x9c, 0x12, 0x16, 0x78, 0x14, 0x07, 0xef, 0x42, 0x1b, 0xb1, 0x5e, 0x9c, 0xa0, 0x9e, + 0x7d, 0x1e, 0xc6, 0x62, 0xc2, 0xba, 0x7a, 0x70, 0xf7, 0x47, 0x09, 0x1e, 0xbd, 0xeb, 0xae, 0x0e, + 0x55, 0x63, 0xd3, 0xab, 0x92, 0x98, 0x5e, 0x73, 0xf9, 0x00, 0x7d, 0x7c, 0x6e, 0xf1, 0xd3, 0x01, + 0x40, 0x8d, 0x6d, 0xd5, 0x6e, 0xd5, 0x14, 0x9b, 0x76, 0xb0, 0xf8, 0x3f, 0x59, 0x1f, 0x26, 0xdc, + 0x39, 0x18, 0x6d, 0x11, 0xa7, 0x69, 0xab, 0xdc, 0x59, 0x62, 0xaf, 0x10, 0x9c, 0xa4, 0x2c, 0x87, + 0x5d, 0x38, 0x4a, 0x87, 0xda, 0x50, 0xda, 0xf1, 0xfe, 0xb1, 0xe8, 0xdf, 0xdd, 0x75, 0x5b, 0xcc, + 0x86, 0xff, 0x79, 0x0c, 0xe3, 0x4b, 0x34, 0x38, 0x38, 0x00, 0x97, 0x3f, 0x90, 0x60, 0x26, 0xed, + 0x98, 0x65, 0xa6, 0xfa, 0xfd, 0x77, 0xce, 0xc3, 0x30, 0xc8, 0xd1, 0x99, 0x57, 0x8e, 0x7b, 0x67, + 0xe6, 0x4c, 0x32, 0xe6, 0xad, 0xf2, 0x17, 0x12, 0xcc, 0x66, 0xab, 0xd6, 0x87, 0xad, 0xc4, 0x8d, + 0xf8, 0x56, 0xa2, 0xdb, 0x83, 0x87, 0x6c, 0xbd, 0x73, 0xb6, 0x15, 0x7b, 0x99, 0x63, 0xd0, 0x07, + 0x23, 0xb7, 0xe2, 0x46, 0x2e, 0x1e, 0xda, 0xc8, 0x6c, 0x03, 0xab, 0x67, 0x6e, 0xdd, 0x9e, 0x3b, + 0xf6, 0xc9, 0xed, 0xb9, 0x63, 0x9f, 0xde, 0x9e, 0x3b, 0xf6, 0xde, 0xfe, 0x9c, 0x74, 0x6b, 0x7f, + 0x4e, 0xfa, 0x64, 0x7f, 0x4e, 0xfa, 0x74, 0x7f, 0x4e, 0xfa, 0xe7, 0xfe, 0x9c, 0xf4, 0xe3, 0xcf, + 0xe7, 0x8e, 0x5d, 0x1f, 0x16, 0xb8, 0xff, 0x09, 0x00, 0x00, 0xff, 0xff, 0xfe, 0xd5, 0x62, 0x7f, + 0xc2, 0x3d, 0x00, 0x00, } diff --git a/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/generated.proto b/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/generated.proto index 861904e4..887e4db7 100644 --- a/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/generated.proto +++ b/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/generated.proto @@ -19,15 +19,15 @@ limitations under the License. syntax = 'proto2'; -package k8s.io.kubernetes.pkg.apis.extensions.v1beta1; +package k8s.io.client_go.pkg.apis.extensions.v1beta1; import "k8s.io/apimachinery/pkg/api/resource/generated.proto"; import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; import "k8s.io/kubernetes/pkg/api/v1/generated.proto"; +import "k8s.io/kubernetes/pkg/apis/policy/v1beta1/generated.proto"; // Package-wide variables from generator "generated". option go_package = "v1beta1"; @@ -67,12 +67,12 @@ message CustomMetricTargetList { // DaemonSet represents the configuration of a daemon set. message DaemonSet { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // The desired behavior of this daemon set. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional DaemonSetSpec spec = 2; @@ -80,7 +80,7 @@ message DaemonSet { // out of date by some window of time. // Populated by the system. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional DaemonSetStatus status = 3; } @@ -88,7 +88,7 @@ message DaemonSet { // DaemonSetList is a collection of daemon sets. message DaemonSetList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -110,7 +110,7 @@ message DaemonSetSpec { // that matches the template's node selector (or on every node if no node // selector is specified). // More info: https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller#pod-template - optional k8s.io.kubernetes.pkg.api.v1.PodTemplateSpec template = 2; + optional k8s.io.client_go.pkg.api.v1.PodTemplateSpec template = 2; // An update strategy to replace existing DaemonSet pods with new pods. // +optional @@ -123,10 +123,17 @@ message DaemonSetSpec { // +optional optional int32 minReadySeconds = 4; + // DEPRECATED. // A sequence number representing a specific generation of the template. // Populated by the system. It can be set only during the creation. // +optional optional int64 templateGeneration = 5; + + // The number of old history to retain to allow rollback. + // This is a pointer to distinguish between explicit zero and not specified. + // Defaults to 10. + // +optional + optional int32 revisionHistoryLimit = 6; } // DaemonSetStatus represents the current status of a daemon set. @@ -169,6 +176,12 @@ message DaemonSetStatus { // (ready for at least spec.minReadySeconds) // +optional optional int32 numberUnavailable = 8; + + // Count of hash collisions for the DaemonSet. The DaemonSet controller + // uses this field as a collision avoidance mechanism when it needs to + // create the name for the newest ControllerRevision. + // +optional + optional int64 collisionCount = 9; } message DaemonSetUpdateStrategy { @@ -180,7 +193,7 @@ message DaemonSetUpdateStrategy { // Rolling update config params. Present only if type = "RollingUpdate". // --- // TODO: Update this to follow our convention for oneOf, whatever we decide it - // to be. Same as DeploymentStrategy.RollingUpdate. + // to be. Same as Deployment `strategy.rollingUpdate`. // See https://github.com/kubernetes/kubernetes/issues/35345 // +optional optional RollingUpdateDaemonSet rollingUpdate = 2; @@ -258,7 +271,7 @@ message DeploymentSpec { optional k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector selector = 2; // Template describes the pods that will be created. - optional k8s.io.kubernetes.pkg.api.v1.PodTemplateSpec template = 3; + optional k8s.io.client_go.pkg.api.v1.PodTemplateSpec template = 3; // The deployment strategy to use to replace existing pods with new ones. // +optional @@ -324,6 +337,12 @@ message DeploymentStatus { // +patchMergeKey=type // +patchStrategy=merge repeated DeploymentCondition conditions = 6; + + // Count of hash collisions for the Deployment. The Deployment controller uses this + // field as a collision avoidance mechanism when it needs to create the name for the + // newest ReplicaSet. + // +optional + optional int64 collisionCount = 8; } // DeploymentStrategy describes how to replace existing pods with new ones. @@ -406,17 +425,17 @@ message IDRange { // based virtual hosting etc. message Ingress { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // Spec is the desired state of the Ingress. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional IngressSpec spec = 2; // Status is the current state of the Ingress. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional IngressStatus status = 3; } @@ -433,7 +452,7 @@ message IngressBackend { // IngressList is a collection of Ingress. message IngressList { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -505,7 +524,7 @@ message IngressSpec { message IngressStatus { // LoadBalancer contains the current status of the load-balancer. // +optional - optional k8s.io.kubernetes.pkg.api.v1.LoadBalancerStatus loadBalancer = 1; + optional k8s.io.client_go.pkg.api.v1.LoadBalancerStatus loadBalancer = 1; } // IngressTLS describes the transport layer security associated with an Ingress. @@ -526,9 +545,10 @@ message IngressTLS { optional string secretName = 2; } +// NetworkPolicy describes what network traffic is allowed for a set of Pods message NetworkPolicy { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; @@ -559,7 +579,7 @@ message NetworkPolicyIngressRule { // Network Policy List is a list of NetworkPolicy objects. message NetworkPolicyList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -606,13 +626,12 @@ message NetworkPolicySpec { optional k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector podSelector = 1; // List of ingress rules to be applied to the selected pods. - // Traffic is allowed to a pod if namespace.networkPolicy.ingress.isolation is undefined and cluster policy allows it, + // Traffic is allowed to a pod if there are no NetworkPolicies selecting the pod // OR if the traffic source is the pod's local node, // OR if the traffic matches at least one ingress rule across all of the NetworkPolicy // objects whose podSelector matches the pod. - // If this field is empty then this NetworkPolicy does not affect ingress isolation. - // If this field is present and contains at least one rule, this policy allows any traffic - // which matches at least one of the ingress rules in this list. + // If this field is empty then this NetworkPolicy does not allow any traffic + // (and serves solely to ensure that the pods it selects are isolated by default). // +optional repeated NetworkPolicyIngressRule ingress = 2; } @@ -621,7 +640,7 @@ message NetworkPolicySpec { // that will be applied to a pod and container. message PodSecurityPolicy { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; @@ -633,7 +652,7 @@ message PodSecurityPolicy { // Pod Security Policy List is a list of PodSecurityPolicy objects. message PodSecurityPolicyList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -704,18 +723,23 @@ message PodSecurityPolicySpec { // will not be forced to. // +optional optional bool readOnlyRootFilesystem = 14; + + // AllowedHostPaths is a white list of allowed host path prefixes. Empty indicates that all + // host paths may be used. + // +optional + repeated string allowedHostPaths = 15; } // ReplicaSet represents the configuration of a ReplicaSet. message ReplicaSet { // If the Labels of a ReplicaSet are empty, they are defaulted to // be the same as the Pod(s) that the ReplicaSet manages. - // Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata + // Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // Spec defines the specification of the desired behavior of the ReplicaSet. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional ReplicaSetSpec spec = 2; @@ -723,7 +747,7 @@ message ReplicaSet { // This data may be out of date by some window of time. // Populated by the system. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional ReplicaSetStatus status = 3; } @@ -752,7 +776,7 @@ message ReplicaSetCondition { // ReplicaSetList is a collection of ReplicaSets. message ReplicaSetList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -787,7 +811,7 @@ message ReplicaSetSpec { // insufficient replicas are detected. // More info: https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller#pod-template // +optional - optional k8s.io.kubernetes.pkg.api.v1.PodTemplateSpec template = 3; + optional k8s.io.client_go.pkg.api.v1.PodTemplateSpec template = 3; } // ReplicaSetStatus represents the current status of a ReplicaSet. @@ -824,7 +848,7 @@ message ReplicationControllerDummy { } message RollbackConfig { - // The revision to rollback to. If set to 0, rollbck to the last revision. + // The revision to rollback to. If set to 0, rollback to the last revision. // +optional optional int64 revision = 1; } @@ -895,22 +919,22 @@ message SELinuxStrategyOptions { optional string rule = 1; // seLinuxOptions required to run as; required for MustRunAs - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/security_context.md + // More info: https://git.k8s.io/community/contributors/design-proposals/security_context.md // +optional - optional k8s.io.kubernetes.pkg.api.v1.SELinuxOptions seLinuxOptions = 2; + optional k8s.io.client_go.pkg.api.v1.SELinuxOptions seLinuxOptions = 2; } // represents a scaling request for a resource. message Scale { - // Standard object metadata; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata. + // Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; - // defines the behavior of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. + // defines the behavior of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. // +optional optional ScaleSpec spec = 2; - // current status of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. Read-only. + // current status of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. Read-only. // +optional optional ScaleStatus status = 3; } @@ -983,7 +1007,7 @@ message ThirdPartyResourceData { // ThirdPartyResrouceDataList is a list of ThirdPartyResourceData. message ThirdPartyResourceDataList { // Standard list metadata - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; diff --git a/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/types.generated.go b/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/types.generated.go index 423a1647..92104bbc 100644 --- a/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/types.generated.go +++ b/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/types.generated.go @@ -5606,7 +5606,7 @@ func (x *DeploymentStatus) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [7]bool + var yyq2 [8]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[0] = x.ObservedGeneration != 0 @@ -5616,9 +5616,10 @@ func (x *DeploymentStatus) CodecEncodeSelf(e *codec1978.Encoder) { yyq2[4] = x.AvailableReplicas != 0 yyq2[5] = x.UnavailableReplicas != 0 yyq2[6] = len(x.Conditions) != 0 + yyq2[7] = x.CollisionCount != nil var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(7) + r.EncodeArrayStart(8) } else { yynn2 = 0 for _, b := range yyq2 { @@ -5812,6 +5813,41 @@ func (x *DeploymentStatus) CodecEncodeSelf(e *codec1978.Encoder) { } } } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[7] { + if x.CollisionCount == nil { + r.EncodeNil() + } else { + yy25 := *x.CollisionCount + yym26 := z.EncBinary() + _ = yym26 + if false { + } else { + r.EncodeInt(int64(yy25)) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[7] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("collisionCount")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.CollisionCount == nil { + r.EncodeNil() + } else { + yy27 := *x.CollisionCount + yym28 := z.EncBinary() + _ = yym28 + if false { + } else { + r.EncodeInt(int64(yy27)) + } + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -5957,6 +5993,22 @@ func (x *DeploymentStatus) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { h.decSliceDeploymentCondition((*[]DeploymentCondition)(yyv16), d) } } + case "collisionCount": + if r.TryDecodeAsNil() { + if x.CollisionCount != nil { + x.CollisionCount = nil + } + } else { + if x.CollisionCount == nil { + x.CollisionCount = new(int64) + } + yym19 := z.DecBinary() + _ = yym19 + if false { + } else { + *((*int64)(x.CollisionCount)) = int64(r.DecodeInt(64)) + } + } default: z.DecStructFieldNotFound(-1, yys3) } // end switch yys3 @@ -5968,16 +6020,16 @@ func (x *DeploymentStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj18 int - var yyb18 bool - var yyhl18 bool = l >= 0 - yyj18++ - if yyhl18 { - yyb18 = yyj18 > l + var yyj20 int + var yyb20 bool + var yyhl20 bool = l >= 0 + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l } else { - yyb18 = r.CheckBreak() + yyb20 = r.CheckBreak() } - if yyb18 { + if yyb20 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -5985,21 +6037,21 @@ func (x *DeploymentStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) if r.TryDecodeAsNil() { x.ObservedGeneration = 0 } else { - yyv19 := &x.ObservedGeneration - yym20 := z.DecBinary() - _ = yym20 + yyv21 := &x.ObservedGeneration + yym22 := z.DecBinary() + _ = yym22 if false { } else { - *((*int64)(yyv19)) = int64(r.DecodeInt(64)) + *((*int64)(yyv21)) = int64(r.DecodeInt(64)) } } - yyj18++ - if yyhl18 { - yyb18 = yyj18 > l + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l } else { - yyb18 = r.CheckBreak() + yyb20 = r.CheckBreak() } - if yyb18 { + if yyb20 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6007,29 +6059,7 @@ func (x *DeploymentStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) if r.TryDecodeAsNil() { x.Replicas = 0 } else { - yyv21 := &x.Replicas - yym22 := z.DecBinary() - _ = yym22 - if false { - } else { - *((*int32)(yyv21)) = int32(r.DecodeInt(32)) - } - } - yyj18++ - if yyhl18 { - yyb18 = yyj18 > l - } else { - yyb18 = r.CheckBreak() - } - if yyb18 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.UpdatedReplicas = 0 - } else { - yyv23 := &x.UpdatedReplicas + yyv23 := &x.Replicas yym24 := z.DecBinary() _ = yym24 if false { @@ -6037,21 +6067,21 @@ func (x *DeploymentStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) *((*int32)(yyv23)) = int32(r.DecodeInt(32)) } } - yyj18++ - if yyhl18 { - yyb18 = yyj18 > l + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l } else { - yyb18 = r.CheckBreak() + yyb20 = r.CheckBreak() } - if yyb18 { + if yyb20 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } z.DecSendContainerState(codecSelfer_containerArrayElem1234) if r.TryDecodeAsNil() { - x.ReadyReplicas = 0 + x.UpdatedReplicas = 0 } else { - yyv25 := &x.ReadyReplicas + yyv25 := &x.UpdatedReplicas yym26 := z.DecBinary() _ = yym26 if false { @@ -6059,21 +6089,21 @@ func (x *DeploymentStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) *((*int32)(yyv25)) = int32(r.DecodeInt(32)) } } - yyj18++ - if yyhl18 { - yyb18 = yyj18 > l + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l } else { - yyb18 = r.CheckBreak() + yyb20 = r.CheckBreak() } - if yyb18 { + if yyb20 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } z.DecSendContainerState(codecSelfer_containerArrayElem1234) if r.TryDecodeAsNil() { - x.AvailableReplicas = 0 + x.ReadyReplicas = 0 } else { - yyv27 := &x.AvailableReplicas + yyv27 := &x.ReadyReplicas yym28 := z.DecBinary() _ = yym28 if false { @@ -6081,21 +6111,21 @@ func (x *DeploymentStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) *((*int32)(yyv27)) = int32(r.DecodeInt(32)) } } - yyj18++ - if yyhl18 { - yyb18 = yyj18 > l + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l } else { - yyb18 = r.CheckBreak() + yyb20 = r.CheckBreak() } - if yyb18 { + if yyb20 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } z.DecSendContainerState(codecSelfer_containerArrayElem1234) if r.TryDecodeAsNil() { - x.UnavailableReplicas = 0 + x.AvailableReplicas = 0 } else { - yyv29 := &x.UnavailableReplicas + yyv29 := &x.AvailableReplicas yym30 := z.DecBinary() _ = yym30 if false { @@ -6103,13 +6133,35 @@ func (x *DeploymentStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) *((*int32)(yyv29)) = int32(r.DecodeInt(32)) } } - yyj18++ - if yyhl18 { - yyb18 = yyj18 > l + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l } else { - yyb18 = r.CheckBreak() + yyb20 = r.CheckBreak() } - if yyb18 { + if yyb20 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.UnavailableReplicas = 0 + } else { + yyv31 := &x.UnavailableReplicas + yym32 := z.DecBinary() + _ = yym32 + if false { + } else { + *((*int32)(yyv31)) = int32(r.DecodeInt(32)) + } + } + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l + } else { + yyb20 = r.CheckBreak() + } + if yyb20 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6117,26 +6169,52 @@ func (x *DeploymentStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) if r.TryDecodeAsNil() { x.Conditions = nil } else { - yyv31 := &x.Conditions - yym32 := z.DecBinary() - _ = yym32 + yyv33 := &x.Conditions + yym34 := z.DecBinary() + _ = yym34 if false { } else { - h.decSliceDeploymentCondition((*[]DeploymentCondition)(yyv31), d) + h.decSliceDeploymentCondition((*[]DeploymentCondition)(yyv33), d) + } + } + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l + } else { + yyb20 = r.CheckBreak() + } + if yyb20 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.CollisionCount != nil { + x.CollisionCount = nil + } + } else { + if x.CollisionCount == nil { + x.CollisionCount = new(int64) + } + yym36 := z.DecBinary() + _ = yym36 + if false { + } else { + *((*int64)(x.CollisionCount)) = int64(r.DecodeInt(64)) } } for { - yyj18++ - if yyhl18 { - yyb18 = yyj18 > l + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l } else { - yyb18 = r.CheckBreak() + yyb20 = r.CheckBreak() } - if yyb18 { + if yyb20 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj18-1, "") + z.DecStructFieldNotFound(yyj20-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -7474,16 +7552,17 @@ func (x *DaemonSetSpec) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [5]bool + var yyq2 [6]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[0] = x.Selector != nil yyq2[2] = true yyq2[3] = x.MinReadySeconds != 0 yyq2[4] = x.TemplateGeneration != 0 + yyq2[5] = x.RevisionHistoryLimit != nil var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(5) + r.EncodeArrayStart(6) } else { yynn2 = 1 for _, b := range yyq2 { @@ -7607,6 +7686,41 @@ func (x *DaemonSetSpec) CodecEncodeSelf(e *codec1978.Encoder) { } } } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[5] { + if x.RevisionHistoryLimit == nil { + r.EncodeNil() + } else { + yy23 := *x.RevisionHistoryLimit + yym24 := z.EncBinary() + _ = yym24 + if false { + } else { + r.EncodeInt(int64(yy23)) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[5] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("revisionHistoryLimit")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.RevisionHistoryLimit == nil { + r.EncodeNil() + } else { + yy25 := *x.RevisionHistoryLimit + yym26 := z.EncBinary() + _ = yym26 + if false { + } else { + r.EncodeInt(int64(yy25)) + } + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -7723,6 +7837,22 @@ func (x *DaemonSetSpec) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { *((*int64)(yyv10)) = int64(r.DecodeInt(64)) } } + case "revisionHistoryLimit": + if r.TryDecodeAsNil() { + if x.RevisionHistoryLimit != nil { + x.RevisionHistoryLimit = nil + } + } else { + if x.RevisionHistoryLimit == nil { + x.RevisionHistoryLimit = new(int32) + } + yym13 := z.DecBinary() + _ = yym13 + if false { + } else { + *((*int32)(x.RevisionHistoryLimit)) = int32(r.DecodeInt(32)) + } + } default: z.DecStructFieldNotFound(-1, yys3) } // end switch yys3 @@ -7734,16 +7864,16 @@ func (x *DaemonSetSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj12 int - var yyb12 bool - var yyhl12 bool = l >= 0 - yyj12++ - if yyhl12 { - yyb12 = yyj12 > l + var yyj14 int + var yyb14 bool + var yyhl14 bool = l >= 0 + yyj14++ + if yyhl14 { + yyb14 = yyj14 > l } else { - yyb12 = r.CheckBreak() + yyb14 = r.CheckBreak() } - if yyb12 { + if yyb14 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -7756,21 +7886,21 @@ func (x *DaemonSetSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.Selector == nil { x.Selector = new(pkg1_v1.LabelSelector) } - yym14 := z.DecBinary() - _ = yym14 + yym16 := z.DecBinary() + _ = yym16 if false { } else if z.HasExtensions() && z.DecExt(x.Selector) { } else { z.DecFallback(x.Selector, false) } } - yyj12++ - if yyhl12 { - yyb12 = yyj12 > l + yyj14++ + if yyhl14 { + yyb14 = yyj14 > l } else { - yyb12 = r.CheckBreak() + yyb14 = r.CheckBreak() } - if yyb12 { + if yyb14 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -7778,16 +7908,16 @@ func (x *DaemonSetSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.Template = pkg4_v1.PodTemplateSpec{} } else { - yyv15 := &x.Template - yyv15.CodecDecodeSelf(d) + yyv17 := &x.Template + yyv17.CodecDecodeSelf(d) } - yyj12++ - if yyhl12 { - yyb12 = yyj12 > l + yyj14++ + if yyhl14 { + yyb14 = yyj14 > l } else { - yyb12 = r.CheckBreak() + yyb14 = r.CheckBreak() } - if yyb12 { + if yyb14 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -7795,16 +7925,16 @@ func (x *DaemonSetSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.UpdateStrategy = DaemonSetUpdateStrategy{} } else { - yyv16 := &x.UpdateStrategy - yyv16.CodecDecodeSelf(d) + yyv18 := &x.UpdateStrategy + yyv18.CodecDecodeSelf(d) } - yyj12++ - if yyhl12 { - yyb12 = yyj12 > l + yyj14++ + if yyhl14 { + yyb14 = yyj14 > l } else { - yyb12 = r.CheckBreak() + yyb14 = r.CheckBreak() } - if yyb12 { + if yyb14 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -7812,21 +7942,21 @@ func (x *DaemonSetSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.MinReadySeconds = 0 } else { - yyv17 := &x.MinReadySeconds - yym18 := z.DecBinary() - _ = yym18 + yyv19 := &x.MinReadySeconds + yym20 := z.DecBinary() + _ = yym20 if false { } else { - *((*int32)(yyv17)) = int32(r.DecodeInt(32)) + *((*int32)(yyv19)) = int32(r.DecodeInt(32)) } } - yyj12++ - if yyhl12 { - yyb12 = yyj12 > l + yyj14++ + if yyhl14 { + yyb14 = yyj14 > l } else { - yyb12 = r.CheckBreak() + yyb14 = r.CheckBreak() } - if yyb12 { + if yyb14 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -7834,26 +7964,52 @@ func (x *DaemonSetSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.TemplateGeneration = 0 } else { - yyv19 := &x.TemplateGeneration - yym20 := z.DecBinary() - _ = yym20 + yyv21 := &x.TemplateGeneration + yym22 := z.DecBinary() + _ = yym22 if false { } else { - *((*int64)(yyv19)) = int64(r.DecodeInt(64)) + *((*int64)(yyv21)) = int64(r.DecodeInt(64)) + } + } + yyj14++ + if yyhl14 { + yyb14 = yyj14 > l + } else { + yyb14 = r.CheckBreak() + } + if yyb14 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.RevisionHistoryLimit != nil { + x.RevisionHistoryLimit = nil + } + } else { + if x.RevisionHistoryLimit == nil { + x.RevisionHistoryLimit = new(int32) + } + yym24 := z.DecBinary() + _ = yym24 + if false { + } else { + *((*int32)(x.RevisionHistoryLimit)) = int32(r.DecodeInt(32)) } } for { - yyj12++ - if yyhl12 { - yyb12 = yyj12 > l + yyj14++ + if yyhl14 { + yyb14 = yyj14 > l } else { - yyb12 = r.CheckBreak() + yyb14 = r.CheckBreak() } - if yyb12 { + if yyb14 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj12-1, "") + z.DecStructFieldNotFound(yyj14-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -7872,16 +8028,17 @@ func (x *DaemonSetStatus) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [8]bool + var yyq2 [9]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[4] = x.ObservedGeneration != 0 yyq2[5] = x.UpdatedNumberScheduled != 0 yyq2[6] = x.NumberAvailable != 0 yyq2[7] = x.NumberUnavailable != 0 + yyq2[8] = x.CollisionCount != nil var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(8) + r.EncodeArrayStart(9) } else { yynn2 = 4 for _, b := range yyq2 { @@ -8068,6 +8225,41 @@ func (x *DaemonSetStatus) CodecEncodeSelf(e *codec1978.Encoder) { } } } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[8] { + if x.CollisionCount == nil { + r.EncodeNil() + } else { + yy28 := *x.CollisionCount + yym29 := z.EncBinary() + _ = yym29 + if false { + } else { + r.EncodeInt(int64(yy28)) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[8] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("collisionCount")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.CollisionCount == nil { + r.EncodeNil() + } else { + yy30 := *x.CollisionCount + yym31 := z.EncBinary() + _ = yym31 + if false { + } else { + r.EncodeInt(int64(yy30)) + } + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -8225,6 +8417,22 @@ func (x *DaemonSetStatus) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { *((*int32)(yyv18)) = int32(r.DecodeInt(32)) } } + case "collisionCount": + if r.TryDecodeAsNil() { + if x.CollisionCount != nil { + x.CollisionCount = nil + } + } else { + if x.CollisionCount == nil { + x.CollisionCount = new(int64) + } + yym21 := z.DecBinary() + _ = yym21 + if false { + } else { + *((*int64)(x.CollisionCount)) = int64(r.DecodeInt(64)) + } + } default: z.DecStructFieldNotFound(-1, yys3) } // end switch yys3 @@ -8236,16 +8444,16 @@ func (x *DaemonSetStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj20 int - var yyb20 bool - var yyhl20 bool = l >= 0 - yyj20++ - if yyhl20 { - yyb20 = yyj20 > l + var yyj22 int + var yyb22 bool + var yyhl22 bool = l >= 0 + yyj22++ + if yyhl22 { + yyb22 = yyj22 > l } else { - yyb20 = r.CheckBreak() + yyb22 = r.CheckBreak() } - if yyb20 { + if yyb22 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8253,29 +8461,7 @@ func (x *DaemonSetStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) if r.TryDecodeAsNil() { x.CurrentNumberScheduled = 0 } else { - yyv21 := &x.CurrentNumberScheduled - yym22 := z.DecBinary() - _ = yym22 - if false { - } else { - *((*int32)(yyv21)) = int32(r.DecodeInt(32)) - } - } - yyj20++ - if yyhl20 { - yyb20 = yyj20 > l - } else { - yyb20 = r.CheckBreak() - } - if yyb20 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.NumberMisscheduled = 0 - } else { - yyv23 := &x.NumberMisscheduled + yyv23 := &x.CurrentNumberScheduled yym24 := z.DecBinary() _ = yym24 if false { @@ -8283,21 +8469,21 @@ func (x *DaemonSetStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) *((*int32)(yyv23)) = int32(r.DecodeInt(32)) } } - yyj20++ - if yyhl20 { - yyb20 = yyj20 > l + yyj22++ + if yyhl22 { + yyb22 = yyj22 > l } else { - yyb20 = r.CheckBreak() + yyb22 = r.CheckBreak() } - if yyb20 { + if yyb22 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } z.DecSendContainerState(codecSelfer_containerArrayElem1234) if r.TryDecodeAsNil() { - x.DesiredNumberScheduled = 0 + x.NumberMisscheduled = 0 } else { - yyv25 := &x.DesiredNumberScheduled + yyv25 := &x.NumberMisscheduled yym26 := z.DecBinary() _ = yym26 if false { @@ -8305,21 +8491,21 @@ func (x *DaemonSetStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) *((*int32)(yyv25)) = int32(r.DecodeInt(32)) } } - yyj20++ - if yyhl20 { - yyb20 = yyj20 > l + yyj22++ + if yyhl22 { + yyb22 = yyj22 > l } else { - yyb20 = r.CheckBreak() + yyb22 = r.CheckBreak() } - if yyb20 { + if yyb22 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } z.DecSendContainerState(codecSelfer_containerArrayElem1234) if r.TryDecodeAsNil() { - x.NumberReady = 0 + x.DesiredNumberScheduled = 0 } else { - yyv27 := &x.NumberReady + yyv27 := &x.DesiredNumberScheduled yym28 := z.DecBinary() _ = yym28 if false { @@ -8327,13 +8513,35 @@ func (x *DaemonSetStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) *((*int32)(yyv27)) = int32(r.DecodeInt(32)) } } - yyj20++ - if yyhl20 { - yyb20 = yyj20 > l + yyj22++ + if yyhl22 { + yyb22 = yyj22 > l } else { - yyb20 = r.CheckBreak() + yyb22 = r.CheckBreak() } - if yyb20 { + if yyb22 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.NumberReady = 0 + } else { + yyv29 := &x.NumberReady + yym30 := z.DecBinary() + _ = yym30 + if false { + } else { + *((*int32)(yyv29)) = int32(r.DecodeInt(32)) + } + } + yyj22++ + if yyhl22 { + yyb22 = yyj22 > l + } else { + yyb22 = r.CheckBreak() + } + if yyb22 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8341,21 +8549,21 @@ func (x *DaemonSetStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) if r.TryDecodeAsNil() { x.ObservedGeneration = 0 } else { - yyv29 := &x.ObservedGeneration - yym30 := z.DecBinary() - _ = yym30 + yyv31 := &x.ObservedGeneration + yym32 := z.DecBinary() + _ = yym32 if false { } else { - *((*int64)(yyv29)) = int64(r.DecodeInt(64)) + *((*int64)(yyv31)) = int64(r.DecodeInt(64)) } } - yyj20++ - if yyhl20 { - yyb20 = yyj20 > l + yyj22++ + if yyhl22 { + yyb22 = yyj22 > l } else { - yyb20 = r.CheckBreak() + yyb22 = r.CheckBreak() } - if yyb20 { + if yyb22 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8363,29 +8571,7 @@ func (x *DaemonSetStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) if r.TryDecodeAsNil() { x.UpdatedNumberScheduled = 0 } else { - yyv31 := &x.UpdatedNumberScheduled - yym32 := z.DecBinary() - _ = yym32 - if false { - } else { - *((*int32)(yyv31)) = int32(r.DecodeInt(32)) - } - } - yyj20++ - if yyhl20 { - yyb20 = yyj20 > l - } else { - yyb20 = r.CheckBreak() - } - if yyb20 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.NumberAvailable = 0 - } else { - yyv33 := &x.NumberAvailable + yyv33 := &x.UpdatedNumberScheduled yym34 := z.DecBinary() _ = yym34 if false { @@ -8393,21 +8579,21 @@ func (x *DaemonSetStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) *((*int32)(yyv33)) = int32(r.DecodeInt(32)) } } - yyj20++ - if yyhl20 { - yyb20 = yyj20 > l + yyj22++ + if yyhl22 { + yyb22 = yyj22 > l } else { - yyb20 = r.CheckBreak() + yyb22 = r.CheckBreak() } - if yyb20 { + if yyb22 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } z.DecSendContainerState(codecSelfer_containerArrayElem1234) if r.TryDecodeAsNil() { - x.NumberUnavailable = 0 + x.NumberAvailable = 0 } else { - yyv35 := &x.NumberUnavailable + yyv35 := &x.NumberAvailable yym36 := z.DecBinary() _ = yym36 if false { @@ -8415,18 +8601,66 @@ func (x *DaemonSetStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) *((*int32)(yyv35)) = int32(r.DecodeInt(32)) } } - for { - yyj20++ - if yyhl20 { - yyb20 = yyj20 > l + yyj22++ + if yyhl22 { + yyb22 = yyj22 > l + } else { + yyb22 = r.CheckBreak() + } + if yyb22 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.NumberUnavailable = 0 + } else { + yyv37 := &x.NumberUnavailable + yym38 := z.DecBinary() + _ = yym38 + if false { } else { - yyb20 = r.CheckBreak() + *((*int32)(yyv37)) = int32(r.DecodeInt(32)) } - if yyb20 { + } + yyj22++ + if yyhl22 { + yyb22 = yyj22 > l + } else { + yyb22 = r.CheckBreak() + } + if yyb22 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.CollisionCount != nil { + x.CollisionCount = nil + } + } else { + if x.CollisionCount == nil { + x.CollisionCount = new(int64) + } + yym40 := z.DecBinary() + _ = yym40 + if false { + } else { + *((*int64)(x.CollisionCount)) = int64(r.DecodeInt(64)) + } + } + for { + yyj22++ + if yyhl22 { + yyb22 = yyj22 > l + } else { + yyb22 = r.CheckBreak() + } + if yyb22 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj20-1, "") + z.DecStructFieldNotFound(yyj22-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -14517,7 +14751,7 @@ func (x *PodSecurityPolicySpec) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [14]bool + var yyq2 [15]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[0] = x.Privileged != false @@ -14530,9 +14764,10 @@ func (x *PodSecurityPolicySpec) CodecEncodeSelf(e *codec1978.Encoder) { yyq2[7] = x.HostPID != false yyq2[8] = x.HostIPC != false yyq2[13] = x.ReadOnlyRootFilesystem != false + yyq2[14] = len(x.AllowedHostPaths) != 0 var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(14) + r.EncodeArrayStart(15) } else { yynn2 = 4 for _, b := range yyq2 { @@ -14877,6 +15112,39 @@ func (x *PodSecurityPolicySpec) CodecEncodeSelf(e *codec1978.Encoder) { } } } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[14] { + if x.AllowedHostPaths == nil { + r.EncodeNil() + } else { + yym54 := z.EncBinary() + _ = yym54 + if false { + } else { + z.F.EncSliceStringV(x.AllowedHostPaths, false, e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[14] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("allowedHostPaths")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.AllowedHostPaths == nil { + r.EncodeNil() + } else { + yym55 := z.EncBinary() + _ = yym55 + if false { + } else { + z.F.EncSliceStringV(x.AllowedHostPaths, false, e) + } + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -15086,6 +15354,18 @@ func (x *PodSecurityPolicySpec) codecDecodeSelfFromMap(l int, d *codec1978.Decod *((*bool)(yyv26)) = r.DecodeBool() } } + case "allowedHostPaths": + if r.TryDecodeAsNil() { + x.AllowedHostPaths = nil + } else { + yyv28 := &x.AllowedHostPaths + yym29 := z.DecBinary() + _ = yym29 + if false { + } else { + z.F.DecSliceStringX(yyv28, false, d) + } + } default: z.DecStructFieldNotFound(-1, yys3) } // end switch yys3 @@ -15097,16 +15377,16 @@ func (x *PodSecurityPolicySpec) codecDecodeSelfFromArray(l int, d *codec1978.Dec var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj28 int - var yyb28 bool - var yyhl28 bool = l >= 0 - yyj28++ - if yyhl28 { - yyb28 = yyj28 > l + var yyj30 int + var yyb30 bool + var yyhl30 bool = l >= 0 + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb28 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb28 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -15114,21 +15394,21 @@ func (x *PodSecurityPolicySpec) codecDecodeSelfFromArray(l int, d *codec1978.Dec if r.TryDecodeAsNil() { x.Privileged = false } else { - yyv29 := &x.Privileged - yym30 := z.DecBinary() - _ = yym30 + yyv31 := &x.Privileged + yym32 := z.DecBinary() + _ = yym32 if false { } else { - *((*bool)(yyv29)) = r.DecodeBool() + *((*bool)(yyv31)) = r.DecodeBool() } } - yyj28++ - if yyhl28 { - yyb28 = yyj28 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb28 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb28 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -15136,29 +15416,7 @@ func (x *PodSecurityPolicySpec) codecDecodeSelfFromArray(l int, d *codec1978.Dec if r.TryDecodeAsNil() { x.DefaultAddCapabilities = nil } else { - yyv31 := &x.DefaultAddCapabilities - yym32 := z.DecBinary() - _ = yym32 - if false { - } else { - h.decSlicev1_Capability((*[]pkg4_v1.Capability)(yyv31), d) - } - } - yyj28++ - if yyhl28 { - yyb28 = yyj28 > l - } else { - yyb28 = r.CheckBreak() - } - if yyb28 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.RequiredDropCapabilities = nil - } else { - yyv33 := &x.RequiredDropCapabilities + yyv33 := &x.DefaultAddCapabilities yym34 := z.DecBinary() _ = yym34 if false { @@ -15166,21 +15424,21 @@ func (x *PodSecurityPolicySpec) codecDecodeSelfFromArray(l int, d *codec1978.Dec h.decSlicev1_Capability((*[]pkg4_v1.Capability)(yyv33), d) } } - yyj28++ - if yyhl28 { - yyb28 = yyj28 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb28 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb28 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } z.DecSendContainerState(codecSelfer_containerArrayElem1234) if r.TryDecodeAsNil() { - x.AllowedCapabilities = nil + x.RequiredDropCapabilities = nil } else { - yyv35 := &x.AllowedCapabilities + yyv35 := &x.RequiredDropCapabilities yym36 := z.DecBinary() _ = yym36 if false { @@ -15188,13 +15446,35 @@ func (x *PodSecurityPolicySpec) codecDecodeSelfFromArray(l int, d *codec1978.Dec h.decSlicev1_Capability((*[]pkg4_v1.Capability)(yyv35), d) } } - yyj28++ - if yyhl28 { - yyb28 = yyj28 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb28 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb28 { + if yyb30 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.AllowedCapabilities = nil + } else { + yyv37 := &x.AllowedCapabilities + yym38 := z.DecBinary() + _ = yym38 + if false { + } else { + h.decSlicev1_Capability((*[]pkg4_v1.Capability)(yyv37), d) + } + } + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l + } else { + yyb30 = r.CheckBreak() + } + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -15202,21 +15482,21 @@ func (x *PodSecurityPolicySpec) codecDecodeSelfFromArray(l int, d *codec1978.Dec if r.TryDecodeAsNil() { x.Volumes = nil } else { - yyv37 := &x.Volumes - yym38 := z.DecBinary() - _ = yym38 + yyv39 := &x.Volumes + yym40 := z.DecBinary() + _ = yym40 if false { } else { - h.decSliceFSType((*[]FSType)(yyv37), d) + h.decSliceFSType((*[]FSType)(yyv39), d) } } - yyj28++ - if yyhl28 { - yyb28 = yyj28 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb28 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb28 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -15224,21 +15504,21 @@ func (x *PodSecurityPolicySpec) codecDecodeSelfFromArray(l int, d *codec1978.Dec if r.TryDecodeAsNil() { x.HostNetwork = false } else { - yyv39 := &x.HostNetwork - yym40 := z.DecBinary() - _ = yym40 + yyv41 := &x.HostNetwork + yym42 := z.DecBinary() + _ = yym42 if false { } else { - *((*bool)(yyv39)) = r.DecodeBool() + *((*bool)(yyv41)) = r.DecodeBool() } } - yyj28++ - if yyhl28 { - yyb28 = yyj28 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb28 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb28 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -15246,21 +15526,21 @@ func (x *PodSecurityPolicySpec) codecDecodeSelfFromArray(l int, d *codec1978.Dec if r.TryDecodeAsNil() { x.HostPorts = nil } else { - yyv41 := &x.HostPorts - yym42 := z.DecBinary() - _ = yym42 + yyv43 := &x.HostPorts + yym44 := z.DecBinary() + _ = yym44 if false { } else { - h.decSliceHostPortRange((*[]HostPortRange)(yyv41), d) + h.decSliceHostPortRange((*[]HostPortRange)(yyv43), d) } } - yyj28++ - if yyhl28 { - yyb28 = yyj28 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb28 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb28 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -15268,29 +15548,7 @@ func (x *PodSecurityPolicySpec) codecDecodeSelfFromArray(l int, d *codec1978.Dec if r.TryDecodeAsNil() { x.HostPID = false } else { - yyv43 := &x.HostPID - yym44 := z.DecBinary() - _ = yym44 - if false { - } else { - *((*bool)(yyv43)) = r.DecodeBool() - } - } - yyj28++ - if yyhl28 { - yyb28 = yyj28 > l - } else { - yyb28 = r.CheckBreak() - } - if yyb28 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.HostIPC = false - } else { - yyv45 := &x.HostIPC + yyv45 := &x.HostPID yym46 := z.DecBinary() _ = yym46 if false { @@ -15298,13 +15556,35 @@ func (x *PodSecurityPolicySpec) codecDecodeSelfFromArray(l int, d *codec1978.Dec *((*bool)(yyv45)) = r.DecodeBool() } } - yyj28++ - if yyhl28 { - yyb28 = yyj28 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb28 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb28 { + if yyb30 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.HostIPC = false + } else { + yyv47 := &x.HostIPC + yym48 := z.DecBinary() + _ = yym48 + if false { + } else { + *((*bool)(yyv47)) = r.DecodeBool() + } + } + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l + } else { + yyb30 = r.CheckBreak() + } + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -15312,16 +15592,16 @@ func (x *PodSecurityPolicySpec) codecDecodeSelfFromArray(l int, d *codec1978.Dec if r.TryDecodeAsNil() { x.SELinux = SELinuxStrategyOptions{} } else { - yyv47 := &x.SELinux - yyv47.CodecDecodeSelf(d) + yyv49 := &x.SELinux + yyv49.CodecDecodeSelf(d) } - yyj28++ - if yyhl28 { - yyb28 = yyj28 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb28 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb28 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -15329,16 +15609,16 @@ func (x *PodSecurityPolicySpec) codecDecodeSelfFromArray(l int, d *codec1978.Dec if r.TryDecodeAsNil() { x.RunAsUser = RunAsUserStrategyOptions{} } else { - yyv48 := &x.RunAsUser - yyv48.CodecDecodeSelf(d) + yyv50 := &x.RunAsUser + yyv50.CodecDecodeSelf(d) } - yyj28++ - if yyhl28 { - yyb28 = yyj28 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb28 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb28 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -15346,16 +15626,16 @@ func (x *PodSecurityPolicySpec) codecDecodeSelfFromArray(l int, d *codec1978.Dec if r.TryDecodeAsNil() { x.SupplementalGroups = SupplementalGroupsStrategyOptions{} } else { - yyv49 := &x.SupplementalGroups - yyv49.CodecDecodeSelf(d) + yyv51 := &x.SupplementalGroups + yyv51.CodecDecodeSelf(d) } - yyj28++ - if yyhl28 { - yyb28 = yyj28 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb28 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb28 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -15363,16 +15643,16 @@ func (x *PodSecurityPolicySpec) codecDecodeSelfFromArray(l int, d *codec1978.Dec if r.TryDecodeAsNil() { x.FSGroup = FSGroupStrategyOptions{} } else { - yyv50 := &x.FSGroup - yyv50.CodecDecodeSelf(d) + yyv52 := &x.FSGroup + yyv52.CodecDecodeSelf(d) } - yyj28++ - if yyhl28 { - yyb28 = yyj28 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb28 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb28 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -15380,26 +15660,48 @@ func (x *PodSecurityPolicySpec) codecDecodeSelfFromArray(l int, d *codec1978.Dec if r.TryDecodeAsNil() { x.ReadOnlyRootFilesystem = false } else { - yyv51 := &x.ReadOnlyRootFilesystem - yym52 := z.DecBinary() - _ = yym52 + yyv53 := &x.ReadOnlyRootFilesystem + yym54 := z.DecBinary() + _ = yym54 if false { } else { - *((*bool)(yyv51)) = r.DecodeBool() + *((*bool)(yyv53)) = r.DecodeBool() + } + } + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l + } else { + yyb30 = r.CheckBreak() + } + if yyb30 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.AllowedHostPaths = nil + } else { + yyv55 := &x.AllowedHostPaths + yym56 := z.DecBinary() + _ = yym56 + if false { + } else { + z.F.DecSliceStringX(yyv55, false, d) } } for { - yyj28++ - if yyhl28 { - yyb28 = yyj28 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb28 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb28 { + if yyb30 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj28-1, "") + z.DecStructFieldNotFound(yyj30-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -19652,7 +19954,7 @@ func (x codecSelfer1234) decSliceDeployment(v *[]Deployment, d *codec1978.Decode yyrg1 := len(yyv1) > 0 yyv21 := yyv1 - yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 960) + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 968) if yyrt1 { if yyrl1 <= cap(yyv1) { yyv1 = yyv1[:yyrl1] @@ -19771,7 +20073,7 @@ func (x codecSelfer1234) decSliceDaemonSet(v *[]DaemonSet, d *codec1978.Decoder) yyrg1 := len(yyv1) > 0 yyv21 := yyv1 - yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 912) + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 928) if yyrt1 { if yyrl1 <= cap(yyv1) { yyv1 = yyv1[:yyrl1] @@ -21188,7 +21490,7 @@ func (x codecSelfer1234) decSlicePodSecurityPolicy(v *[]PodSecurityPolicy, d *co yyrg1 := len(yyv1) > 0 yyv21 := yyv1 - yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 560) + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 584) if yyrt1 { if yyrl1 <= cap(yyv1) { yyv1 = yyv1[:yyrl1] diff --git a/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/types.go b/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/types.go index 0b950e35..ffaabadb 100644 --- a/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/types.go +++ b/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/types.go @@ -21,6 +21,7 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/util/intstr" "k8s.io/client-go/pkg/api/v1" + appsv1beta1 "k8s.io/client-go/pkg/apis/apps/v1beta1" ) // describes the attributes of a scale subresource @@ -55,15 +56,15 @@ type ScaleStatus struct { // represents a scaling request for a resource. type Scale struct { metav1.TypeMeta `json:",inline"` - // Standard object metadata; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata. + // Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` - // defines the behavior of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. + // defines the behavior of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. // +optional Spec ScaleSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` - // current status of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. Read-only. + // current status of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. Read-only. // +optional Status ScaleStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } @@ -228,7 +229,7 @@ type DeploymentRollback struct { } type RollbackConfig struct { - // The revision to rollback to. If set to 0, rollbck to the last revision. + // The revision to rollback to. If set to 0, rollback to the last revision. // +optional Revision int64 `json:"revision,omitempty" protobuf:"varint,1,opt,name=revision"` } @@ -325,6 +326,12 @@ type DeploymentStatus struct { // +patchMergeKey=type // +patchStrategy=merge Conditions []DeploymentCondition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,6,rep,name=conditions"` + + // Count of hash collisions for the Deployment. The Deployment controller uses this + // field as a collision avoidance mechanism when it needs to create the name for the + // newest ReplicaSet. + // +optional + CollisionCount *int64 `json:"collisionCount,omitempty" protobuf:"varint,8,opt,name=collisionCount"` } type DeploymentConditionType string @@ -380,7 +387,7 @@ type DaemonSetUpdateStrategy struct { // Rolling update config params. Present only if type = "RollingUpdate". //--- // TODO: Update this to follow our convention for oneOf, whatever we decide it - // to be. Same as DeploymentStrategy.RollingUpdate. + // to be. Same as Deployment `strategy.rollingUpdate`. // See https://github.com/kubernetes/kubernetes/issues/35345 // +optional RollingUpdate *RollingUpdateDaemonSet `json:"rollingUpdate,omitempty" protobuf:"bytes,2,opt,name=rollingUpdate"` @@ -443,10 +450,17 @@ type DaemonSetSpec struct { // +optional MinReadySeconds int32 `json:"minReadySeconds,omitempty" protobuf:"varint,4,opt,name=minReadySeconds"` + // DEPRECATED. // A sequence number representing a specific generation of the template. // Populated by the system. It can be set only during the creation. // +optional TemplateGeneration int64 `json:"templateGeneration,omitempty" protobuf:"varint,5,opt,name=templateGeneration"` + + // The number of old history to retain to allow rollback. + // This is a pointer to distinguish between explicit zero and not specified. + // Defaults to 10. + // +optional + RevisionHistoryLimit *int32 `json:"revisionHistoryLimit,omitempty" protobuf:"varint,6,opt,name=revisionHistoryLimit"` } // DaemonSetStatus represents the current status of a daemon set. @@ -489,6 +503,12 @@ type DaemonSetStatus struct { // (ready for at least spec.minReadySeconds) // +optional NumberUnavailable int32 `json:"numberUnavailable,omitempty" protobuf:"varint,8,opt,name=numberUnavailable"` + + // Count of hash collisions for the DaemonSet. The DaemonSet controller + // uses this field as a collision avoidance mechanism when it needs to + // create the name for the newest ControllerRevision. + // +optional + CollisionCount *int64 `json:"collisionCount,omitempty" protobuf:"varint,9,opt,name=collisionCount"` } // +genclient=true @@ -497,12 +517,12 @@ type DaemonSetStatus struct { type DaemonSet struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // The desired behavior of this daemon set. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec DaemonSetSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` @@ -510,23 +530,29 @@ type DaemonSet struct { // out of date by some window of time. // Populated by the system. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status DaemonSetStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } const ( + // DEPRECATED: DefaultDaemonSetUniqueLabelKey is used instead. // DaemonSetTemplateGenerationKey is the key of the labels that is added // to daemon set pods to distinguish between old and new pod templates // during DaemonSet template update. DaemonSetTemplateGenerationKey string = "pod-template-generation" + + // DefaultDaemonSetUniqueLabelKey is the default label key that is added + // to existing DaemonSet pods to distinguish between old and new + // DaemonSet pods during DaemonSet template updates. + DefaultDaemonSetUniqueLabelKey = appsv1beta1.ControllerRevisionHashLabelKey ) // DaemonSetList is a collection of daemon sets. type DaemonSetList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -538,7 +564,7 @@ type DaemonSetList struct { type ThirdPartyResourceDataList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -555,17 +581,17 @@ type ThirdPartyResourceDataList struct { type Ingress struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Spec is the desired state of the Ingress. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec IngressSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` // Status is the current state of the Ingress. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status IngressStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } @@ -574,7 +600,7 @@ type Ingress struct { type IngressList struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -720,12 +746,12 @@ type ReplicaSet struct { // If the Labels of a ReplicaSet are empty, they are defaulted to // be the same as the Pod(s) that the ReplicaSet manages. - // Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata + // Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Spec defines the specification of the desired behavior of the ReplicaSet. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec ReplicaSetSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` @@ -733,7 +759,7 @@ type ReplicaSet struct { // This data may be out of date by some window of time. // Populated by the system. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status ReplicaSetStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } @@ -742,7 +768,7 @@ type ReplicaSet struct { type ReplicaSetList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -844,7 +870,7 @@ type ReplicaSetCondition struct { type PodSecurityPolicy struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -903,6 +929,10 @@ type PodSecurityPolicySpec struct { // will not be forced to. // +optional ReadOnlyRootFilesystem bool `json:"readOnlyRootFilesystem,omitempty" protobuf:"varint,14,opt,name=readOnlyRootFilesystem"` + // AllowedHostPaths is a white list of allowed host path prefixes. Empty indicates that all + // host paths may be used. + // +optional + AllowedHostPaths []string `json:"allowedHostPaths,omitempty" protobuf:"bytes,15,opt,name=allowedHostPaths"` } // FS Type gives strong typing to different file systems that are used by volumes. @@ -947,7 +977,7 @@ type SELinuxStrategyOptions struct { // type is the strategy that will dictate the allowable labels that may be set. Rule SELinuxStrategy `json:"rule" protobuf:"bytes,1,opt,name=rule,casttype=SELinuxStrategy"` // seLinuxOptions required to run as; required for MustRunAs - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/security_context.md + // More info: https://git.k8s.io/community/contributors/design-proposals/security_context.md // +optional SELinuxOptions *v1.SELinuxOptions `json:"seLinuxOptions,omitempty" protobuf:"bytes,2,opt,name=seLinuxOptions"` } @@ -1041,7 +1071,7 @@ const ( type PodSecurityPolicyList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -1049,10 +1079,11 @@ type PodSecurityPolicyList struct { Items []PodSecurityPolicy `json:"items" protobuf:"bytes,2,rep,name=items"` } +// NetworkPolicy describes what network traffic is allowed for a set of Pods type NetworkPolicy struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -1070,13 +1101,12 @@ type NetworkPolicySpec struct { PodSelector metav1.LabelSelector `json:"podSelector" protobuf:"bytes,1,opt,name=podSelector"` // List of ingress rules to be applied to the selected pods. - // Traffic is allowed to a pod if namespace.networkPolicy.ingress.isolation is undefined and cluster policy allows it, + // Traffic is allowed to a pod if there are no NetworkPolicies selecting the pod // OR if the traffic source is the pod's local node, // OR if the traffic matches at least one ingress rule across all of the NetworkPolicy // objects whose podSelector matches the pod. - // If this field is empty then this NetworkPolicy does not affect ingress isolation. - // If this field is present and contains at least one rule, this policy allows any traffic - // which matches at least one of the ingress rules in this list. + // If this field is empty then this NetworkPolicy does not allow any traffic + // (and serves solely to ensure that the pods it selects are isolated by default). // +optional Ingress []NetworkPolicyIngressRule `json:"ingress,omitempty" protobuf:"bytes,2,rep,name=ingress"` } @@ -1136,7 +1166,7 @@ type NetworkPolicyPeer struct { type NetworkPolicyList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` diff --git a/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/types_swagger_doc_generated.go b/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/types_swagger_doc_generated.go index 9e9a03ff..cc362674 100644 --- a/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/types_swagger_doc_generated.go +++ b/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/types_swagger_doc_generated.go @@ -57,9 +57,9 @@ func (CustomMetricTarget) SwaggerDoc() map[string]string { var map_DaemonSet = map[string]string{ "": "DaemonSet represents the configuration of a daemon set.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "spec": "The desired behavior of this daemon set. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", - "status": "The current status of this daemon set. This data may be out of date by some window of time. Populated by the system. Read-only. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "The desired behavior of this daemon set. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", + "status": "The current status of this daemon set. This data may be out of date by some window of time. Populated by the system. Read-only. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (DaemonSet) SwaggerDoc() map[string]string { @@ -68,7 +68,7 @@ func (DaemonSet) SwaggerDoc() map[string]string { var map_DaemonSetList = map[string]string{ "": "DaemonSetList is a collection of daemon sets.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "items": "A list of daemon sets.", } @@ -77,12 +77,13 @@ func (DaemonSetList) SwaggerDoc() map[string]string { } var map_DaemonSetSpec = map[string]string{ - "": "DaemonSetSpec is the specification of a daemon set.", - "selector": "A label query over pods that are managed by the daemon set. Must match in order to be controlled. If empty, defaulted to labels on Pod template. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors", - "template": "An object that describes the pod that will be created. The DaemonSet will create exactly one copy of this pod on every node that matches the template's node selector (or on every node if no node selector is specified). More info: https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller#pod-template", - "updateStrategy": "An update strategy to replace existing DaemonSet pods with new pods.", - "minReadySeconds": "The minimum number of seconds for which a newly created DaemonSet pod should be ready without any of its container crashing, for it to be considered available. Defaults to 0 (pod will be considered available as soon as it is ready).", - "templateGeneration": "A sequence number representing a specific generation of the template. Populated by the system. It can be set only during the creation.", + "": "DaemonSetSpec is the specification of a daemon set.", + "selector": "A label query over pods that are managed by the daemon set. Must match in order to be controlled. If empty, defaulted to labels on Pod template. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors", + "template": "An object that describes the pod that will be created. The DaemonSet will create exactly one copy of this pod on every node that matches the template's node selector (or on every node if no node selector is specified). More info: https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller#pod-template", + "updateStrategy": "An update strategy to replace existing DaemonSet pods with new pods.", + "minReadySeconds": "The minimum number of seconds for which a newly created DaemonSet pod should be ready without any of its container crashing, for it to be considered available. Defaults to 0 (pod will be considered available as soon as it is ready).", + "templateGeneration": "DEPRECATED. A sequence number representing a specific generation of the template. Populated by the system. It can be set only during the creation.", + "revisionHistoryLimit": "The number of old history to retain to allow rollback. This is a pointer to distinguish between explicit zero and not specified. Defaults to 10.", } func (DaemonSetSpec) SwaggerDoc() map[string]string { @@ -99,6 +100,7 @@ var map_DaemonSetStatus = map[string]string{ "updatedNumberScheduled": "The total number of nodes that are running updated daemon pod", "numberAvailable": "The number of nodes that should be running the daemon pod and have one or more of the daemon pod running and available (ready for at least spec.minReadySeconds)", "numberUnavailable": "The number of nodes that should be running the daemon pod and have none of the daemon pod running and available (ready for at least spec.minReadySeconds)", + "collisionCount": "Count of hash collisions for the DaemonSet. The DaemonSet controller uses this field as a collision avoidance mechanism when it needs to create the name for the newest ControllerRevision.", } func (DaemonSetStatus) SwaggerDoc() map[string]string { @@ -186,6 +188,7 @@ var map_DeploymentStatus = map[string]string{ "availableReplicas": "Total number of available pods (ready for at least minReadySeconds) targeted by this deployment.", "unavailableReplicas": "Total number of unavailable pods targeted by this deployment.", "conditions": "Represents the latest available observations of a deployment's current state.", + "collisionCount": "Count of hash collisions for the Deployment. The Deployment controller uses this field as a collision avoidance mechanism when it needs to create the name for the newest ReplicaSet.", } func (DeploymentStatus) SwaggerDoc() map[string]string { @@ -253,9 +256,9 @@ func (IDRange) SwaggerDoc() map[string]string { var map_Ingress = map[string]string{ "": "Ingress is a collection of rules that allow inbound connections to reach the endpoints defined by a backend. An Ingress can be configured to give services externally-reachable urls, load balance traffic, terminate SSL, offer name based virtual hosting etc.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "spec": "Spec is the desired state of the Ingress. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", - "status": "Status is the current state of the Ingress. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "Spec is the desired state of the Ingress. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", + "status": "Status is the current state of the Ingress. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (Ingress) SwaggerDoc() map[string]string { @@ -274,7 +277,7 @@ func (IngressBackend) SwaggerDoc() map[string]string { var map_IngressList = map[string]string{ "": "IngressList is a collection of Ingress.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "items": "Items is the list of Ingress.", } @@ -330,7 +333,8 @@ func (IngressTLS) SwaggerDoc() map[string]string { } var map_NetworkPolicy = map[string]string{ - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "": "NetworkPolicy describes what network traffic is allowed for a set of Pods", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "spec": "Specification of the desired behavior for this NetworkPolicy.", } @@ -350,7 +354,7 @@ func (NetworkPolicyIngressRule) SwaggerDoc() map[string]string { var map_NetworkPolicyList = map[string]string{ "": "Network Policy List is a list of NetworkPolicy objects.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "items": "Items is a list of schema objects.", } @@ -378,7 +382,7 @@ func (NetworkPolicyPort) SwaggerDoc() map[string]string { var map_NetworkPolicySpec = map[string]string{ "podSelector": "Selects the pods to which this NetworkPolicy object applies. The array of ingress rules is applied to any pods selected by this field. Multiple network policies can select the same set of pods. In this case, the ingress rules for each are combined additively. This field is NOT optional and follows standard label selector semantics. An empty podSelector matches all pods in this namespace.", - "ingress": "List of ingress rules to be applied to the selected pods. Traffic is allowed to a pod if namespace.networkPolicy.ingress.isolation is undefined and cluster policy allows it, OR if the traffic source is the pod's local node, OR if the traffic matches at least one ingress rule across all of the NetworkPolicy objects whose podSelector matches the pod. If this field is empty then this NetworkPolicy does not affect ingress isolation. If this field is present and contains at least one rule, this policy allows any traffic which matches at least one of the ingress rules in this list.", + "ingress": "List of ingress rules to be applied to the selected pods. Traffic is allowed to a pod if there are no NetworkPolicies selecting the pod OR if the traffic source is the pod's local node, OR if the traffic matches at least one ingress rule across all of the NetworkPolicy objects whose podSelector matches the pod. If this field is empty then this NetworkPolicy does not allow any traffic (and serves solely to ensure that the pods it selects are isolated by default).", } func (NetworkPolicySpec) SwaggerDoc() map[string]string { @@ -387,7 +391,7 @@ func (NetworkPolicySpec) SwaggerDoc() map[string]string { var map_PodSecurityPolicy = map[string]string{ "": "Pod Security Policy governs the ability to make requests that affect the Security Context that will be applied to a pod and container.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "spec": "spec defines the policy enforced.", } @@ -397,7 +401,7 @@ func (PodSecurityPolicy) SwaggerDoc() map[string]string { var map_PodSecurityPolicyList = map[string]string{ "": "Pod Security Policy List is a list of PodSecurityPolicy objects.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "items": "Items is a list of schema objects.", } @@ -421,6 +425,7 @@ var map_PodSecurityPolicySpec = map[string]string{ "supplementalGroups": "SupplementalGroups is the strategy that will dictate what supplemental groups are used by the SecurityContext.", "fsGroup": "FSGroup is the strategy that will dictate what fs group is used by the SecurityContext.", "readOnlyRootFilesystem": "ReadOnlyRootFilesystem when set to true will force containers to run with a read only root file system. If the container specifically requests to run with a non-read only root file system the PSP should deny the pod. If set to false the container may run with a read only root file system if it wishes but it will not be forced to.", + "allowedHostPaths": "AllowedHostPaths is a white list of allowed host path prefixes. Empty indicates that all host paths may be used.", } func (PodSecurityPolicySpec) SwaggerDoc() map[string]string { @@ -429,9 +434,9 @@ func (PodSecurityPolicySpec) SwaggerDoc() map[string]string { var map_ReplicaSet = map[string]string{ "": "ReplicaSet represents the configuration of a ReplicaSet.", - "metadata": "If the Labels of a ReplicaSet are empty, they are defaulted to be the same as the Pod(s) that the ReplicaSet manages. Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", - "spec": "Spec defines the specification of the desired behavior of the ReplicaSet. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", - "status": "Status is the most recently observed status of the ReplicaSet. This data may be out of date by some window of time. Populated by the system. Read-only. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", + "metadata": "If the Labels of a ReplicaSet are empty, they are defaulted to be the same as the Pod(s) that the ReplicaSet manages. Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "Spec defines the specification of the desired behavior of the ReplicaSet. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", + "status": "Status is the most recently observed status of the ReplicaSet. This data may be out of date by some window of time. Populated by the system. Read-only. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (ReplicaSet) SwaggerDoc() map[string]string { @@ -453,7 +458,7 @@ func (ReplicaSetCondition) SwaggerDoc() map[string]string { var map_ReplicaSetList = map[string]string{ "": "ReplicaSetList is a collection of ReplicaSets.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", "items": "List of ReplicaSets. More info: https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller", } @@ -496,7 +501,7 @@ func (ReplicationControllerDummy) SwaggerDoc() map[string]string { } var map_RollbackConfig = map[string]string{ - "revision": "The revision to rollback to. If set to 0, rollbck to the last revision.", + "revision": "The revision to rollback to. If set to 0, rollback to the last revision.", } func (RollbackConfig) SwaggerDoc() map[string]string { @@ -535,7 +540,7 @@ func (RunAsUserStrategyOptions) SwaggerDoc() map[string]string { var map_SELinuxStrategyOptions = map[string]string{ "": "SELinux Strategy Options defines the strategy type and any options used to create the strategy.", "rule": "type is the strategy that will dictate the allowable labels that may be set.", - "seLinuxOptions": "seLinuxOptions required to run as; required for MustRunAs More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/security_context.md", + "seLinuxOptions": "seLinuxOptions required to run as; required for MustRunAs More info: https://git.k8s.io/community/contributors/design-proposals/security_context.md", } func (SELinuxStrategyOptions) SwaggerDoc() map[string]string { @@ -544,9 +549,9 @@ func (SELinuxStrategyOptions) SwaggerDoc() map[string]string { var map_Scale = map[string]string{ "": "represents a scaling request for a resource.", - "metadata": "Standard object metadata; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata.", - "spec": "defines the behavior of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status.", - "status": "current status of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. Read-only.", + "metadata": "Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata.", + "spec": "defines the behavior of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status.", + "status": "current status of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. Read-only.", } func (Scale) SwaggerDoc() map[string]string { @@ -606,7 +611,7 @@ func (ThirdPartyResourceData) SwaggerDoc() map[string]string { var map_ThirdPartyResourceDataList = map[string]string{ "": "ThirdPartyResrouceDataList is a list of ThirdPartyResourceData.", - "metadata": "Standard list metadata More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard list metadata More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "items": "Items is the list of ThirdpartyResourceData.", } diff --git a/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/zz_generated.conversion.go b/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/zz_generated.conversion.go index e90fa6af..a020195b 100644 --- a/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/zz_generated.conversion.go +++ b/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/zz_generated.conversion.go @@ -352,6 +352,7 @@ func autoConvert_v1beta1_DaemonSetSpec_To_extensions_DaemonSetSpec(in *DaemonSet } out.MinReadySeconds = in.MinReadySeconds out.TemplateGeneration = in.TemplateGeneration + out.RevisionHistoryLimit = (*int32)(unsafe.Pointer(in.RevisionHistoryLimit)) return nil } @@ -370,6 +371,7 @@ func autoConvert_extensions_DaemonSetSpec_To_v1beta1_DaemonSetSpec(in *extension } out.MinReadySeconds = in.MinReadySeconds out.TemplateGeneration = in.TemplateGeneration + out.RevisionHistoryLimit = (*int32)(unsafe.Pointer(in.RevisionHistoryLimit)) return nil } @@ -387,6 +389,7 @@ func autoConvert_v1beta1_DaemonSetStatus_To_extensions_DaemonSetStatus(in *Daemo out.UpdatedNumberScheduled = in.UpdatedNumberScheduled out.NumberAvailable = in.NumberAvailable out.NumberUnavailable = in.NumberUnavailable + out.CollisionCount = (*int64)(unsafe.Pointer(in.CollisionCount)) return nil } @@ -404,6 +407,7 @@ func autoConvert_extensions_DaemonSetStatus_To_v1beta1_DaemonSetStatus(in *exten out.UpdatedNumberScheduled = in.UpdatedNumberScheduled out.NumberAvailable = in.NumberAvailable out.NumberUnavailable = in.NumberUnavailable + out.CollisionCount = (*int64)(unsafe.Pointer(in.CollisionCount)) return nil } @@ -628,6 +632,7 @@ func autoConvert_v1beta1_DeploymentStatus_To_extensions_DeploymentStatus(in *Dep out.AvailableReplicas = in.AvailableReplicas out.UnavailableReplicas = in.UnavailableReplicas out.Conditions = *(*[]extensions.DeploymentCondition)(unsafe.Pointer(&in.Conditions)) + out.CollisionCount = (*int64)(unsafe.Pointer(in.CollisionCount)) return nil } @@ -644,6 +649,7 @@ func autoConvert_extensions_DeploymentStatus_To_v1beta1_DeploymentStatus(in *ext out.AvailableReplicas = in.AvailableReplicas out.UnavailableReplicas = in.UnavailableReplicas out.Conditions = *(*[]DeploymentCondition)(unsafe.Pointer(&in.Conditions)) + out.CollisionCount = (*int64)(unsafe.Pointer(in.CollisionCount)) return nil } @@ -1213,6 +1219,7 @@ func autoConvert_v1beta1_PodSecurityPolicySpec_To_extensions_PodSecurityPolicySp return err } out.ReadOnlyRootFilesystem = in.ReadOnlyRootFilesystem + out.AllowedHostPaths = *(*[]string)(unsafe.Pointer(&in.AllowedHostPaths)) return nil } @@ -1254,6 +1261,7 @@ func autoConvert_extensions_PodSecurityPolicySpec_To_v1beta1_PodSecurityPolicySp return err } out.ReadOnlyRootFilesystem = in.ReadOnlyRootFilesystem + out.AllowedHostPaths = *(*[]string)(unsafe.Pointer(&in.AllowedHostPaths)) return nil } diff --git a/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/zz_generated.deepcopy.go b/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/zz_generated.deepcopy.go index 67bdcee1..ab8889cb 100644 --- a/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/zz_generated.deepcopy.go +++ b/vendor/k8s.io/client-go/pkg/apis/extensions/v1beta1/zz_generated.deepcopy.go @@ -182,6 +182,9 @@ func DeepCopy_v1beta1_DaemonSet(in interface{}, out interface{}, c *conversion.C if err := DeepCopy_v1beta1_DaemonSetSpec(&in.Spec, &out.Spec, c); err != nil { return err } + if err := DeepCopy_v1beta1_DaemonSetStatus(&in.Status, &out.Status, c); err != nil { + return err + } return nil } } @@ -225,6 +228,11 @@ func DeepCopy_v1beta1_DaemonSetSpec(in interface{}, out interface{}, c *conversi if err := DeepCopy_v1beta1_DaemonSetUpdateStrategy(&in.UpdateStrategy, &out.UpdateStrategy, c); err != nil { return err } + if in.RevisionHistoryLimit != nil { + in, out := &in.RevisionHistoryLimit, &out.RevisionHistoryLimit + *out = new(int32) + **out = **in + } return nil } } @@ -235,6 +243,11 @@ func DeepCopy_v1beta1_DaemonSetStatus(in interface{}, out interface{}, c *conver in := in.(*DaemonSetStatus) out := out.(*DaemonSetStatus) *out = *in + if in.CollisionCount != nil { + in, out := &in.CollisionCount, &out.CollisionCount + *out = new(int64) + **out = **in + } return nil } } @@ -384,6 +397,11 @@ func DeepCopy_v1beta1_DeploymentStatus(in interface{}, out interface{}, c *conve } } } + if in.CollisionCount != nil { + in, out := &in.CollisionCount, &out.CollisionCount + *out = new(int64) + **out = **in + } return nil } } @@ -821,6 +839,11 @@ func DeepCopy_v1beta1_PodSecurityPolicySpec(in interface{}, out interface{}, c * if err := DeepCopy_v1beta1_FSGroupStrategyOptions(&in.FSGroup, &out.FSGroup, c); err != nil { return err } + if in.AllowedHostPaths != nil { + in, out := &in.AllowedHostPaths, &out.AllowedHostPaths + *out = make([]string, len(*in)) + copy(*out, *in) + } return nil } } diff --git a/vendor/k8s.io/client-go/pkg/apis/extensions/zz_generated.deepcopy.go b/vendor/k8s.io/client-go/pkg/apis/extensions/zz_generated.deepcopy.go index d692dd7e..48243b9d 100644 --- a/vendor/k8s.io/client-go/pkg/apis/extensions/zz_generated.deepcopy.go +++ b/vendor/k8s.io/client-go/pkg/apis/extensions/zz_generated.deepcopy.go @@ -183,6 +183,9 @@ func DeepCopy_extensions_DaemonSet(in interface{}, out interface{}, c *conversio if err := DeepCopy_extensions_DaemonSetSpec(&in.Spec, &out.Spec, c); err != nil { return err } + if err := DeepCopy_extensions_DaemonSetStatus(&in.Status, &out.Status, c); err != nil { + return err + } return nil } } @@ -226,6 +229,11 @@ func DeepCopy_extensions_DaemonSetSpec(in interface{}, out interface{}, c *conve if err := DeepCopy_extensions_DaemonSetUpdateStrategy(&in.UpdateStrategy, &out.UpdateStrategy, c); err != nil { return err } + if in.RevisionHistoryLimit != nil { + in, out := &in.RevisionHistoryLimit, &out.RevisionHistoryLimit + *out = new(int32) + **out = **in + } return nil } } @@ -236,6 +244,11 @@ func DeepCopy_extensions_DaemonSetStatus(in interface{}, out interface{}, c *con in := in.(*DaemonSetStatus) out := out.(*DaemonSetStatus) *out = *in + if in.CollisionCount != nil { + in, out := &in.CollisionCount, &out.CollisionCount + *out = new(int64) + **out = **in + } return nil } } @@ -378,6 +391,11 @@ func DeepCopy_extensions_DeploymentStatus(in interface{}, out interface{}, c *co } } } + if in.CollisionCount != nil { + in, out := &in.CollisionCount, &out.CollisionCount + *out = new(int64) + **out = **in + } return nil } } @@ -813,6 +831,11 @@ func DeepCopy_extensions_PodSecurityPolicySpec(in interface{}, out interface{}, if err := DeepCopy_extensions_FSGroupStrategyOptions(&in.FSGroup, &out.FSGroup, c); err != nil { return err } + if in.AllowedHostPaths != nil { + in, out := &in.AllowedHostPaths, &out.AllowedHostPaths + *out = make([]string, len(*in)) + copy(*out, *in) + } return nil } } diff --git a/vendor/k8s.io/client-go/pkg/apis/networking/doc.go b/vendor/k8s.io/client-go/pkg/apis/networking/doc.go new file mode 100644 index 00000000..bf91d786 --- /dev/null +++ b/vendor/k8s.io/client-go/pkg/apis/networking/doc.go @@ -0,0 +1,18 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// +groupName=networking.k8s.io +package networking diff --git a/vendor/k8s.io/client-go/pkg/apis/networking/register.go b/vendor/k8s.io/client-go/pkg/apis/networking/register.go new file mode 100644 index 00000000..4d58a210 --- /dev/null +++ b/vendor/k8s.io/client-go/pkg/apis/networking/register.go @@ -0,0 +1,51 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package networking + +import ( + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/apimachinery/pkg/runtime/schema" +) + +// GroupName is the group name use in this package +const GroupName = "networking.k8s.io" + +// SchemeGroupVersion is group version used to register these objects +var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: runtime.APIVersionInternal} + +// Kind takes an unqualified kind and returns a Group qualified GroupKind +func Kind(kind string) schema.GroupKind { + return SchemeGroupVersion.WithKind(kind).GroupKind() +} + +// Resource takes an unqualified resource and returns a Group qualified GroupResource +func Resource(resource string) schema.GroupResource { + return SchemeGroupVersion.WithResource(resource).GroupResource() +} + +var ( + SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) + AddToScheme = SchemeBuilder.AddToScheme +) + +func addKnownTypes(scheme *runtime.Scheme) error { + scheme.AddKnownTypes(SchemeGroupVersion, + &NetworkPolicy{}, + &NetworkPolicyList{}, + ) + return nil +} diff --git a/vendor/k8s.io/client-go/pkg/apis/networking/types.go b/vendor/k8s.io/client-go/pkg/apis/networking/types.go new file mode 100644 index 00000000..010736f1 --- /dev/null +++ b/vendor/k8s.io/client-go/pkg/apis/networking/types.go @@ -0,0 +1,115 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package networking + +import ( + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/util/intstr" + "k8s.io/client-go/pkg/api" +) + +// +genclient=true + +// NetworkPolicy describes what network traffic is allowed for a set of Pods +type NetworkPolicy struct { + metav1.TypeMeta + // +optional + metav1.ObjectMeta + + // Specification of the desired behavior for this NetworkPolicy. + // +optional + Spec NetworkPolicySpec +} + +// NetworkPolicySpec provides the specification of a NetworkPolicy +type NetworkPolicySpec struct { + // Selects the pods to which this NetworkPolicy object applies. The array of + // ingress rules is applied to any pods selected by this field. Multiple network + // policies can select the same set of pods. In this case, the ingress rules for + // each are combined additively. This field is NOT optional and follows standard + // label selector semantics. An empty podSelector matches all pods in this + // namespace. + PodSelector metav1.LabelSelector + + // List of ingress rules to be applied to the selected pods. Traffic is allowed to + // a pod if there are no NetworkPolicies selecting the pod + // (and cluster policy otherwise allows the traffic), OR if the traffic source is + // the pod's local node, OR if the traffic matches at least one ingress rule + // across all of the NetworkPolicy objects whose podSelector matches the pod. If + // this field is empty then this NetworkPolicy does not allow any traffic (and serves + // solely to ensure that the pods it selects are isolated by default) + // +optional + Ingress []NetworkPolicyIngressRule +} + +// NetworkPolicyIngressRule describes a particular set of traffic that is allowed to the pods +// matched by a NetworkPolicySpec's podSelector. The traffic must match both ports and from. +type NetworkPolicyIngressRule struct { + // List of ports which should be made accessible on the pods selected for this + // rule. Each item in this list is combined using a logical OR. If this field is + // empty or missing, this rule matches all ports (traffic not restricted by port). + // If this field is present and contains at least one item, then this rule allows + // traffic only if the traffic matches at least one port in the list. + // +optional + Ports []NetworkPolicyPort + + // List of sources which should be able to access the pods selected for this rule. + // Items in this list are combined using a logical OR operation. If this field is + // empty or missing, this rule matches all sources (traffic not restricted by + // source). If this field is present and contains at least on item, this rule + // allows traffic only if the traffic matches at least one item in the from list. + // +optional + From []NetworkPolicyPeer +} + +// NetworkPolicyPort describes a port to allow traffic on +type NetworkPolicyPort struct { + // The protocol (TCP or UDP) which traffic must match. If not specified, this + // field defaults to TCP. + // +optional + Protocol *api.Protocol + + // The port on the given protocol. This can either be a numerical or named port on + // a pod. If this field is not provided, this matches all port names and numbers. + // +optional + Port *intstr.IntOrString +} + +// NetworkPolicyPeer describes a peer to allow traffic from. Exactly one of its fields +// must be specified. +type NetworkPolicyPeer struct { + // This is a label selector which selects Pods in this namespace. This field + // follows standard label selector semantics. If present but empty, this selector + // selects all pods in this namespace. + // +optional + PodSelector *metav1.LabelSelector + + // Selects Namespaces using cluster scoped-labels. This matches all pods in all + // namespaces selected by this label selector. This field follows standard label + // selector semantics. If present but empty, this selector selects all namespaces. + // +optional + NamespaceSelector *metav1.LabelSelector +} + +// NetworkPolicyList is a list of NetworkPolicy objects. +type NetworkPolicyList struct { + metav1.TypeMeta + // +optional + metav1.ListMeta + + Items []NetworkPolicy +} diff --git a/vendor/k8s.io/client-go/pkg/apis/networking/v1/conversion.go b/vendor/k8s.io/client-go/pkg/apis/networking/v1/conversion.go new file mode 100644 index 00000000..21ec6257 --- /dev/null +++ b/vendor/k8s.io/client-go/pkg/apis/networking/v1/conversion.go @@ -0,0 +1,195 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +import ( + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/conversion" + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/client-go/pkg/api" + "k8s.io/client-go/pkg/api/v1" + "k8s.io/client-go/pkg/apis/extensions" +) + +func addConversionFuncs(scheme *runtime.Scheme) error { + return scheme.AddConversionFuncs( + Convert_v1_NetworkPolicy_To_extensions_NetworkPolicy, + Convert_extensions_NetworkPolicy_To_v1_NetworkPolicy, + Convert_v1_NetworkPolicyIngressRule_To_extensions_NetworkPolicyIngressRule, + Convert_extensions_NetworkPolicyIngressRule_To_v1_NetworkPolicyIngressRule, + Convert_v1_NetworkPolicyList_To_extensions_NetworkPolicyList, + Convert_extensions_NetworkPolicyList_To_v1_NetworkPolicyList, + Convert_v1_NetworkPolicyPeer_To_extensions_NetworkPolicyPeer, + Convert_extensions_NetworkPolicyPeer_To_v1_NetworkPolicyPeer, + Convert_v1_NetworkPolicyPort_To_extensions_NetworkPolicyPort, + Convert_extensions_NetworkPolicyPort_To_v1_NetworkPolicyPort, + Convert_v1_NetworkPolicySpec_To_extensions_NetworkPolicySpec, + Convert_extensions_NetworkPolicySpec_To_v1_NetworkPolicySpec, + ) +} + +func Convert_v1_NetworkPolicy_To_extensions_NetworkPolicy(in *NetworkPolicy, out *extensions.NetworkPolicy, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + return Convert_v1_NetworkPolicySpec_To_extensions_NetworkPolicySpec(&in.Spec, &out.Spec, s) +} + +func Convert_extensions_NetworkPolicy_To_v1_NetworkPolicy(in *extensions.NetworkPolicy, out *NetworkPolicy, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + return Convert_extensions_NetworkPolicySpec_To_v1_NetworkPolicySpec(&in.Spec, &out.Spec, s) +} + +func Convert_v1_NetworkPolicySpec_To_extensions_NetworkPolicySpec(in *NetworkPolicySpec, out *extensions.NetworkPolicySpec, s conversion.Scope) error { + if err := s.Convert(&in.PodSelector, &out.PodSelector, 0); err != nil { + return err + } + out.Ingress = make([]extensions.NetworkPolicyIngressRule, len(in.Ingress)) + for i := range in.Ingress { + if err := Convert_v1_NetworkPolicyIngressRule_To_extensions_NetworkPolicyIngressRule(&in.Ingress[i], &out.Ingress[i], s); err != nil { + return err + } + } + return nil +} + +func Convert_extensions_NetworkPolicySpec_To_v1_NetworkPolicySpec(in *extensions.NetworkPolicySpec, out *NetworkPolicySpec, s conversion.Scope) error { + if err := s.Convert(&in.PodSelector, &out.PodSelector, 0); err != nil { + return err + } + out.Ingress = make([]NetworkPolicyIngressRule, len(in.Ingress)) + for i := range in.Ingress { + if err := Convert_extensions_NetworkPolicyIngressRule_To_v1_NetworkPolicyIngressRule(&in.Ingress[i], &out.Ingress[i], s); err != nil { + return err + } + } + return nil +} + +func Convert_v1_NetworkPolicyIngressRule_To_extensions_NetworkPolicyIngressRule(in *NetworkPolicyIngressRule, out *extensions.NetworkPolicyIngressRule, s conversion.Scope) error { + out.Ports = make([]extensions.NetworkPolicyPort, len(in.Ports)) + for i := range in.Ports { + if err := Convert_v1_NetworkPolicyPort_To_extensions_NetworkPolicyPort(&in.Ports[i], &out.Ports[i], s); err != nil { + return err + } + } + out.From = make([]extensions.NetworkPolicyPeer, len(in.From)) + for i := range in.From { + if err := Convert_v1_NetworkPolicyPeer_To_extensions_NetworkPolicyPeer(&in.From[i], &out.From[i], s); err != nil { + return err + } + } + return nil +} + +func Convert_extensions_NetworkPolicyIngressRule_To_v1_NetworkPolicyIngressRule(in *extensions.NetworkPolicyIngressRule, out *NetworkPolicyIngressRule, s conversion.Scope) error { + out.Ports = make([]NetworkPolicyPort, len(in.Ports)) + for i := range in.Ports { + if err := Convert_extensions_NetworkPolicyPort_To_v1_NetworkPolicyPort(&in.Ports[i], &out.Ports[i], s); err != nil { + return err + } + } + out.From = make([]NetworkPolicyPeer, len(in.From)) + for i := range in.From { + if err := Convert_extensions_NetworkPolicyPeer_To_v1_NetworkPolicyPeer(&in.From[i], &out.From[i], s); err != nil { + return err + } + } + return nil +} + +func Convert_v1_NetworkPolicyPeer_To_extensions_NetworkPolicyPeer(in *NetworkPolicyPeer, out *extensions.NetworkPolicyPeer, s conversion.Scope) error { + if in.PodSelector != nil { + out.PodSelector = new(metav1.LabelSelector) + if err := s.Convert(in.PodSelector, out.PodSelector, 0); err != nil { + return err + } + } else { + out.PodSelector = nil + } + if in.NamespaceSelector != nil { + out.NamespaceSelector = new(metav1.LabelSelector) + if err := s.Convert(in.NamespaceSelector, out.NamespaceSelector, 0); err != nil { + return err + } + } else { + out.NamespaceSelector = nil + } + return nil +} + +func Convert_extensions_NetworkPolicyPeer_To_v1_NetworkPolicyPeer(in *extensions.NetworkPolicyPeer, out *NetworkPolicyPeer, s conversion.Scope) error { + if in.PodSelector != nil { + out.PodSelector = new(metav1.LabelSelector) + if err := s.Convert(in.PodSelector, out.PodSelector, 0); err != nil { + return err + } + } else { + out.PodSelector = nil + } + if in.NamespaceSelector != nil { + out.NamespaceSelector = new(metav1.LabelSelector) + if err := s.Convert(in.NamespaceSelector, out.NamespaceSelector, 0); err != nil { + return err + } + } else { + out.NamespaceSelector = nil + } + return nil +} + +func Convert_v1_NetworkPolicyPort_To_extensions_NetworkPolicyPort(in *NetworkPolicyPort, out *extensions.NetworkPolicyPort, s conversion.Scope) error { + if in.Protocol != nil { + out.Protocol = new(api.Protocol) + *out.Protocol = api.Protocol(*in.Protocol) + } else { + out.Protocol = nil + } + out.Port = in.Port + return nil +} + +func Convert_extensions_NetworkPolicyPort_To_v1_NetworkPolicyPort(in *extensions.NetworkPolicyPort, out *NetworkPolicyPort, s conversion.Scope) error { + if in.Protocol != nil { + out.Protocol = new(v1.Protocol) + *out.Protocol = v1.Protocol(*in.Protocol) + } else { + out.Protocol = nil + } + out.Port = in.Port + return nil +} + +func Convert_v1_NetworkPolicyList_To_extensions_NetworkPolicyList(in *NetworkPolicyList, out *extensions.NetworkPolicyList, s conversion.Scope) error { + out.ListMeta = in.ListMeta + out.Items = make([]extensions.NetworkPolicy, len(in.Items)) + for i := range in.Items { + if err := Convert_v1_NetworkPolicy_To_extensions_NetworkPolicy(&in.Items[i], &out.Items[i], s); err != nil { + return err + } + } + return nil +} + +func Convert_extensions_NetworkPolicyList_To_v1_NetworkPolicyList(in *extensions.NetworkPolicyList, out *NetworkPolicyList, s conversion.Scope) error { + out.ListMeta = in.ListMeta + out.Items = make([]NetworkPolicy, len(in.Items)) + for i := range in.Items { + if err := Convert_extensions_NetworkPolicy_To_v1_NetworkPolicy(&in.Items[i], &out.Items[i], s); err != nil { + return err + } + } + return nil +} diff --git a/vendor/k8s.io/client-go/pkg/apis/networking/v1/defaults.go b/vendor/k8s.io/client-go/pkg/apis/networking/v1/defaults.go new file mode 100644 index 00000000..7567cf75 --- /dev/null +++ b/vendor/k8s.io/client-go/pkg/apis/networking/v1/defaults.go @@ -0,0 +1,34 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +import ( + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/client-go/pkg/api/v1" +) + +func addDefaultingFuncs(scheme *runtime.Scheme) error { + return RegisterDefaults(scheme) +} + +func SetDefaults_NetworkPolicyPort(obj *NetworkPolicyPort) { + // Default any undefined Protocol fields to TCP. + if obj.Protocol == nil { + proto := v1.ProtocolTCP + obj.Protocol = &proto + } +} diff --git a/vendor/k8s.io/client-go/pkg/apis/networking/v1/doc.go b/vendor/k8s.io/client-go/pkg/apis/networking/v1/doc.go new file mode 100644 index 00000000..f1250e70 --- /dev/null +++ b/vendor/k8s.io/client-go/pkg/apis/networking/v1/doc.go @@ -0,0 +1,18 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// +groupName=networking.k8s.io +package v1 diff --git a/vendor/k8s.io/client-go/pkg/apis/networking/v1/generated.pb.go b/vendor/k8s.io/client-go/pkg/apis/networking/v1/generated.pb.go new file mode 100644 index 00000000..671557dd --- /dev/null +++ b/vendor/k8s.io/client-go/pkg/apis/networking/v1/generated.pb.go @@ -0,0 +1,1345 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// Code generated by protoc-gen-gogo. +// source: k8s.io/kubernetes/pkg/apis/networking/v1/generated.proto +// DO NOT EDIT! + +/* + Package v1 is a generated protocol buffer package. + + It is generated from these files: + k8s.io/kubernetes/pkg/apis/networking/v1/generated.proto + + It has these top-level messages: + NetworkPolicy + NetworkPolicyIngressRule + NetworkPolicyList + NetworkPolicyPeer + NetworkPolicyPort + NetworkPolicySpec +*/ +package v1 + +import proto "github.com/gogo/protobuf/proto" +import fmt "fmt" +import math "math" + +import k8s_io_apimachinery_pkg_apis_meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + +import k8s_io_apimachinery_pkg_util_intstr "k8s.io/apimachinery/pkg/util/intstr" + +import k8s_io_kubernetes_pkg_api_v1 "k8s.io/client-go/pkg/api/v1" + +import strings "strings" +import reflect "reflect" + +import io "io" + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion2 // please upgrade the proto package + +func (m *NetworkPolicy) Reset() { *m = NetworkPolicy{} } +func (*NetworkPolicy) ProtoMessage() {} +func (*NetworkPolicy) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{0} } + +func (m *NetworkPolicyIngressRule) Reset() { *m = NetworkPolicyIngressRule{} } +func (*NetworkPolicyIngressRule) ProtoMessage() {} +func (*NetworkPolicyIngressRule) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{1} +} + +func (m *NetworkPolicyList) Reset() { *m = NetworkPolicyList{} } +func (*NetworkPolicyList) ProtoMessage() {} +func (*NetworkPolicyList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{2} } + +func (m *NetworkPolicyPeer) Reset() { *m = NetworkPolicyPeer{} } +func (*NetworkPolicyPeer) ProtoMessage() {} +func (*NetworkPolicyPeer) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{3} } + +func (m *NetworkPolicyPort) Reset() { *m = NetworkPolicyPort{} } +func (*NetworkPolicyPort) ProtoMessage() {} +func (*NetworkPolicyPort) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{4} } + +func (m *NetworkPolicySpec) Reset() { *m = NetworkPolicySpec{} } +func (*NetworkPolicySpec) ProtoMessage() {} +func (*NetworkPolicySpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{5} } + +func init() { + proto.RegisterType((*NetworkPolicy)(nil), "k8s.io.client-go.pkg.apis.networking.v1.NetworkPolicy") + proto.RegisterType((*NetworkPolicyIngressRule)(nil), "k8s.io.client-go.pkg.apis.networking.v1.NetworkPolicyIngressRule") + proto.RegisterType((*NetworkPolicyList)(nil), "k8s.io.client-go.pkg.apis.networking.v1.NetworkPolicyList") + proto.RegisterType((*NetworkPolicyPeer)(nil), "k8s.io.client-go.pkg.apis.networking.v1.NetworkPolicyPeer") + proto.RegisterType((*NetworkPolicyPort)(nil), "k8s.io.client-go.pkg.apis.networking.v1.NetworkPolicyPort") + proto.RegisterType((*NetworkPolicySpec)(nil), "k8s.io.client-go.pkg.apis.networking.v1.NetworkPolicySpec") +} +func (m *NetworkPolicy) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *NetworkPolicy) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) + n1, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n1 + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) + n2, err := m.Spec.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n2 + return i, nil +} + +func (m *NetworkPolicyIngressRule) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *NetworkPolicyIngressRule) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + if len(m.Ports) > 0 { + for _, msg := range m.Ports { + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(msg.Size())) + n, err := msg.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n + } + } + if len(m.From) > 0 { + for _, msg := range m.From { + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(msg.Size())) + n, err := msg.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n + } + } + return i, nil +} + +func (m *NetworkPolicyList) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *NetworkPolicyList) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) + n3, err := m.ListMeta.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n3 + if len(m.Items) > 0 { + for _, msg := range m.Items { + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(msg.Size())) + n, err := msg.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n + } + } + return i, nil +} + +func (m *NetworkPolicyPeer) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *NetworkPolicyPeer) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + if m.PodSelector != nil { + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.PodSelector.Size())) + n4, err := m.PodSelector.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n4 + } + if m.NamespaceSelector != nil { + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.NamespaceSelector.Size())) + n5, err := m.NamespaceSelector.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n5 + } + return i, nil +} + +func (m *NetworkPolicyPort) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *NetworkPolicyPort) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + if m.Protocol != nil { + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(*m.Protocol))) + i += copy(dAtA[i:], *m.Protocol) + } + if m.Port != nil { + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Port.Size())) + n6, err := m.Port.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n6 + } + return i, nil +} + +func (m *NetworkPolicySpec) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *NetworkPolicySpec) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.PodSelector.Size())) + n7, err := m.PodSelector.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n7 + if len(m.Ingress) > 0 { + for _, msg := range m.Ingress { + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(msg.Size())) + n, err := msg.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n + } + } + return i, nil +} + +func encodeFixed64Generated(dAtA []byte, offset int, v uint64) int { + dAtA[offset] = uint8(v) + dAtA[offset+1] = uint8(v >> 8) + dAtA[offset+2] = uint8(v >> 16) + dAtA[offset+3] = uint8(v >> 24) + dAtA[offset+4] = uint8(v >> 32) + dAtA[offset+5] = uint8(v >> 40) + dAtA[offset+6] = uint8(v >> 48) + dAtA[offset+7] = uint8(v >> 56) + return offset + 8 +} +func encodeFixed32Generated(dAtA []byte, offset int, v uint32) int { + dAtA[offset] = uint8(v) + dAtA[offset+1] = uint8(v >> 8) + dAtA[offset+2] = uint8(v >> 16) + dAtA[offset+3] = uint8(v >> 24) + return offset + 4 +} +func encodeVarintGenerated(dAtA []byte, offset int, v uint64) int { + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return offset + 1 +} +func (m *NetworkPolicy) Size() (n int) { + var l int + _ = l + l = m.ObjectMeta.Size() + n += 1 + l + sovGenerated(uint64(l)) + l = m.Spec.Size() + n += 1 + l + sovGenerated(uint64(l)) + return n +} + +func (m *NetworkPolicyIngressRule) Size() (n int) { + var l int + _ = l + if len(m.Ports) > 0 { + for _, e := range m.Ports { + l = e.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + } + if len(m.From) > 0 { + for _, e := range m.From { + l = e.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + } + return n +} + +func (m *NetworkPolicyList) Size() (n int) { + var l int + _ = l + l = m.ListMeta.Size() + n += 1 + l + sovGenerated(uint64(l)) + if len(m.Items) > 0 { + for _, e := range m.Items { + l = e.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + } + return n +} + +func (m *NetworkPolicyPeer) Size() (n int) { + var l int + _ = l + if m.PodSelector != nil { + l = m.PodSelector.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + if m.NamespaceSelector != nil { + l = m.NamespaceSelector.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + return n +} + +func (m *NetworkPolicyPort) Size() (n int) { + var l int + _ = l + if m.Protocol != nil { + l = len(*m.Protocol) + n += 1 + l + sovGenerated(uint64(l)) + } + if m.Port != nil { + l = m.Port.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + return n +} + +func (m *NetworkPolicySpec) Size() (n int) { + var l int + _ = l + l = m.PodSelector.Size() + n += 1 + l + sovGenerated(uint64(l)) + if len(m.Ingress) > 0 { + for _, e := range m.Ingress { + l = e.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + } + return n +} + +func sovGenerated(x uint64) (n int) { + for { + n++ + x >>= 7 + if x == 0 { + break + } + } + return n +} +func sozGenerated(x uint64) (n int) { + return sovGenerated(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *NetworkPolicy) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&NetworkPolicy{`, + `ObjectMeta:` + strings.Replace(strings.Replace(this.ObjectMeta.String(), "ObjectMeta", "k8s_io_apimachinery_pkg_apis_meta_v1.ObjectMeta", 1), `&`, ``, 1) + `,`, + `Spec:` + strings.Replace(strings.Replace(this.Spec.String(), "NetworkPolicySpec", "NetworkPolicySpec", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func (this *NetworkPolicyIngressRule) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&NetworkPolicyIngressRule{`, + `Ports:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.Ports), "NetworkPolicyPort", "NetworkPolicyPort", 1), `&`, ``, 1) + `,`, + `From:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.From), "NetworkPolicyPeer", "NetworkPolicyPeer", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func (this *NetworkPolicyList) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&NetworkPolicyList{`, + `ListMeta:` + strings.Replace(strings.Replace(this.ListMeta.String(), "ListMeta", "k8s_io_apimachinery_pkg_apis_meta_v1.ListMeta", 1), `&`, ``, 1) + `,`, + `Items:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.Items), "NetworkPolicy", "NetworkPolicy", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func (this *NetworkPolicyPeer) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&NetworkPolicyPeer{`, + `PodSelector:` + strings.Replace(fmt.Sprintf("%v", this.PodSelector), "LabelSelector", "k8s_io_apimachinery_pkg_apis_meta_v1.LabelSelector", 1) + `,`, + `NamespaceSelector:` + strings.Replace(fmt.Sprintf("%v", this.NamespaceSelector), "LabelSelector", "k8s_io_apimachinery_pkg_apis_meta_v1.LabelSelector", 1) + `,`, + `}`, + }, "") + return s +} +func (this *NetworkPolicyPort) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&NetworkPolicyPort{`, + `Protocol:` + valueToStringGenerated(this.Protocol) + `,`, + `Port:` + strings.Replace(fmt.Sprintf("%v", this.Port), "IntOrString", "k8s_io_apimachinery_pkg_util_intstr.IntOrString", 1) + `,`, + `}`, + }, "") + return s +} +func (this *NetworkPolicySpec) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&NetworkPolicySpec{`, + `PodSelector:` + strings.Replace(strings.Replace(this.PodSelector.String(), "LabelSelector", "k8s_io_apimachinery_pkg_apis_meta_v1.LabelSelector", 1), `&`, ``, 1) + `,`, + `Ingress:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.Ingress), "NetworkPolicyIngressRule", "NetworkPolicyIngressRule", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func valueToStringGenerated(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *NetworkPolicy) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: NetworkPolicy: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: NetworkPolicy: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectMeta", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.ObjectMeta.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *NetworkPolicyIngressRule) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: NetworkPolicyIngressRule: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: NetworkPolicyIngressRule: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Ports", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Ports = append(m.Ports, NetworkPolicyPort{}) + if err := m.Ports[len(m.Ports)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field From", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.From = append(m.From, NetworkPolicyPeer{}) + if err := m.From[len(m.From)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *NetworkPolicyList) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: NetworkPolicyList: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: NetworkPolicyList: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ListMeta", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.ListMeta.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Items", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Items = append(m.Items, NetworkPolicy{}) + if err := m.Items[len(m.Items)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *NetworkPolicyPeer) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: NetworkPolicyPeer: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: NetworkPolicyPeer: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PodSelector", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.PodSelector == nil { + m.PodSelector = &k8s_io_apimachinery_pkg_apis_meta_v1.LabelSelector{} + } + if err := m.PodSelector.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field NamespaceSelector", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.NamespaceSelector == nil { + m.NamespaceSelector = &k8s_io_apimachinery_pkg_apis_meta_v1.LabelSelector{} + } + if err := m.NamespaceSelector.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *NetworkPolicyPort) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: NetworkPolicyPort: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: NetworkPolicyPort: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Protocol", 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 := k8s_io_kubernetes_pkg_api_v1.Protocol(dAtA[iNdEx:postIndex]) + m.Protocol = &s + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Port", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Port == nil { + m.Port = &k8s_io_apimachinery_pkg_util_intstr.IntOrString{} + } + if err := m.Port.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *NetworkPolicySpec) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: NetworkPolicySpec: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: NetworkPolicySpec: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PodSelector", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.PodSelector.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Ingress", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Ingress = append(m.Ingress, NetworkPolicyIngressRule{}) + if err := m.Ingress[len(m.Ingress)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipGenerated(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenerated + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenerated + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + return iNdEx, nil + case 1: + iNdEx += 8 + return iNdEx, nil + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenerated + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + iNdEx += length + if length < 0 { + return 0, ErrInvalidLengthGenerated + } + return iNdEx, nil + case 3: + for { + var innerWire uint64 + var start int = iNdEx + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenerated + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + innerWire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + innerWireType := int(innerWire & 0x7) + if innerWireType == 4 { + break + } + next, err := skipGenerated(dAtA[start:]) + if err != nil { + return 0, err + } + iNdEx = start + next + } + return iNdEx, nil + case 4: + return iNdEx, nil + case 5: + iNdEx += 4 + return iNdEx, nil + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + } + panic("unreachable") +} + +var ( + ErrInvalidLengthGenerated = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowGenerated = fmt.Errorf("proto: integer overflow") +) + +func init() { + proto.RegisterFile("k8s.io/client-go/pkg/apis/networking/v1/generated.proto", fileDescriptorGenerated) +} + +var fileDescriptorGenerated = []byte{ + // 666 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x54, 0xcf, 0x4f, 0x13, 0x41, + 0x18, 0xed, 0x56, 0x08, 0x75, 0x90, 0x20, 0x6b, 0x4c, 0x1a, 0x0e, 0x5b, 0xd2, 0xc4, 0x84, 0x83, + 0xce, 0x5a, 0xf1, 0x07, 0xc6, 0x78, 0xd9, 0x83, 0x09, 0x89, 0x42, 0x5d, 0x6e, 0x06, 0x13, 0xa6, + 0xcb, 0xc7, 0x32, 0xb4, 0x3b, 0xb3, 0x99, 0x99, 0x56, 0xb8, 0xf9, 0x27, 0xf8, 0xd7, 0xf8, 0x37, + 0x70, 0x93, 0x23, 0x89, 0x49, 0x23, 0xeb, 0xdd, 0x9b, 0x17, 0x4f, 0x66, 0x76, 0xa7, 0x6c, 0x61, + 0x59, 0x24, 0xc5, 0xdb, 0xcc, 0xe4, 0x7b, 0xef, 0x7d, 0x6f, 0xde, 0x37, 0x83, 0x56, 0xbb, 0xab, + 0x12, 0x53, 0xee, 0x76, 0xfb, 0x1d, 0x10, 0x0c, 0x14, 0x48, 0x37, 0xee, 0x86, 0x2e, 0x89, 0xa9, + 0x74, 0x19, 0xa8, 0x4f, 0x5c, 0x74, 0x29, 0x0b, 0xdd, 0x41, 0xcb, 0x0d, 0x81, 0x81, 0x20, 0x0a, + 0x76, 0x70, 0x2c, 0xb8, 0xe2, 0xf6, 0x72, 0x86, 0xc4, 0x39, 0x12, 0xc7, 0xdd, 0x10, 0x6b, 0x24, + 0xce, 0x91, 0x78, 0xd0, 0x5a, 0x7c, 0x14, 0x52, 0xb5, 0xd7, 0xef, 0xe0, 0x80, 0x47, 0x6e, 0xc8, + 0x43, 0xee, 0xa6, 0x04, 0x9d, 0xfe, 0x6e, 0xba, 0x4b, 0x37, 0xe9, 0x2a, 0x23, 0x5e, 0x7c, 0x6a, + 0x5a, 0x22, 0x31, 0x8d, 0x48, 0xb0, 0x47, 0x19, 0x88, 0xc3, 0xbc, 0xa9, 0x08, 0x14, 0xb9, 0xa4, + 0x9d, 0x45, 0xb7, 0x0c, 0x25, 0xfa, 0x4c, 0xd1, 0x08, 0x0a, 0x80, 0xe7, 0xff, 0x02, 0xc8, 0x60, + 0x0f, 0x22, 0x52, 0xc0, 0xad, 0x94, 0xe1, 0xfa, 0x8a, 0xf6, 0x5c, 0xca, 0x94, 0x54, 0xa2, 0x00, + 0x7a, 0x58, 0x7a, 0xcd, 0x97, 0x79, 0x79, 0x7d, 0x45, 0x28, 0x70, 0xa0, 0x80, 0x49, 0xca, 0x99, + 0x74, 0x07, 0xad, 0x0e, 0x28, 0x52, 0x84, 0xbf, 0xbc, 0x02, 0x1e, 0xf3, 0x1e, 0x0d, 0x0e, 0xcb, + 0xa0, 0xcd, 0x63, 0x0b, 0xcd, 0xad, 0x67, 0xe1, 0xb5, 0xd3, 0x4a, 0x7b, 0x1b, 0xd5, 0xf4, 0x95, + 0xef, 0x10, 0x45, 0xea, 0xd6, 0x92, 0xb5, 0x3c, 0xfb, 0xe4, 0x31, 0x36, 0xc9, 0x8f, 0xdf, 0x40, + 0x9e, 0xbd, 0xae, 0xc6, 0x83, 0x16, 0xde, 0xe8, 0xec, 0x43, 0xa0, 0xde, 0x81, 0x22, 0x9e, 0x7d, + 0x34, 0x6c, 0x54, 0x92, 0x61, 0x03, 0xe5, 0x67, 0xfe, 0x19, 0xab, 0xfd, 0x11, 0x4d, 0xc9, 0x18, + 0x82, 0x7a, 0x35, 0x65, 0x7f, 0x85, 0xaf, 0x3b, 0x57, 0xf8, 0x5c, 0xa3, 0x9b, 0x31, 0x04, 0xde, + 0x1d, 0x23, 0x34, 0xa5, 0x77, 0x7e, 0x4a, 0xdb, 0xfc, 0x6e, 0xa1, 0xfa, 0xb9, 0xca, 0x35, 0x16, + 0x0a, 0x90, 0xd2, 0xef, 0xf7, 0xc0, 0xde, 0x46, 0xd3, 0x31, 0x17, 0x4a, 0xd6, 0xad, 0xa5, 0x5b, + 0x37, 0x10, 0x6f, 0x73, 0xa1, 0xbc, 0x39, 0x23, 0x3e, 0xad, 0x77, 0xd2, 0xcf, 0x88, 0xb5, 0xbb, + 0x5d, 0xc1, 0xa3, 0x7a, 0xf5, 0x66, 0x02, 0x00, 0x22, 0x77, 0xf7, 0x46, 0xf0, 0xc8, 0x4f, 0x69, + 0x9b, 0xdf, 0x2c, 0xb4, 0x70, 0xae, 0xf2, 0x2d, 0x95, 0xca, 0xde, 0x2a, 0x84, 0x86, 0xaf, 0x17, + 0x9a, 0x46, 0xa7, 0x91, 0xdd, 0x35, 0x5a, 0xb5, 0xd1, 0xc9, 0x58, 0x60, 0x5b, 0x68, 0x9a, 0x2a, + 0x88, 0xa4, 0xf1, 0xf4, 0x62, 0x42, 0x4f, 0xf9, 0x85, 0xad, 0x69, 0x36, 0x3f, 0x23, 0x6d, 0xfe, + 0xbe, 0xe8, 0x48, 0x7b, 0xb7, 0x77, 0xd1, 0x6c, 0xcc, 0x77, 0x36, 0xa1, 0x07, 0x81, 0xe2, 0xc2, + 0x98, 0x5a, 0xb9, 0xa6, 0x29, 0xd2, 0x81, 0xde, 0x08, 0xea, 0xcd, 0x27, 0xc3, 0xc6, 0x6c, 0x3b, + 0xe7, 0xf2, 0xc7, 0x89, 0xed, 0x03, 0xb4, 0xc0, 0x48, 0x04, 0x32, 0x26, 0x01, 0x9c, 0xa9, 0x55, + 0x27, 0x57, 0xbb, 0x9f, 0x0c, 0x1b, 0x0b, 0xeb, 0x17, 0x19, 0xfd, 0xa2, 0x48, 0xf3, 0x6b, 0xc1, + 0x37, 0x17, 0xca, 0x7e, 0x8f, 0x6a, 0xe9, 0xcb, 0x0c, 0x78, 0x2f, 0x35, 0x7d, 0xdb, 0x7b, 0xa6, + 0x53, 0x69, 0x9b, 0xb3, 0x3f, 0xc3, 0xc6, 0x83, 0xab, 0xbe, 0x16, 0x3c, 0x2a, 0xf4, 0xcf, 0x68, + 0xec, 0x75, 0x34, 0xa5, 0x47, 0xd3, 0xb8, 0x2a, 0x7f, 0xcd, 0xfa, 0x3f, 0xc3, 0xd9, 0x7f, 0x86, + 0xd7, 0x98, 0xda, 0x10, 0x9b, 0x4a, 0x50, 0x16, 0x7a, 0x35, 0x3d, 0x82, 0xba, 0x39, 0x3f, 0xe5, + 0x69, 0xfe, 0xba, 0xd8, 0xb8, 0x7e, 0x7c, 0xf6, 0xfe, 0x7f, 0x0b, 0xec, 0x9e, 0x19, 0x93, 0xf2, + 0xd0, 0x22, 0x34, 0x43, 0xb3, 0x47, 0x6d, 0x46, 0xd2, 0x9b, 0x70, 0x24, 0xc7, 0xbe, 0x06, 0x6f, + 0xde, 0xc8, 0xce, 0x8c, 0x0e, 0x47, 0x1a, 0xde, 0xf2, 0xd1, 0xa9, 0x53, 0x39, 0x3e, 0x75, 0x2a, + 0x27, 0xa7, 0x4e, 0xe5, 0x73, 0xe2, 0x58, 0x47, 0x89, 0x63, 0x1d, 0x27, 0x8e, 0x75, 0x92, 0x38, + 0xd6, 0x8f, 0xc4, 0xb1, 0xbe, 0xfc, 0x74, 0x2a, 0x1f, 0xaa, 0x83, 0xd6, 0xdf, 0x00, 0x00, 0x00, + 0xff, 0xff, 0xfa, 0x8d, 0x62, 0x1f, 0x5e, 0x07, 0x00, 0x00, +} diff --git a/vendor/k8s.io/client-go/pkg/apis/networking/v1/generated.proto b/vendor/k8s.io/client-go/pkg/apis/networking/v1/generated.proto new file mode 100644 index 00000000..3170b55f --- /dev/null +++ b/vendor/k8s.io/client-go/pkg/apis/networking/v1/generated.proto @@ -0,0 +1,127 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + + +// This file was autogenerated by go-to-protobuf. Do not edit it manually! + +syntax = 'proto2'; + +package k8s.io.client_go.pkg.apis.networking.v1; + +import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; +import "k8s.io/apimachinery/pkg/runtime/generated.proto"; +import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; +import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; +import "k8s.io/kubernetes/pkg/api/v1/generated.proto"; +import "k8s.io/kubernetes/pkg/apis/extensions/v1beta1/generated.proto"; +import "k8s.io/kubernetes/pkg/apis/policy/v1beta1/generated.proto"; + +// Package-wide variables from generator "generated". +option go_package = "v1"; + +// NetworkPolicy describes what network traffic is allowed for a set of Pods +message NetworkPolicy { + // Standard object's metadata. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + // +optional + optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; + + // Specification of the desired behavior for this NetworkPolicy. + // +optional + optional NetworkPolicySpec spec = 2; +} + +// NetworkPolicyIngressRule describes a particular set of traffic that is allowed to the pods +// matched by a NetworkPolicySpec's podSelector. The traffic must match both ports and from. +message NetworkPolicyIngressRule { + // List of ports which should be made accessible on the pods selected for this + // rule. Each item in this list is combined using a logical OR. If this field is + // empty or missing, this rule matches all ports (traffic not restricted by port). + // If this field is present and contains at least one item, then this rule allows + // traffic only if the traffic matches at least one port in the list. + // +optional + repeated NetworkPolicyPort ports = 1; + + // List of sources which should be able to access the pods selected for this rule. + // Items in this list are combined using a logical OR operation. If this field is + // empty or missing, this rule matches all sources (traffic not restricted by + // source). If this field is present and contains at least on item, this rule + // allows traffic only if the traffic matches at least one item in the from list. + // +optional + repeated NetworkPolicyPeer from = 2; +} + +// NetworkPolicyList is a list of NetworkPolicy objects. +message NetworkPolicyList { + // Standard list metadata. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + // +optional + optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; + + // Items is a list of schema objects. + repeated NetworkPolicy items = 2; +} + +// NetworkPolicyPeer describes a peer to allow traffic from. Exactly one of its fields +// must be specified. +message NetworkPolicyPeer { + // This is a label selector which selects Pods in this namespace. This field + // follows standard label selector semantics. If present but empty, this selector + // selects all pods in this namespace. + // +optional + optional k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector podSelector = 1; + + // Selects Namespaces using cluster scoped-labels. This matches all pods in all + // namespaces selected by this label selector. This field follows standard label + // selector semantics. If present but empty, this selector selects all namespaces. + // +optional + optional k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector namespaceSelector = 2; +} + +// NetworkPolicyPort describes a port to allow traffic on +message NetworkPolicyPort { + // The protocol (TCP or UDP) which traffic must match. If not specified, this + // field defaults to TCP. + // +optional + optional string protocol = 1; + + // The port on the given protocol. This can either be a numerical or named port on + // a pod. If this field is not provided, this matches all port names and numbers. + // +optional + optional k8s.io.apimachinery.pkg.util.intstr.IntOrString port = 2; +} + +// NetworkPolicySpec provides the specification of a NetworkPolicy +message NetworkPolicySpec { + // Selects the pods to which this NetworkPolicy object applies. The array of + // ingress rules is applied to any pods selected by this field. Multiple network + // policies can select the same set of pods. In this case, the ingress rules for + // each are combined additively. This field is NOT optional and follows standard + // label selector semantics. An empty podSelector matches all pods in this + // namespace. + optional k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector podSelector = 1; + + // List of ingress rules to be applied to the selected pods. Traffic is allowed to + // a pod if there are no NetworkPolicies selecting the pod + // (and cluster policy otherwise allows the traffic), OR if the traffic source is + // the pod's local node, OR if the traffic matches at least one ingress rule + // across all of the NetworkPolicy objects whose podSelector matches the pod. If + // this field is empty then this NetworkPolicy does not allow any traffic (and serves + // solely to ensure that the pods it selects are isolated by default) + // +optional + repeated NetworkPolicyIngressRule ingress = 2; +} + diff --git a/vendor/k8s.io/client-go/pkg/apis/networking/v1/register.go b/vendor/k8s.io/client-go/pkg/apis/networking/v1/register.go new file mode 100644 index 00000000..c8d3c83b --- /dev/null +++ b/vendor/k8s.io/client-go/pkg/apis/networking/v1/register.go @@ -0,0 +1,50 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +import ( + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/apimachinery/pkg/runtime/schema" +) + +// GroupName is the group name use in this package +const GroupName = "networking.k8s.io" + +// SchemeGroupVersion is group version used to register these objects +var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1"} + +// Resource takes an unqualified resource and returns a Group qualified GroupResource +func Resource(resource string) schema.GroupResource { + return SchemeGroupVersion.WithResource(resource).GroupResource() +} + +var ( + SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes, addDefaultingFuncs, addConversionFuncs) + AddToScheme = SchemeBuilder.AddToScheme +) + +// Adds the list of known types to api.Scheme. +func addKnownTypes(scheme *runtime.Scheme) error { + scheme.AddKnownTypes(SchemeGroupVersion, + &NetworkPolicy{}, + &NetworkPolicyList{}, + ) + + metav1.AddToGroupVersion(scheme, SchemeGroupVersion) + return nil +} diff --git a/vendor/k8s.io/client-go/pkg/apis/networking/v1/types.generated.go b/vendor/k8s.io/client-go/pkg/apis/networking/v1/types.generated.go new file mode 100644 index 00000000..da04aee4 --- /dev/null +++ b/vendor/k8s.io/client-go/pkg/apis/networking/v1/types.generated.go @@ -0,0 +1,2322 @@ +/* +Copyright 2016 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// ************************************************************ +// DO NOT EDIT. +// THIS FILE IS AUTO-GENERATED BY codecgen. +// ************************************************************ + +package v1 + +import ( + "errors" + "fmt" + codec1978 "github.com/ugorji/go/codec" + pkg1_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + pkg2_types "k8s.io/apimachinery/pkg/types" + pkg4_intstr "k8s.io/apimachinery/pkg/util/intstr" + pkg3_v1 "k8s.io/client-go/pkg/api/v1" + "reflect" + "runtime" + time "time" +) + +const ( + // ----- content types ---- + codecSelferC_UTF81234 = 1 + codecSelferC_RAW1234 = 0 + // ----- value types used ---- + codecSelferValueTypeArray1234 = 10 + codecSelferValueTypeMap1234 = 9 + // ----- containerStateValues ---- + codecSelfer_containerMapKey1234 = 2 + codecSelfer_containerMapValue1234 = 3 + codecSelfer_containerMapEnd1234 = 4 + codecSelfer_containerArrayElem1234 = 6 + codecSelfer_containerArrayEnd1234 = 7 +) + +var ( + codecSelferBitsize1234 = uint8(reflect.TypeOf(uint(0)).Bits()) + codecSelferOnlyMapOrArrayEncodeToStructErr1234 = errors.New(`only encoded map or array can be decoded into a struct`) +) + +type codecSelfer1234 struct{} + +func init() { + if codec1978.GenVersion != 5 { + _, file, _, _ := runtime.Caller(0) + err := fmt.Errorf("codecgen version mismatch: current: %v, need %v. Re-generate file: %v", + 5, codec1978.GenVersion, file) + panic(err) + } + if false { // reference the types, but skip this branch at build/run time + var v0 pkg1_v1.TypeMeta + var v1 pkg2_types.UID + var v2 pkg4_intstr.IntOrString + var v3 pkg3_v1.Protocol + var v4 time.Time + _, _, _, _, _ = v0, v1, v2, v3, v4 + } +} + +func (x *NetworkPolicy) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [4]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.Kind != "" + yyq2[1] = x.APIVersion != "" + yyq2[2] = true + yyq2[3] = true + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(4) + } else { + yynn2 = 0 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("kind")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("apiVersion")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yy10 := &x.ObjectMeta + yym11 := z.EncBinary() + _ = yym11 + if false { + } else if z.HasExtensions() && z.EncExt(yy10) { + } else { + z.EncFallback(yy10) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("metadata")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy12 := &x.ObjectMeta + yym13 := z.EncBinary() + _ = yym13 + if false { + } else if z.HasExtensions() && z.EncExt(yy12) { + } else { + z.EncFallback(yy12) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[3] { + yy15 := &x.Spec + yy15.CodecEncodeSelf(e) + } else { + r.EncodeNil() + } + } else { + if yyq2[3] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("spec")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy17 := &x.Spec + yy17.CodecEncodeSelf(e) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *NetworkPolicy) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *NetworkPolicy) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "kind": + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv4 := &x.Kind + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "apiVersion": + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv6 := &x.APIVersion + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + case "metadata": + if r.TryDecodeAsNil() { + x.ObjectMeta = pkg1_v1.ObjectMeta{} + } else { + yyv8 := &x.ObjectMeta + yym9 := z.DecBinary() + _ = yym9 + if false { + } else if z.HasExtensions() && z.DecExt(yyv8) { + } else { + z.DecFallback(yyv8, false) + } + } + case "spec": + if r.TryDecodeAsNil() { + x.Spec = NetworkPolicySpec{} + } else { + yyv10 := &x.Spec + yyv10.CodecDecodeSelf(d) + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *NetworkPolicy) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj11 int + var yyb11 bool + var yyhl11 bool = l >= 0 + yyj11++ + if yyhl11 { + yyb11 = yyj11 > l + } else { + yyb11 = r.CheckBreak() + } + if yyb11 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv12 := &x.Kind + yym13 := z.DecBinary() + _ = yym13 + if false { + } else { + *((*string)(yyv12)) = r.DecodeString() + } + } + yyj11++ + if yyhl11 { + yyb11 = yyj11 > l + } else { + yyb11 = r.CheckBreak() + } + if yyb11 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv14 := &x.APIVersion + yym15 := z.DecBinary() + _ = yym15 + if false { + } else { + *((*string)(yyv14)) = r.DecodeString() + } + } + yyj11++ + if yyhl11 { + yyb11 = yyj11 > l + } else { + yyb11 = r.CheckBreak() + } + if yyb11 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ObjectMeta = pkg1_v1.ObjectMeta{} + } else { + yyv16 := &x.ObjectMeta + yym17 := z.DecBinary() + _ = yym17 + if false { + } else if z.HasExtensions() && z.DecExt(yyv16) { + } else { + z.DecFallback(yyv16, false) + } + } + yyj11++ + if yyhl11 { + yyb11 = yyj11 > l + } else { + yyb11 = r.CheckBreak() + } + if yyb11 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Spec = NetworkPolicySpec{} + } else { + yyv18 := &x.Spec + yyv18.CodecDecodeSelf(d) + } + for { + yyj11++ + if yyhl11 { + yyb11 = yyj11 > l + } else { + yyb11 = r.CheckBreak() + } + if yyb11 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj11-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *NetworkPolicySpec) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [2]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[1] = len(x.Ingress) != 0 + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(2) + } else { + yynn2 = 1 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy4 := &x.PodSelector + yym5 := z.EncBinary() + _ = yym5 + if false { + } else if z.HasExtensions() && z.EncExt(yy4) { + } else { + z.EncFallback(yy4) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("podSelector")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy6 := &x.PodSelector + yym7 := z.EncBinary() + _ = yym7 + if false { + } else if z.HasExtensions() && z.EncExt(yy6) { + } else { + z.EncFallback(yy6) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + if x.Ingress == nil { + r.EncodeNil() + } else { + yym9 := z.EncBinary() + _ = yym9 + if false { + } else { + h.encSliceNetworkPolicyIngressRule(([]NetworkPolicyIngressRule)(x.Ingress), e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("ingress")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Ingress == nil { + r.EncodeNil() + } else { + yym10 := z.EncBinary() + _ = yym10 + if false { + } else { + h.encSliceNetworkPolicyIngressRule(([]NetworkPolicyIngressRule)(x.Ingress), e) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *NetworkPolicySpec) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *NetworkPolicySpec) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "podSelector": + if r.TryDecodeAsNil() { + x.PodSelector = pkg1_v1.LabelSelector{} + } else { + yyv4 := &x.PodSelector + yym5 := z.DecBinary() + _ = yym5 + if false { + } else if z.HasExtensions() && z.DecExt(yyv4) { + } else { + z.DecFallback(yyv4, false) + } + } + case "ingress": + if r.TryDecodeAsNil() { + x.Ingress = nil + } else { + yyv6 := &x.Ingress + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + h.decSliceNetworkPolicyIngressRule((*[]NetworkPolicyIngressRule)(yyv6), d) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *NetworkPolicySpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj8 int + var yyb8 bool + var yyhl8 bool = l >= 0 + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.PodSelector = pkg1_v1.LabelSelector{} + } else { + yyv9 := &x.PodSelector + yym10 := z.DecBinary() + _ = yym10 + if false { + } else if z.HasExtensions() && z.DecExt(yyv9) { + } else { + z.DecFallback(yyv9, false) + } + } + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Ingress = nil + } else { + yyv11 := &x.Ingress + yym12 := z.DecBinary() + _ = yym12 + if false { + } else { + h.decSliceNetworkPolicyIngressRule((*[]NetworkPolicyIngressRule)(yyv11), d) + } + } + for { + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj8-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *NetworkPolicyIngressRule) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [2]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = len(x.Ports) != 0 + yyq2[1] = len(x.From) != 0 + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(2) + } else { + yynn2 = 0 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + if x.Ports == nil { + r.EncodeNil() + } else { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + h.encSliceNetworkPolicyPort(([]NetworkPolicyPort)(x.Ports), e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("ports")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Ports == nil { + r.EncodeNil() + } else { + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + h.encSliceNetworkPolicyPort(([]NetworkPolicyPort)(x.Ports), e) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + if x.From == nil { + r.EncodeNil() + } else { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + h.encSliceNetworkPolicyPeer(([]NetworkPolicyPeer)(x.From), e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("from")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.From == nil { + r.EncodeNil() + } else { + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + h.encSliceNetworkPolicyPeer(([]NetworkPolicyPeer)(x.From), e) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *NetworkPolicyIngressRule) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *NetworkPolicyIngressRule) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "ports": + if r.TryDecodeAsNil() { + x.Ports = nil + } else { + yyv4 := &x.Ports + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + h.decSliceNetworkPolicyPort((*[]NetworkPolicyPort)(yyv4), d) + } + } + case "from": + if r.TryDecodeAsNil() { + x.From = nil + } else { + yyv6 := &x.From + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + h.decSliceNetworkPolicyPeer((*[]NetworkPolicyPeer)(yyv6), d) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *NetworkPolicyIngressRule) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj8 int + var yyb8 bool + var yyhl8 bool = l >= 0 + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Ports = nil + } else { + yyv9 := &x.Ports + yym10 := z.DecBinary() + _ = yym10 + if false { + } else { + h.decSliceNetworkPolicyPort((*[]NetworkPolicyPort)(yyv9), d) + } + } + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.From = nil + } else { + yyv11 := &x.From + yym12 := z.DecBinary() + _ = yym12 + if false { + } else { + h.decSliceNetworkPolicyPeer((*[]NetworkPolicyPeer)(yyv11), d) + } + } + for { + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj8-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *NetworkPolicyPort) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [2]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.Protocol != nil + yyq2[1] = x.Port != nil + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(2) + } else { + yynn2 = 0 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + if x.Protocol == nil { + r.EncodeNil() + } else { + yy4 := *x.Protocol + yysf5 := &yy4 + yysf5.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("protocol")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Protocol == nil { + r.EncodeNil() + } else { + yy6 := *x.Protocol + yysf7 := &yy6 + yysf7.CodecEncodeSelf(e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + if x.Port == nil { + r.EncodeNil() + } else { + yym9 := z.EncBinary() + _ = yym9 + if false { + } else if z.HasExtensions() && z.EncExt(x.Port) { + } else if !yym9 && z.IsJSONHandle() { + z.EncJSONMarshal(x.Port) + } else { + z.EncFallback(x.Port) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("port")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Port == nil { + r.EncodeNil() + } else { + yym10 := z.EncBinary() + _ = yym10 + if false { + } else if z.HasExtensions() && z.EncExt(x.Port) { + } else if !yym10 && z.IsJSONHandle() { + z.EncJSONMarshal(x.Port) + } else { + z.EncFallback(x.Port) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *NetworkPolicyPort) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *NetworkPolicyPort) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "protocol": + if r.TryDecodeAsNil() { + if x.Protocol != nil { + x.Protocol = nil + } + } else { + if x.Protocol == nil { + x.Protocol = new(pkg3_v1.Protocol) + } + x.Protocol.CodecDecodeSelf(d) + } + case "port": + if r.TryDecodeAsNil() { + if x.Port != nil { + x.Port = nil + } + } else { + if x.Port == nil { + x.Port = new(pkg4_intstr.IntOrString) + } + yym6 := z.DecBinary() + _ = yym6 + if false { + } else if z.HasExtensions() && z.DecExt(x.Port) { + } else if !yym6 && z.IsJSONHandle() { + z.DecJSONUnmarshal(x.Port) + } else { + z.DecFallback(x.Port, false) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *NetworkPolicyPort) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj7 int + var yyb7 bool + var yyhl7 bool = l >= 0 + yyj7++ + if yyhl7 { + yyb7 = yyj7 > l + } else { + yyb7 = r.CheckBreak() + } + if yyb7 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.Protocol != nil { + x.Protocol = nil + } + } else { + if x.Protocol == nil { + x.Protocol = new(pkg3_v1.Protocol) + } + x.Protocol.CodecDecodeSelf(d) + } + yyj7++ + if yyhl7 { + yyb7 = yyj7 > l + } else { + yyb7 = r.CheckBreak() + } + if yyb7 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.Port != nil { + x.Port = nil + } + } else { + if x.Port == nil { + x.Port = new(pkg4_intstr.IntOrString) + } + yym10 := z.DecBinary() + _ = yym10 + if false { + } else if z.HasExtensions() && z.DecExt(x.Port) { + } else if !yym10 && z.IsJSONHandle() { + z.DecJSONUnmarshal(x.Port) + } else { + z.DecFallback(x.Port, false) + } + } + for { + yyj7++ + if yyhl7 { + yyb7 = yyj7 > l + } else { + yyb7 = r.CheckBreak() + } + if yyb7 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj7-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *NetworkPolicyPeer) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [2]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.PodSelector != nil + yyq2[1] = x.NamespaceSelector != nil + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(2) + } else { + yynn2 = 0 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + if x.PodSelector == nil { + r.EncodeNil() + } else { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else if z.HasExtensions() && z.EncExt(x.PodSelector) { + } else { + z.EncFallback(x.PodSelector) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("podSelector")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.PodSelector == nil { + r.EncodeNil() + } else { + yym5 := z.EncBinary() + _ = yym5 + if false { + } else if z.HasExtensions() && z.EncExt(x.PodSelector) { + } else { + z.EncFallback(x.PodSelector) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + if x.NamespaceSelector == nil { + r.EncodeNil() + } else { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else if z.HasExtensions() && z.EncExt(x.NamespaceSelector) { + } else { + z.EncFallback(x.NamespaceSelector) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("namespaceSelector")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.NamespaceSelector == nil { + r.EncodeNil() + } else { + yym8 := z.EncBinary() + _ = yym8 + if false { + } else if z.HasExtensions() && z.EncExt(x.NamespaceSelector) { + } else { + z.EncFallback(x.NamespaceSelector) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *NetworkPolicyPeer) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *NetworkPolicyPeer) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "podSelector": + if r.TryDecodeAsNil() { + if x.PodSelector != nil { + x.PodSelector = nil + } + } else { + if x.PodSelector == nil { + x.PodSelector = new(pkg1_v1.LabelSelector) + } + yym5 := z.DecBinary() + _ = yym5 + if false { + } else if z.HasExtensions() && z.DecExt(x.PodSelector) { + } else { + z.DecFallback(x.PodSelector, false) + } + } + case "namespaceSelector": + if r.TryDecodeAsNil() { + if x.NamespaceSelector != nil { + x.NamespaceSelector = nil + } + } else { + if x.NamespaceSelector == nil { + x.NamespaceSelector = new(pkg1_v1.LabelSelector) + } + yym7 := z.DecBinary() + _ = yym7 + if false { + } else if z.HasExtensions() && z.DecExt(x.NamespaceSelector) { + } else { + z.DecFallback(x.NamespaceSelector, false) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *NetworkPolicyPeer) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj8 int + var yyb8 bool + var yyhl8 bool = l >= 0 + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.PodSelector != nil { + x.PodSelector = nil + } + } else { + if x.PodSelector == nil { + x.PodSelector = new(pkg1_v1.LabelSelector) + } + yym10 := z.DecBinary() + _ = yym10 + if false { + } else if z.HasExtensions() && z.DecExt(x.PodSelector) { + } else { + z.DecFallback(x.PodSelector, false) + } + } + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.NamespaceSelector != nil { + x.NamespaceSelector = nil + } + } else { + if x.NamespaceSelector == nil { + x.NamespaceSelector = new(pkg1_v1.LabelSelector) + } + yym12 := z.DecBinary() + _ = yym12 + if false { + } else if z.HasExtensions() && z.DecExt(x.NamespaceSelector) { + } else { + z.DecFallback(x.NamespaceSelector, false) + } + } + for { + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj8-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *NetworkPolicyList) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [4]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.Kind != "" + yyq2[1] = x.APIVersion != "" + yyq2[2] = true + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(4) + } else { + yynn2 = 1 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("kind")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("apiVersion")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yy10 := &x.ListMeta + yym11 := z.EncBinary() + _ = yym11 + if false { + } else if z.HasExtensions() && z.EncExt(yy10) { + } else { + z.EncFallback(yy10) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("metadata")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy12 := &x.ListMeta + yym13 := z.EncBinary() + _ = yym13 + if false { + } else if z.HasExtensions() && z.EncExt(yy12) { + } else { + z.EncFallback(yy12) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if x.Items == nil { + r.EncodeNil() + } else { + yym15 := z.EncBinary() + _ = yym15 + if false { + } else { + h.encSliceNetworkPolicy(([]NetworkPolicy)(x.Items), e) + } + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("items")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Items == nil { + r.EncodeNil() + } else { + yym16 := z.EncBinary() + _ = yym16 + if false { + } else { + h.encSliceNetworkPolicy(([]NetworkPolicy)(x.Items), e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *NetworkPolicyList) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *NetworkPolicyList) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "kind": + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv4 := &x.Kind + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "apiVersion": + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv6 := &x.APIVersion + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + case "metadata": + if r.TryDecodeAsNil() { + x.ListMeta = pkg1_v1.ListMeta{} + } else { + yyv8 := &x.ListMeta + yym9 := z.DecBinary() + _ = yym9 + if false { + } else if z.HasExtensions() && z.DecExt(yyv8) { + } else { + z.DecFallback(yyv8, false) + } + } + case "items": + if r.TryDecodeAsNil() { + x.Items = nil + } else { + yyv10 := &x.Items + yym11 := z.DecBinary() + _ = yym11 + if false { + } else { + h.decSliceNetworkPolicy((*[]NetworkPolicy)(yyv10), d) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *NetworkPolicyList) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj12 int + var yyb12 bool + var yyhl12 bool = l >= 0 + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv13 := &x.Kind + yym14 := z.DecBinary() + _ = yym14 + if false { + } else { + *((*string)(yyv13)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv15 := &x.APIVersion + yym16 := z.DecBinary() + _ = yym16 + if false { + } else { + *((*string)(yyv15)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ListMeta = pkg1_v1.ListMeta{} + } else { + yyv17 := &x.ListMeta + yym18 := z.DecBinary() + _ = yym18 + if false { + } else if z.HasExtensions() && z.DecExt(yyv17) { + } else { + z.DecFallback(yyv17, false) + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Items = nil + } else { + yyv19 := &x.Items + yym20 := z.DecBinary() + _ = yym20 + if false { + } else { + h.decSliceNetworkPolicy((*[]NetworkPolicy)(yyv19), d) + } + } + for { + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj12-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) encSliceNetworkPolicyIngressRule(v []NetworkPolicyIngressRule, e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + r.EncodeArrayStart(len(v)) + for _, yyv1 := range v { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy2 := &yyv1 + yy2.CodecEncodeSelf(e) + } + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) decSliceNetworkPolicyIngressRule(v *[]NetworkPolicyIngressRule, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + + yyv1 := *v + yyh1, yyl1 := z.DecSliceHelperStart() + var yyc1 bool + _ = yyc1 + if yyl1 == 0 { + if yyv1 == nil { + yyv1 = []NetworkPolicyIngressRule{} + yyc1 = true + } else if len(yyv1) != 0 { + yyv1 = yyv1[:0] + yyc1 = true + } + } else if yyl1 > 0 { + var yyrr1, yyrl1 int + var yyrt1 bool + _, _ = yyrl1, yyrt1 + yyrr1 = yyl1 // len(yyv1) + if yyl1 > cap(yyv1) { + + yyrg1 := len(yyv1) > 0 + yyv21 := yyv1 + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 48) + if yyrt1 { + if yyrl1 <= cap(yyv1) { + yyv1 = yyv1[:yyrl1] + } else { + yyv1 = make([]NetworkPolicyIngressRule, yyrl1) + } + } else { + yyv1 = make([]NetworkPolicyIngressRule, yyrl1) + } + yyc1 = true + yyrr1 = len(yyv1) + if yyrg1 { + copy(yyv1, yyv21) + } + } else if yyl1 != len(yyv1) { + yyv1 = yyv1[:yyl1] + yyc1 = true + } + yyj1 := 0 + for ; yyj1 < yyrr1; yyj1++ { + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = NetworkPolicyIngressRule{} + } else { + yyv2 := &yyv1[yyj1] + yyv2.CodecDecodeSelf(d) + } + + } + if yyrt1 { + for ; yyj1 < yyl1; yyj1++ { + yyv1 = append(yyv1, NetworkPolicyIngressRule{}) + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = NetworkPolicyIngressRule{} + } else { + yyv3 := &yyv1[yyj1] + yyv3.CodecDecodeSelf(d) + } + + } + } + + } else { + yyj1 := 0 + for ; !r.CheckBreak(); yyj1++ { + + if yyj1 >= len(yyv1) { + yyv1 = append(yyv1, NetworkPolicyIngressRule{}) // var yyz1 NetworkPolicyIngressRule + yyc1 = true + } + yyh1.ElemContainerState(yyj1) + if yyj1 < len(yyv1) { + if r.TryDecodeAsNil() { + yyv1[yyj1] = NetworkPolicyIngressRule{} + } else { + yyv4 := &yyv1[yyj1] + yyv4.CodecDecodeSelf(d) + } + + } else { + z.DecSwallow() + } + + } + if yyj1 < len(yyv1) { + yyv1 = yyv1[:yyj1] + yyc1 = true + } else if yyj1 == 0 && yyv1 == nil { + yyv1 = []NetworkPolicyIngressRule{} + yyc1 = true + } + } + yyh1.End() + if yyc1 { + *v = yyv1 + } +} + +func (x codecSelfer1234) encSliceNetworkPolicyPort(v []NetworkPolicyPort, e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + r.EncodeArrayStart(len(v)) + for _, yyv1 := range v { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy2 := &yyv1 + yy2.CodecEncodeSelf(e) + } + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) decSliceNetworkPolicyPort(v *[]NetworkPolicyPort, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + + yyv1 := *v + yyh1, yyl1 := z.DecSliceHelperStart() + var yyc1 bool + _ = yyc1 + if yyl1 == 0 { + if yyv1 == nil { + yyv1 = []NetworkPolicyPort{} + yyc1 = true + } else if len(yyv1) != 0 { + yyv1 = yyv1[:0] + yyc1 = true + } + } else if yyl1 > 0 { + var yyrr1, yyrl1 int + var yyrt1 bool + _, _ = yyrl1, yyrt1 + yyrr1 = yyl1 // len(yyv1) + if yyl1 > cap(yyv1) { + + yyrg1 := len(yyv1) > 0 + yyv21 := yyv1 + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 16) + if yyrt1 { + if yyrl1 <= cap(yyv1) { + yyv1 = yyv1[:yyrl1] + } else { + yyv1 = make([]NetworkPolicyPort, yyrl1) + } + } else { + yyv1 = make([]NetworkPolicyPort, yyrl1) + } + yyc1 = true + yyrr1 = len(yyv1) + if yyrg1 { + copy(yyv1, yyv21) + } + } else if yyl1 != len(yyv1) { + yyv1 = yyv1[:yyl1] + yyc1 = true + } + yyj1 := 0 + for ; yyj1 < yyrr1; yyj1++ { + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = NetworkPolicyPort{} + } else { + yyv2 := &yyv1[yyj1] + yyv2.CodecDecodeSelf(d) + } + + } + if yyrt1 { + for ; yyj1 < yyl1; yyj1++ { + yyv1 = append(yyv1, NetworkPolicyPort{}) + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = NetworkPolicyPort{} + } else { + yyv3 := &yyv1[yyj1] + yyv3.CodecDecodeSelf(d) + } + + } + } + + } else { + yyj1 := 0 + for ; !r.CheckBreak(); yyj1++ { + + if yyj1 >= len(yyv1) { + yyv1 = append(yyv1, NetworkPolicyPort{}) // var yyz1 NetworkPolicyPort + yyc1 = true + } + yyh1.ElemContainerState(yyj1) + if yyj1 < len(yyv1) { + if r.TryDecodeAsNil() { + yyv1[yyj1] = NetworkPolicyPort{} + } else { + yyv4 := &yyv1[yyj1] + yyv4.CodecDecodeSelf(d) + } + + } else { + z.DecSwallow() + } + + } + if yyj1 < len(yyv1) { + yyv1 = yyv1[:yyj1] + yyc1 = true + } else if yyj1 == 0 && yyv1 == nil { + yyv1 = []NetworkPolicyPort{} + yyc1 = true + } + } + yyh1.End() + if yyc1 { + *v = yyv1 + } +} + +func (x codecSelfer1234) encSliceNetworkPolicyPeer(v []NetworkPolicyPeer, e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + r.EncodeArrayStart(len(v)) + for _, yyv1 := range v { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy2 := &yyv1 + yy2.CodecEncodeSelf(e) + } + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) decSliceNetworkPolicyPeer(v *[]NetworkPolicyPeer, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + + yyv1 := *v + yyh1, yyl1 := z.DecSliceHelperStart() + var yyc1 bool + _ = yyc1 + if yyl1 == 0 { + if yyv1 == nil { + yyv1 = []NetworkPolicyPeer{} + yyc1 = true + } else if len(yyv1) != 0 { + yyv1 = yyv1[:0] + yyc1 = true + } + } else if yyl1 > 0 { + var yyrr1, yyrl1 int + var yyrt1 bool + _, _ = yyrl1, yyrt1 + yyrr1 = yyl1 // len(yyv1) + if yyl1 > cap(yyv1) { + + yyrg1 := len(yyv1) > 0 + yyv21 := yyv1 + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 16) + if yyrt1 { + if yyrl1 <= cap(yyv1) { + yyv1 = yyv1[:yyrl1] + } else { + yyv1 = make([]NetworkPolicyPeer, yyrl1) + } + } else { + yyv1 = make([]NetworkPolicyPeer, yyrl1) + } + yyc1 = true + yyrr1 = len(yyv1) + if yyrg1 { + copy(yyv1, yyv21) + } + } else if yyl1 != len(yyv1) { + yyv1 = yyv1[:yyl1] + yyc1 = true + } + yyj1 := 0 + for ; yyj1 < yyrr1; yyj1++ { + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = NetworkPolicyPeer{} + } else { + yyv2 := &yyv1[yyj1] + yyv2.CodecDecodeSelf(d) + } + + } + if yyrt1 { + for ; yyj1 < yyl1; yyj1++ { + yyv1 = append(yyv1, NetworkPolicyPeer{}) + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = NetworkPolicyPeer{} + } else { + yyv3 := &yyv1[yyj1] + yyv3.CodecDecodeSelf(d) + } + + } + } + + } else { + yyj1 := 0 + for ; !r.CheckBreak(); yyj1++ { + + if yyj1 >= len(yyv1) { + yyv1 = append(yyv1, NetworkPolicyPeer{}) // var yyz1 NetworkPolicyPeer + yyc1 = true + } + yyh1.ElemContainerState(yyj1) + if yyj1 < len(yyv1) { + if r.TryDecodeAsNil() { + yyv1[yyj1] = NetworkPolicyPeer{} + } else { + yyv4 := &yyv1[yyj1] + yyv4.CodecDecodeSelf(d) + } + + } else { + z.DecSwallow() + } + + } + if yyj1 < len(yyv1) { + yyv1 = yyv1[:yyj1] + yyc1 = true + } else if yyj1 == 0 && yyv1 == nil { + yyv1 = []NetworkPolicyPeer{} + yyc1 = true + } + } + yyh1.End() + if yyc1 { + *v = yyv1 + } +} + +func (x codecSelfer1234) encSliceNetworkPolicy(v []NetworkPolicy, e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + r.EncodeArrayStart(len(v)) + for _, yyv1 := range v { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy2 := &yyv1 + yy2.CodecEncodeSelf(e) + } + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) decSliceNetworkPolicy(v *[]NetworkPolicy, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + + yyv1 := *v + yyh1, yyl1 := z.DecSliceHelperStart() + var yyc1 bool + _ = yyc1 + if yyl1 == 0 { + if yyv1 == nil { + yyv1 = []NetworkPolicy{} + yyc1 = true + } else if len(yyv1) != 0 { + yyv1 = yyv1[:0] + yyc1 = true + } + } else if yyl1 > 0 { + var yyrr1, yyrl1 int + var yyrt1 bool + _, _ = yyrl1, yyrt1 + yyrr1 = yyl1 // len(yyv1) + if yyl1 > cap(yyv1) { + + yyrg1 := len(yyv1) > 0 + yyv21 := yyv1 + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 320) + if yyrt1 { + if yyrl1 <= cap(yyv1) { + yyv1 = yyv1[:yyrl1] + } else { + yyv1 = make([]NetworkPolicy, yyrl1) + } + } else { + yyv1 = make([]NetworkPolicy, yyrl1) + } + yyc1 = true + yyrr1 = len(yyv1) + if yyrg1 { + copy(yyv1, yyv21) + } + } else if yyl1 != len(yyv1) { + yyv1 = yyv1[:yyl1] + yyc1 = true + } + yyj1 := 0 + for ; yyj1 < yyrr1; yyj1++ { + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = NetworkPolicy{} + } else { + yyv2 := &yyv1[yyj1] + yyv2.CodecDecodeSelf(d) + } + + } + if yyrt1 { + for ; yyj1 < yyl1; yyj1++ { + yyv1 = append(yyv1, NetworkPolicy{}) + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = NetworkPolicy{} + } else { + yyv3 := &yyv1[yyj1] + yyv3.CodecDecodeSelf(d) + } + + } + } + + } else { + yyj1 := 0 + for ; !r.CheckBreak(); yyj1++ { + + if yyj1 >= len(yyv1) { + yyv1 = append(yyv1, NetworkPolicy{}) // var yyz1 NetworkPolicy + yyc1 = true + } + yyh1.ElemContainerState(yyj1) + if yyj1 < len(yyv1) { + if r.TryDecodeAsNil() { + yyv1[yyj1] = NetworkPolicy{} + } else { + yyv4 := &yyv1[yyj1] + yyv4.CodecDecodeSelf(d) + } + + } else { + z.DecSwallow() + } + + } + if yyj1 < len(yyv1) { + yyv1 = yyv1[:yyj1] + yyc1 = true + } else if yyj1 == 0 && yyv1 == nil { + yyv1 = []NetworkPolicy{} + yyc1 = true + } + } + yyh1.End() + if yyc1 { + *v = yyv1 + } +} diff --git a/vendor/k8s.io/client-go/pkg/apis/networking/v1/types.go b/vendor/k8s.io/client-go/pkg/apis/networking/v1/types.go new file mode 100644 index 00000000..a31026a6 --- /dev/null +++ b/vendor/k8s.io/client-go/pkg/apis/networking/v1/types.go @@ -0,0 +1,120 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +import ( + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/util/intstr" + "k8s.io/client-go/pkg/api/v1" +) + +// +genclient=true + +// NetworkPolicy describes what network traffic is allowed for a set of Pods +type NetworkPolicy struct { + metav1.TypeMeta `json:",inline"` + // Standard object's metadata. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + // +optional + metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` + + // Specification of the desired behavior for this NetworkPolicy. + // +optional + Spec NetworkPolicySpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` +} + +// NetworkPolicySpec provides the specification of a NetworkPolicy +type NetworkPolicySpec struct { + // Selects the pods to which this NetworkPolicy object applies. The array of + // ingress rules is applied to any pods selected by this field. Multiple network + // policies can select the same set of pods. In this case, the ingress rules for + // each are combined additively. This field is NOT optional and follows standard + // label selector semantics. An empty podSelector matches all pods in this + // namespace. + PodSelector metav1.LabelSelector `json:"podSelector" protobuf:"bytes,1,opt,name=podSelector"` + + // List of ingress rules to be applied to the selected pods. Traffic is allowed to + // a pod if there are no NetworkPolicies selecting the pod + // (and cluster policy otherwise allows the traffic), OR if the traffic source is + // the pod's local node, OR if the traffic matches at least one ingress rule + // across all of the NetworkPolicy objects whose podSelector matches the pod. If + // this field is empty then this NetworkPolicy does not allow any traffic (and serves + // solely to ensure that the pods it selects are isolated by default) + // +optional + Ingress []NetworkPolicyIngressRule `json:"ingress,omitempty" protobuf:"bytes,2,rep,name=ingress"` +} + +// NetworkPolicyIngressRule describes a particular set of traffic that is allowed to the pods +// matched by a NetworkPolicySpec's podSelector. The traffic must match both ports and from. +type NetworkPolicyIngressRule struct { + // List of ports which should be made accessible on the pods selected for this + // rule. Each item in this list is combined using a logical OR. If this field is + // empty or missing, this rule matches all ports (traffic not restricted by port). + // If this field is present and contains at least one item, then this rule allows + // traffic only if the traffic matches at least one port in the list. + // +optional + Ports []NetworkPolicyPort `json:"ports,omitempty" protobuf:"bytes,1,rep,name=ports"` + + // List of sources which should be able to access the pods selected for this rule. + // Items in this list are combined using a logical OR operation. If this field is + // empty or missing, this rule matches all sources (traffic not restricted by + // source). If this field is present and contains at least on item, this rule + // allows traffic only if the traffic matches at least one item in the from list. + // +optional + From []NetworkPolicyPeer `json:"from,omitempty" protobuf:"bytes,2,rep,name=from"` +} + +// NetworkPolicyPort describes a port to allow traffic on +type NetworkPolicyPort struct { + // The protocol (TCP or UDP) which traffic must match. If not specified, this + // field defaults to TCP. + // +optional + Protocol *v1.Protocol `json:"protocol,omitempty" protobuf:"bytes,1,opt,name=protocol,casttype=k8s.io/kubernetes/pkg/api/v1.Protocol"` + + // The port on the given protocol. This can either be a numerical or named port on + // a pod. If this field is not provided, this matches all port names and numbers. + // +optional + Port *intstr.IntOrString `json:"port,omitempty" protobuf:"bytes,2,opt,name=port"` +} + +// NetworkPolicyPeer describes a peer to allow traffic from. Exactly one of its fields +// must be specified. +type NetworkPolicyPeer struct { + // This is a label selector which selects Pods in this namespace. This field + // follows standard label selector semantics. If present but empty, this selector + // selects all pods in this namespace. + // +optional + PodSelector *metav1.LabelSelector `json:"podSelector,omitempty" protobuf:"bytes,1,opt,name=podSelector"` + + // Selects Namespaces using cluster scoped-labels. This matches all pods in all + // namespaces selected by this label selector. This field follows standard label + // selector semantics. If present but empty, this selector selects all namespaces. + // +optional + NamespaceSelector *metav1.LabelSelector `json:"namespaceSelector,omitempty" protobuf:"bytes,2,opt,name=namespaceSelector"` +} + +// NetworkPolicyList is a list of NetworkPolicy objects. +type NetworkPolicyList struct { + metav1.TypeMeta `json:",inline"` + // Standard list metadata. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + // +optional + metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` + + // Items is a list of schema objects. + Items []NetworkPolicy `json:"items" protobuf:"bytes,2,rep,name=items"` +} diff --git a/vendor/k8s.io/client-go/pkg/apis/networking/v1/types_swagger_doc_generated.go b/vendor/k8s.io/client-go/pkg/apis/networking/v1/types_swagger_doc_generated.go new file mode 100644 index 00000000..c3c91163 --- /dev/null +++ b/vendor/k8s.io/client-go/pkg/apis/networking/v1/types_swagger_doc_generated.go @@ -0,0 +1,90 @@ +/* +Copyright 2016 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +// This file contains a collection of methods that can be used from go-restful to +// generate Swagger API documentation for its models. Please read this PR for more +// information on the implementation: https://github.com/emicklei/go-restful/pull/215 +// +// TODOs are ignored from the parser (e.g. TODO(andronat):... || TODO:...) if and only if +// they are on one line! For multiple line or blocks that you want to ignore use ---. +// Any context after a --- is ignored. +// +// Those methods can be generated by using hack/update-generated-swagger-docs.sh + +// AUTO-GENERATED FUNCTIONS START HERE +var map_NetworkPolicy = map[string]string{ + "": "NetworkPolicy describes what network traffic is allowed for a set of Pods", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "Specification of the desired behavior for this NetworkPolicy.", +} + +func (NetworkPolicy) SwaggerDoc() map[string]string { + return map_NetworkPolicy +} + +var map_NetworkPolicyIngressRule = map[string]string{ + "": "NetworkPolicyIngressRule describes a particular set of traffic that is allowed to the pods matched by a NetworkPolicySpec's podSelector. The traffic must match both ports and from.", + "ports": "List of ports which should be made accessible on the pods selected for this rule. Each item in this list is combined using a logical OR. If this field is empty or missing, this rule matches all ports (traffic not restricted by port). If this field is present and contains at least one item, then this rule allows traffic only if the traffic matches at least one port in the list.", + "from": "List of sources which should be able to access the pods selected for this rule. Items in this list are combined using a logical OR operation. If this field is empty or missing, this rule matches all sources (traffic not restricted by source). If this field is present and contains at least on item, this rule allows traffic only if the traffic matches at least one item in the from list.", +} + +func (NetworkPolicyIngressRule) SwaggerDoc() map[string]string { + return map_NetworkPolicyIngressRule +} + +var map_NetworkPolicyList = map[string]string{ + "": "NetworkPolicyList is a list of NetworkPolicy objects.", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "items": "Items is a list of schema objects.", +} + +func (NetworkPolicyList) SwaggerDoc() map[string]string { + return map_NetworkPolicyList +} + +var map_NetworkPolicyPeer = map[string]string{ + "": "NetworkPolicyPeer describes a peer to allow traffic from. Exactly one of its fields must be specified.", + "podSelector": "This is a label selector which selects Pods in this namespace. This field follows standard label selector semantics. If present but empty, this selector selects all pods in this namespace.", + "namespaceSelector": "Selects Namespaces using cluster scoped-labels. This matches all pods in all namespaces selected by this label selector. This field follows standard label selector semantics. If present but empty, this selector selects all namespaces.", +} + +func (NetworkPolicyPeer) SwaggerDoc() map[string]string { + return map_NetworkPolicyPeer +} + +var map_NetworkPolicyPort = map[string]string{ + "": "NetworkPolicyPort describes a port to allow traffic on", + "protocol": "The protocol (TCP or UDP) which traffic must match. If not specified, this field defaults to TCP.", + "port": "The port on the given protocol. This can either be a numerical or named port on a pod. If this field is not provided, this matches all port names and numbers.", +} + +func (NetworkPolicyPort) SwaggerDoc() map[string]string { + return map_NetworkPolicyPort +} + +var map_NetworkPolicySpec = map[string]string{ + "": "NetworkPolicySpec provides the specification of a NetworkPolicy", + "podSelector": "Selects the pods to which this NetworkPolicy object applies. The array of ingress rules is applied to any pods selected by this field. Multiple network policies can select the same set of pods. In this case, the ingress rules for each are combined additively. This field is NOT optional and follows standard label selector semantics. An empty podSelector matches all pods in this namespace.", + "ingress": "List of ingress rules to be applied to the selected pods. Traffic is allowed to a pod if there are no NetworkPolicies selecting the pod (and cluster policy otherwise allows the traffic), OR if the traffic source is the pod's local node, OR if the traffic matches at least one ingress rule across all of the NetworkPolicy objects whose podSelector matches the pod. If this field is empty then this NetworkPolicy does not allow any traffic (and serves solely to ensure that the pods it selects are isolated by default)", +} + +func (NetworkPolicySpec) SwaggerDoc() map[string]string { + return map_NetworkPolicySpec +} + +// AUTO-GENERATED FUNCTIONS END HERE diff --git a/vendor/k8s.io/client-go/pkg/apis/networking/v1/zz_generated.conversion.go b/vendor/k8s.io/client-go/pkg/apis/networking/v1/zz_generated.conversion.go new file mode 100644 index 00000000..500438e9 --- /dev/null +++ b/vendor/k8s.io/client-go/pkg/apis/networking/v1/zz_generated.conversion.go @@ -0,0 +1,195 @@ +// +build !ignore_autogenerated + +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This file was autogenerated by conversion-gen. Do not edit it manually! + +package v1 + +import ( + meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + conversion "k8s.io/apimachinery/pkg/conversion" + runtime "k8s.io/apimachinery/pkg/runtime" + intstr "k8s.io/apimachinery/pkg/util/intstr" + api "k8s.io/client-go/pkg/api" + api_v1 "k8s.io/client-go/pkg/api/v1" + networking "k8s.io/client-go/pkg/apis/networking" + unsafe "unsafe" +) + +func init() { + SchemeBuilder.Register(RegisterConversions) +} + +// RegisterConversions adds conversion functions to the given scheme. +// Public to allow building arbitrary schemes. +func RegisterConversions(scheme *runtime.Scheme) error { + return scheme.AddGeneratedConversionFuncs( + Convert_v1_NetworkPolicy_To_networking_NetworkPolicy, + Convert_networking_NetworkPolicy_To_v1_NetworkPolicy, + Convert_v1_NetworkPolicyIngressRule_To_networking_NetworkPolicyIngressRule, + Convert_networking_NetworkPolicyIngressRule_To_v1_NetworkPolicyIngressRule, + Convert_v1_NetworkPolicyList_To_networking_NetworkPolicyList, + Convert_networking_NetworkPolicyList_To_v1_NetworkPolicyList, + Convert_v1_NetworkPolicyPeer_To_networking_NetworkPolicyPeer, + Convert_networking_NetworkPolicyPeer_To_v1_NetworkPolicyPeer, + Convert_v1_NetworkPolicyPort_To_networking_NetworkPolicyPort, + Convert_networking_NetworkPolicyPort_To_v1_NetworkPolicyPort, + Convert_v1_NetworkPolicySpec_To_networking_NetworkPolicySpec, + Convert_networking_NetworkPolicySpec_To_v1_NetworkPolicySpec, + ) +} + +func autoConvert_v1_NetworkPolicy_To_networking_NetworkPolicy(in *NetworkPolicy, out *networking.NetworkPolicy, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + if err := Convert_v1_NetworkPolicySpec_To_networking_NetworkPolicySpec(&in.Spec, &out.Spec, s); err != nil { + return err + } + return nil +} + +// Convert_v1_NetworkPolicy_To_networking_NetworkPolicy is an autogenerated conversion function. +func Convert_v1_NetworkPolicy_To_networking_NetworkPolicy(in *NetworkPolicy, out *networking.NetworkPolicy, s conversion.Scope) error { + return autoConvert_v1_NetworkPolicy_To_networking_NetworkPolicy(in, out, s) +} + +func autoConvert_networking_NetworkPolicy_To_v1_NetworkPolicy(in *networking.NetworkPolicy, out *NetworkPolicy, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + if err := Convert_networking_NetworkPolicySpec_To_v1_NetworkPolicySpec(&in.Spec, &out.Spec, s); err != nil { + return err + } + return nil +} + +// Convert_networking_NetworkPolicy_To_v1_NetworkPolicy is an autogenerated conversion function. +func Convert_networking_NetworkPolicy_To_v1_NetworkPolicy(in *networking.NetworkPolicy, out *NetworkPolicy, s conversion.Scope) error { + return autoConvert_networking_NetworkPolicy_To_v1_NetworkPolicy(in, out, s) +} + +func autoConvert_v1_NetworkPolicyIngressRule_To_networking_NetworkPolicyIngressRule(in *NetworkPolicyIngressRule, out *networking.NetworkPolicyIngressRule, s conversion.Scope) error { + out.Ports = *(*[]networking.NetworkPolicyPort)(unsafe.Pointer(&in.Ports)) + out.From = *(*[]networking.NetworkPolicyPeer)(unsafe.Pointer(&in.From)) + return nil +} + +// Convert_v1_NetworkPolicyIngressRule_To_networking_NetworkPolicyIngressRule is an autogenerated conversion function. +func Convert_v1_NetworkPolicyIngressRule_To_networking_NetworkPolicyIngressRule(in *NetworkPolicyIngressRule, out *networking.NetworkPolicyIngressRule, s conversion.Scope) error { + return autoConvert_v1_NetworkPolicyIngressRule_To_networking_NetworkPolicyIngressRule(in, out, s) +} + +func autoConvert_networking_NetworkPolicyIngressRule_To_v1_NetworkPolicyIngressRule(in *networking.NetworkPolicyIngressRule, out *NetworkPolicyIngressRule, s conversion.Scope) error { + out.Ports = *(*[]NetworkPolicyPort)(unsafe.Pointer(&in.Ports)) + out.From = *(*[]NetworkPolicyPeer)(unsafe.Pointer(&in.From)) + return nil +} + +// Convert_networking_NetworkPolicyIngressRule_To_v1_NetworkPolicyIngressRule is an autogenerated conversion function. +func Convert_networking_NetworkPolicyIngressRule_To_v1_NetworkPolicyIngressRule(in *networking.NetworkPolicyIngressRule, out *NetworkPolicyIngressRule, s conversion.Scope) error { + return autoConvert_networking_NetworkPolicyIngressRule_To_v1_NetworkPolicyIngressRule(in, out, s) +} + +func autoConvert_v1_NetworkPolicyList_To_networking_NetworkPolicyList(in *NetworkPolicyList, out *networking.NetworkPolicyList, s conversion.Scope) error { + out.ListMeta = in.ListMeta + out.Items = *(*[]networking.NetworkPolicy)(unsafe.Pointer(&in.Items)) + return nil +} + +// Convert_v1_NetworkPolicyList_To_networking_NetworkPolicyList is an autogenerated conversion function. +func Convert_v1_NetworkPolicyList_To_networking_NetworkPolicyList(in *NetworkPolicyList, out *networking.NetworkPolicyList, s conversion.Scope) error { + return autoConvert_v1_NetworkPolicyList_To_networking_NetworkPolicyList(in, out, s) +} + +func autoConvert_networking_NetworkPolicyList_To_v1_NetworkPolicyList(in *networking.NetworkPolicyList, out *NetworkPolicyList, s conversion.Scope) error { + out.ListMeta = in.ListMeta + if in.Items == nil { + out.Items = make([]NetworkPolicy, 0) + } else { + out.Items = *(*[]NetworkPolicy)(unsafe.Pointer(&in.Items)) + } + return nil +} + +// Convert_networking_NetworkPolicyList_To_v1_NetworkPolicyList is an autogenerated conversion function. +func Convert_networking_NetworkPolicyList_To_v1_NetworkPolicyList(in *networking.NetworkPolicyList, out *NetworkPolicyList, s conversion.Scope) error { + return autoConvert_networking_NetworkPolicyList_To_v1_NetworkPolicyList(in, out, s) +} + +func autoConvert_v1_NetworkPolicyPeer_To_networking_NetworkPolicyPeer(in *NetworkPolicyPeer, out *networking.NetworkPolicyPeer, s conversion.Scope) error { + out.PodSelector = (*meta_v1.LabelSelector)(unsafe.Pointer(in.PodSelector)) + out.NamespaceSelector = (*meta_v1.LabelSelector)(unsafe.Pointer(in.NamespaceSelector)) + return nil +} + +// Convert_v1_NetworkPolicyPeer_To_networking_NetworkPolicyPeer is an autogenerated conversion function. +func Convert_v1_NetworkPolicyPeer_To_networking_NetworkPolicyPeer(in *NetworkPolicyPeer, out *networking.NetworkPolicyPeer, s conversion.Scope) error { + return autoConvert_v1_NetworkPolicyPeer_To_networking_NetworkPolicyPeer(in, out, s) +} + +func autoConvert_networking_NetworkPolicyPeer_To_v1_NetworkPolicyPeer(in *networking.NetworkPolicyPeer, out *NetworkPolicyPeer, s conversion.Scope) error { + out.PodSelector = (*meta_v1.LabelSelector)(unsafe.Pointer(in.PodSelector)) + out.NamespaceSelector = (*meta_v1.LabelSelector)(unsafe.Pointer(in.NamespaceSelector)) + return nil +} + +// Convert_networking_NetworkPolicyPeer_To_v1_NetworkPolicyPeer is an autogenerated conversion function. +func Convert_networking_NetworkPolicyPeer_To_v1_NetworkPolicyPeer(in *networking.NetworkPolicyPeer, out *NetworkPolicyPeer, s conversion.Scope) error { + return autoConvert_networking_NetworkPolicyPeer_To_v1_NetworkPolicyPeer(in, out, s) +} + +func autoConvert_v1_NetworkPolicyPort_To_networking_NetworkPolicyPort(in *NetworkPolicyPort, out *networking.NetworkPolicyPort, s conversion.Scope) error { + out.Protocol = (*api.Protocol)(unsafe.Pointer(in.Protocol)) + out.Port = (*intstr.IntOrString)(unsafe.Pointer(in.Port)) + return nil +} + +// Convert_v1_NetworkPolicyPort_To_networking_NetworkPolicyPort is an autogenerated conversion function. +func Convert_v1_NetworkPolicyPort_To_networking_NetworkPolicyPort(in *NetworkPolicyPort, out *networking.NetworkPolicyPort, s conversion.Scope) error { + return autoConvert_v1_NetworkPolicyPort_To_networking_NetworkPolicyPort(in, out, s) +} + +func autoConvert_networking_NetworkPolicyPort_To_v1_NetworkPolicyPort(in *networking.NetworkPolicyPort, out *NetworkPolicyPort, s conversion.Scope) error { + out.Protocol = (*api_v1.Protocol)(unsafe.Pointer(in.Protocol)) + out.Port = (*intstr.IntOrString)(unsafe.Pointer(in.Port)) + return nil +} + +// Convert_networking_NetworkPolicyPort_To_v1_NetworkPolicyPort is an autogenerated conversion function. +func Convert_networking_NetworkPolicyPort_To_v1_NetworkPolicyPort(in *networking.NetworkPolicyPort, out *NetworkPolicyPort, s conversion.Scope) error { + return autoConvert_networking_NetworkPolicyPort_To_v1_NetworkPolicyPort(in, out, s) +} + +func autoConvert_v1_NetworkPolicySpec_To_networking_NetworkPolicySpec(in *NetworkPolicySpec, out *networking.NetworkPolicySpec, s conversion.Scope) error { + out.PodSelector = in.PodSelector + out.Ingress = *(*[]networking.NetworkPolicyIngressRule)(unsafe.Pointer(&in.Ingress)) + return nil +} + +// Convert_v1_NetworkPolicySpec_To_networking_NetworkPolicySpec is an autogenerated conversion function. +func Convert_v1_NetworkPolicySpec_To_networking_NetworkPolicySpec(in *NetworkPolicySpec, out *networking.NetworkPolicySpec, s conversion.Scope) error { + return autoConvert_v1_NetworkPolicySpec_To_networking_NetworkPolicySpec(in, out, s) +} + +func autoConvert_networking_NetworkPolicySpec_To_v1_NetworkPolicySpec(in *networking.NetworkPolicySpec, out *NetworkPolicySpec, s conversion.Scope) error { + out.PodSelector = in.PodSelector + out.Ingress = *(*[]NetworkPolicyIngressRule)(unsafe.Pointer(&in.Ingress)) + return nil +} + +// Convert_networking_NetworkPolicySpec_To_v1_NetworkPolicySpec is an autogenerated conversion function. +func Convert_networking_NetworkPolicySpec_To_v1_NetworkPolicySpec(in *networking.NetworkPolicySpec, out *NetworkPolicySpec, s conversion.Scope) error { + return autoConvert_networking_NetworkPolicySpec_To_v1_NetworkPolicySpec(in, out, s) +} diff --git a/vendor/k8s.io/client-go/pkg/apis/networking/v1/zz_generated.deepcopy.go b/vendor/k8s.io/client-go/pkg/apis/networking/v1/zz_generated.deepcopy.go new file mode 100644 index 00000000..6d9b335d --- /dev/null +++ b/vendor/k8s.io/client-go/pkg/apis/networking/v1/zz_generated.deepcopy.go @@ -0,0 +1,182 @@ +// +build !ignore_autogenerated + +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This file was autogenerated by deepcopy-gen. Do not edit it manually! + +package v1 + +import ( + meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + conversion "k8s.io/apimachinery/pkg/conversion" + runtime "k8s.io/apimachinery/pkg/runtime" + intstr "k8s.io/apimachinery/pkg/util/intstr" + api_v1 "k8s.io/client-go/pkg/api/v1" + reflect "reflect" +) + +func init() { + SchemeBuilder.Register(RegisterDeepCopies) +} + +// RegisterDeepCopies adds deep-copy functions to the given scheme. Public +// to allow building arbitrary schemes. +func RegisterDeepCopies(scheme *runtime.Scheme) error { + return scheme.AddGeneratedDeepCopyFuncs( + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_NetworkPolicy, InType: reflect.TypeOf(&NetworkPolicy{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_NetworkPolicyIngressRule, InType: reflect.TypeOf(&NetworkPolicyIngressRule{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_NetworkPolicyList, InType: reflect.TypeOf(&NetworkPolicyList{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_NetworkPolicyPeer, InType: reflect.TypeOf(&NetworkPolicyPeer{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_NetworkPolicyPort, InType: reflect.TypeOf(&NetworkPolicyPort{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_NetworkPolicySpec, InType: reflect.TypeOf(&NetworkPolicySpec{})}, + ) +} + +// DeepCopy_v1_NetworkPolicy is an autogenerated deepcopy function. +func DeepCopy_v1_NetworkPolicy(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*NetworkPolicy) + out := out.(*NetworkPolicy) + *out = *in + if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { + return err + } else { + out.ObjectMeta = *newVal.(*meta_v1.ObjectMeta) + } + if err := DeepCopy_v1_NetworkPolicySpec(&in.Spec, &out.Spec, c); err != nil { + return err + } + return nil + } +} + +// DeepCopy_v1_NetworkPolicyIngressRule is an autogenerated deepcopy function. +func DeepCopy_v1_NetworkPolicyIngressRule(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*NetworkPolicyIngressRule) + out := out.(*NetworkPolicyIngressRule) + *out = *in + if in.Ports != nil { + in, out := &in.Ports, &out.Ports + *out = make([]NetworkPolicyPort, len(*in)) + for i := range *in { + if err := DeepCopy_v1_NetworkPolicyPort(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + if in.From != nil { + in, out := &in.From, &out.From + *out = make([]NetworkPolicyPeer, len(*in)) + for i := range *in { + if err := DeepCopy_v1_NetworkPolicyPeer(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} + +// DeepCopy_v1_NetworkPolicyList is an autogenerated deepcopy function. +func DeepCopy_v1_NetworkPolicyList(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*NetworkPolicyList) + out := out.(*NetworkPolicyList) + *out = *in + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]NetworkPolicy, len(*in)) + for i := range *in { + if err := DeepCopy_v1_NetworkPolicy(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} + +// DeepCopy_v1_NetworkPolicyPeer is an autogenerated deepcopy function. +func DeepCopy_v1_NetworkPolicyPeer(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*NetworkPolicyPeer) + out := out.(*NetworkPolicyPeer) + *out = *in + if in.PodSelector != nil { + in, out := &in.PodSelector, &out.PodSelector + if newVal, err := c.DeepCopy(*in); err != nil { + return err + } else { + *out = newVal.(*meta_v1.LabelSelector) + } + } + if in.NamespaceSelector != nil { + in, out := &in.NamespaceSelector, &out.NamespaceSelector + if newVal, err := c.DeepCopy(*in); err != nil { + return err + } else { + *out = newVal.(*meta_v1.LabelSelector) + } + } + return nil + } +} + +// DeepCopy_v1_NetworkPolicyPort is an autogenerated deepcopy function. +func DeepCopy_v1_NetworkPolicyPort(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*NetworkPolicyPort) + out := out.(*NetworkPolicyPort) + *out = *in + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(api_v1.Protocol) + **out = **in + } + if in.Port != nil { + in, out := &in.Port, &out.Port + *out = new(intstr.IntOrString) + **out = **in + } + return nil + } +} + +// DeepCopy_v1_NetworkPolicySpec is an autogenerated deepcopy function. +func DeepCopy_v1_NetworkPolicySpec(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*NetworkPolicySpec) + out := out.(*NetworkPolicySpec) + *out = *in + if newVal, err := c.DeepCopy(&in.PodSelector); err != nil { + return err + } else { + out.PodSelector = *newVal.(*meta_v1.LabelSelector) + } + if in.Ingress != nil { + in, out := &in.Ingress, &out.Ingress + *out = make([]NetworkPolicyIngressRule, len(*in)) + for i := range *in { + if err := DeepCopy_v1_NetworkPolicyIngressRule(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} diff --git a/vendor/k8s.io/client-go/pkg/apis/networking/v1/zz_generated.defaults.go b/vendor/k8s.io/client-go/pkg/apis/networking/v1/zz_generated.defaults.go new file mode 100644 index 00000000..0319c88a --- /dev/null +++ b/vendor/k8s.io/client-go/pkg/apis/networking/v1/zz_generated.defaults.go @@ -0,0 +1,51 @@ +// +build !ignore_autogenerated + +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This file was autogenerated by defaulter-gen. Do not edit it manually! + +package v1 + +import ( + runtime "k8s.io/apimachinery/pkg/runtime" +) + +// RegisterDefaults adds defaulters functions to the given scheme. +// Public to allow building arbitrary schemes. +// All generated defaulters are covering - they call all nested defaulters. +func RegisterDefaults(scheme *runtime.Scheme) error { + scheme.AddTypeDefaultingFunc(&NetworkPolicy{}, func(obj interface{}) { SetObjectDefaults_NetworkPolicy(obj.(*NetworkPolicy)) }) + scheme.AddTypeDefaultingFunc(&NetworkPolicyList{}, func(obj interface{}) { SetObjectDefaults_NetworkPolicyList(obj.(*NetworkPolicyList)) }) + return nil +} + +func SetObjectDefaults_NetworkPolicy(in *NetworkPolicy) { + for i := range in.Spec.Ingress { + a := &in.Spec.Ingress[i] + for j := range a.Ports { + b := &a.Ports[j] + SetDefaults_NetworkPolicyPort(b) + } + } +} + +func SetObjectDefaults_NetworkPolicyList(in *NetworkPolicyList) { + for i := range in.Items { + a := &in.Items[i] + SetObjectDefaults_NetworkPolicy(a) + } +} diff --git a/vendor/k8s.io/client-go/pkg/apis/networking/zz_generated.deepcopy.go b/vendor/k8s.io/client-go/pkg/apis/networking/zz_generated.deepcopy.go new file mode 100644 index 00000000..80286844 --- /dev/null +++ b/vendor/k8s.io/client-go/pkg/apis/networking/zz_generated.deepcopy.go @@ -0,0 +1,182 @@ +// +build !ignore_autogenerated + +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This file was autogenerated by deepcopy-gen. Do not edit it manually! + +package networking + +import ( + v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + conversion "k8s.io/apimachinery/pkg/conversion" + runtime "k8s.io/apimachinery/pkg/runtime" + intstr "k8s.io/apimachinery/pkg/util/intstr" + api "k8s.io/client-go/pkg/api" + reflect "reflect" +) + +func init() { + SchemeBuilder.Register(RegisterDeepCopies) +} + +// RegisterDeepCopies adds deep-copy functions to the given scheme. Public +// to allow building arbitrary schemes. +func RegisterDeepCopies(scheme *runtime.Scheme) error { + return scheme.AddGeneratedDeepCopyFuncs( + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_networking_NetworkPolicy, InType: reflect.TypeOf(&NetworkPolicy{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_networking_NetworkPolicyIngressRule, InType: reflect.TypeOf(&NetworkPolicyIngressRule{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_networking_NetworkPolicyList, InType: reflect.TypeOf(&NetworkPolicyList{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_networking_NetworkPolicyPeer, InType: reflect.TypeOf(&NetworkPolicyPeer{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_networking_NetworkPolicyPort, InType: reflect.TypeOf(&NetworkPolicyPort{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_networking_NetworkPolicySpec, InType: reflect.TypeOf(&NetworkPolicySpec{})}, + ) +} + +// DeepCopy_networking_NetworkPolicy is an autogenerated deepcopy function. +func DeepCopy_networking_NetworkPolicy(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*NetworkPolicy) + out := out.(*NetworkPolicy) + *out = *in + if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { + return err + } else { + out.ObjectMeta = *newVal.(*v1.ObjectMeta) + } + if err := DeepCopy_networking_NetworkPolicySpec(&in.Spec, &out.Spec, c); err != nil { + return err + } + return nil + } +} + +// DeepCopy_networking_NetworkPolicyIngressRule is an autogenerated deepcopy function. +func DeepCopy_networking_NetworkPolicyIngressRule(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*NetworkPolicyIngressRule) + out := out.(*NetworkPolicyIngressRule) + *out = *in + if in.Ports != nil { + in, out := &in.Ports, &out.Ports + *out = make([]NetworkPolicyPort, len(*in)) + for i := range *in { + if err := DeepCopy_networking_NetworkPolicyPort(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + if in.From != nil { + in, out := &in.From, &out.From + *out = make([]NetworkPolicyPeer, len(*in)) + for i := range *in { + if err := DeepCopy_networking_NetworkPolicyPeer(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} + +// DeepCopy_networking_NetworkPolicyList is an autogenerated deepcopy function. +func DeepCopy_networking_NetworkPolicyList(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*NetworkPolicyList) + out := out.(*NetworkPolicyList) + *out = *in + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]NetworkPolicy, len(*in)) + for i := range *in { + if err := DeepCopy_networking_NetworkPolicy(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} + +// DeepCopy_networking_NetworkPolicyPeer is an autogenerated deepcopy function. +func DeepCopy_networking_NetworkPolicyPeer(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*NetworkPolicyPeer) + out := out.(*NetworkPolicyPeer) + *out = *in + if in.PodSelector != nil { + in, out := &in.PodSelector, &out.PodSelector + if newVal, err := c.DeepCopy(*in); err != nil { + return err + } else { + *out = newVal.(*v1.LabelSelector) + } + } + if in.NamespaceSelector != nil { + in, out := &in.NamespaceSelector, &out.NamespaceSelector + if newVal, err := c.DeepCopy(*in); err != nil { + return err + } else { + *out = newVal.(*v1.LabelSelector) + } + } + return nil + } +} + +// DeepCopy_networking_NetworkPolicyPort is an autogenerated deepcopy function. +func DeepCopy_networking_NetworkPolicyPort(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*NetworkPolicyPort) + out := out.(*NetworkPolicyPort) + *out = *in + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(api.Protocol) + **out = **in + } + if in.Port != nil { + in, out := &in.Port, &out.Port + *out = new(intstr.IntOrString) + **out = **in + } + return nil + } +} + +// DeepCopy_networking_NetworkPolicySpec is an autogenerated deepcopy function. +func DeepCopy_networking_NetworkPolicySpec(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*NetworkPolicySpec) + out := out.(*NetworkPolicySpec) + *out = *in + if newVal, err := c.DeepCopy(&in.PodSelector); err != nil { + return err + } else { + out.PodSelector = *newVal.(*v1.LabelSelector) + } + if in.Ingress != nil { + in, out := &in.Ingress, &out.Ingress + *out = make([]NetworkPolicyIngressRule, len(*in)) + for i := range *in { + if err := DeepCopy_networking_NetworkPolicyIngressRule(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} diff --git a/vendor/k8s.io/client-go/pkg/apis/policy/types.go b/vendor/k8s.io/client-go/pkg/apis/policy/types.go index ef2ff713..4d49da17 100644 --- a/vendor/k8s.io/client-go/pkg/apis/policy/types.go +++ b/vendor/k8s.io/client-go/pkg/apis/policy/types.go @@ -28,12 +28,19 @@ type PodDisruptionBudgetSpec struct { // absence of the evicted pod. So for example you can prevent all voluntary // evictions by specifying "100%". // +optional - MinAvailable intstr.IntOrString + MinAvailable *intstr.IntOrString // Label query over pods whose evictions are managed by the disruption // budget. // +optional Selector *metav1.LabelSelector + + // An eviction is allowed if at most "maxUnavailable" pods selected by + // "selector" are unavailable after the eviction, i.e. even in absence of + // the evicted pod. For example, one can prevent all voluntary evictions + // by specifying 0. This is a mutually exclusive setting with "minAvailable". + // +optional + MaxUnavailable *intstr.IntOrString } // PodDisruptionBudgetStatus represents information about the status of a diff --git a/vendor/k8s.io/client-go/pkg/apis/policy/v1beta1/generated.pb.go b/vendor/k8s.io/client-go/pkg/apis/policy/v1beta1/generated.pb.go index 38266b2b..0116ded2 100644 --- a/vendor/k8s.io/client-go/pkg/apis/policy/v1beta1/generated.pb.go +++ b/vendor/k8s.io/client-go/pkg/apis/policy/v1beta1/generated.pb.go @@ -39,9 +39,12 @@ import math "math" import k8s_io_apimachinery_pkg_apis_meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" +import k8s_io_apimachinery_pkg_util_intstr "k8s.io/apimachinery/pkg/util/intstr" + +import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + import strings "strings" import reflect "reflect" -import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" import io "io" @@ -216,14 +219,16 @@ func (m *PodDisruptionBudgetSpec) MarshalTo(dAtA []byte) (int, error) { _ = i var l int _ = l - dAtA[i] = 0xa - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.MinAvailable.Size())) - n7, err := m.MinAvailable.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err + if m.MinAvailable != nil { + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.MinAvailable.Size())) + n7, err := m.MinAvailable.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n7 } - i += n7 if m.Selector != nil { dAtA[i] = 0x12 i++ @@ -234,6 +239,16 @@ func (m *PodDisruptionBudgetSpec) MarshalTo(dAtA []byte) (int, error) { } i += n8 } + if m.MaxUnavailable != nil { + dAtA[i] = 0x1a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.MaxUnavailable.Size())) + n9, err := m.MaxUnavailable.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n9 + } return i, nil } @@ -256,10 +271,15 @@ func (m *PodDisruptionBudgetStatus) MarshalTo(dAtA []byte) (int, error) { i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObservedGeneration)) if len(m.DisruptedPods) > 0 { + keysForDisruptedPods := make([]string, 0, len(m.DisruptedPods)) for k := range m.DisruptedPods { + keysForDisruptedPods = append(keysForDisruptedPods, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForDisruptedPods) + for _, k := range keysForDisruptedPods { dAtA[i] = 0x12 i++ - v := m.DisruptedPods[k] + v := m.DisruptedPods[string(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -274,11 +294,11 @@ func (m *PodDisruptionBudgetStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64((&v).Size())) - n9, err := (&v).MarshalTo(dAtA[i:]) + n10, err := (&v).MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n9 + i += n10 } } dAtA[i] = 0x18 @@ -364,12 +384,18 @@ func (m *PodDisruptionBudgetList) Size() (n int) { func (m *PodDisruptionBudgetSpec) Size() (n int) { var l int _ = l - l = m.MinAvailable.Size() - n += 1 + l + sovGenerated(uint64(l)) + if m.MinAvailable != nil { + l = m.MinAvailable.Size() + n += 1 + l + sovGenerated(uint64(l)) + } if m.Selector != nil { l = m.Selector.Size() n += 1 + l + sovGenerated(uint64(l)) } + if m.MaxUnavailable != nil { + l = m.MaxUnavailable.Size() + n += 1 + l + sovGenerated(uint64(l)) + } return n } @@ -445,8 +471,9 @@ func (this *PodDisruptionBudgetSpec) String() string { return "nil" } s := strings.Join([]string{`&PodDisruptionBudgetSpec{`, - `MinAvailable:` + strings.Replace(strings.Replace(this.MinAvailable.String(), "IntOrString", "k8s_io_apimachinery_pkg_util_intstr.IntOrString", 1), `&`, ``, 1) + `,`, + `MinAvailable:` + strings.Replace(fmt.Sprintf("%v", this.MinAvailable), "IntOrString", "k8s_io_apimachinery_pkg_util_intstr.IntOrString", 1) + `,`, `Selector:` + strings.Replace(fmt.Sprintf("%v", this.Selector), "LabelSelector", "k8s_io_apimachinery_pkg_apis_meta_v1.LabelSelector", 1) + `,`, + `MaxUnavailable:` + strings.Replace(fmt.Sprintf("%v", this.MaxUnavailable), "IntOrString", "k8s_io_apimachinery_pkg_util_intstr.IntOrString", 1) + `,`, `}`, }, "") return s @@ -903,6 +930,9 @@ func (m *PodDisruptionBudgetSpec) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } + if m.MinAvailable == nil { + m.MinAvailable = &k8s_io_apimachinery_pkg_util_intstr.IntOrString{} + } if err := m.MinAvailable.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } @@ -940,6 +970,39 @@ func (m *PodDisruptionBudgetSpec) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MaxUnavailable", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.MaxUnavailable == nil { + m.MaxUnavailable = &k8s_io_apimachinery_pkg_util_intstr.IntOrString{} + } + if err := m.MaxUnavailable.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipGenerated(dAtA[iNdEx:]) @@ -1337,54 +1400,55 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 773 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x94, 0xcb, 0x6e, 0xf3, 0x44, - 0x18, 0x86, 0xe3, 0x26, 0x29, 0x61, 0x9a, 0x54, 0x65, 0xa0, 0x10, 0x22, 0xe1, 0xa2, 0xac, 0x5a, - 0x04, 0x63, 0xda, 0x22, 0x54, 0x58, 0x54, 0xd4, 0xa4, 0x82, 0xa2, 0x56, 0xa9, 0x5c, 0x24, 0x24, - 0x04, 0x12, 0x63, 0xfb, 0xc3, 0x99, 0xc6, 0x27, 0x8d, 0xc7, 0xa1, 0xd9, 0x71, 0x09, 0x2c, 0xb8, - 0xa8, 0x4a, 0x6c, 0xba, 0x44, 0x08, 0x55, 0x34, 0x70, 0x0b, 0xec, 0x91, 0xc7, 0x93, 0x83, 0x9b, - 0x44, 0x0d, 0xea, 0xaf, 0x7f, 0xe7, 0x39, 0x3c, 0xef, 0xfb, 0x9d, 0xc6, 0xe8, 0x93, 0xfe, 0x51, - 0x42, 0x58, 0x64, 0xf4, 0x53, 0x1b, 0x78, 0x08, 0x02, 0x12, 0x23, 0xee, 0x7b, 0x06, 0x8d, 0x59, - 0x62, 0xc4, 0x91, 0xcf, 0x9c, 0xa1, 0x31, 0xd8, 0xb7, 0x41, 0xd0, 0x7d, 0xc3, 0x83, 0x10, 0x38, - 0x15, 0xe0, 0x92, 0x98, 0x47, 0x22, 0xc2, 0x7b, 0x39, 0x4a, 0xa6, 0x28, 0x89, 0xfb, 0x1e, 0xc9, - 0x50, 0x92, 0xa3, 0x44, 0xa1, 0xad, 0x0f, 0x3c, 0x26, 0x7a, 0xa9, 0x4d, 0x9c, 0x28, 0x30, 0xbc, - 0xc8, 0x8b, 0x0c, 0xa9, 0x60, 0xa7, 0x3f, 0xca, 0x95, 0x5c, 0xc8, 0xaf, 0x5c, 0xb9, 0xf5, 0x91, - 0x0a, 0x8a, 0xc6, 0x2c, 0xa0, 0x4e, 0x8f, 0x85, 0xc0, 0x87, 0xd3, 0xb0, 0x02, 0x10, 0xd4, 0x18, - 0xcc, 0xc5, 0xd3, 0x32, 0x96, 0x51, 0x3c, 0x0d, 0x05, 0x0b, 0x60, 0x0e, 0xf8, 0xf8, 0x29, 0x20, - 0x71, 0x7a, 0x10, 0xd0, 0x39, 0xee, 0x70, 0x19, 0x97, 0x0a, 0xe6, 0x1b, 0x2c, 0x14, 0x89, 0xe0, - 0x73, 0xd0, 0x4c, 0x4e, 0x09, 0xf0, 0x01, 0xf0, 0x69, 0x42, 0x70, 0x43, 0x83, 0xd8, 0x87, 0x45, - 0x39, 0xbd, 0xbf, 0xb4, 0x3d, 0x0b, 0x6e, 0xb7, 0xff, 0xd0, 0x50, 0xed, 0x74, 0xc0, 0x1c, 0xc1, - 0xa2, 0x10, 0xff, 0x80, 0x6a, 0x59, 0xa5, 0x5c, 0x2a, 0x68, 0x53, 0x7b, 0x57, 0xdb, 0xdd, 0x38, - 0xf8, 0x90, 0xa8, 0x8e, 0xcd, 0x06, 0x3e, 0xed, 0x59, 0x76, 0x9b, 0x0c, 0xf6, 0x49, 0xd7, 0xbe, - 0x06, 0x47, 0x5c, 0x80, 0xa0, 0x26, 0xbe, 0xbd, 0xdf, 0x29, 0x8d, 0xee, 0x77, 0xd0, 0x74, 0xcf, - 0x9a, 0xa8, 0x62, 0x1f, 0x35, 0x5c, 0xf0, 0x41, 0x40, 0x37, 0xce, 0x1c, 0x93, 0xe6, 0x9a, 0xb4, - 0x39, 0x5c, 0xcd, 0xa6, 0x33, 0x8b, 0x9a, 0xaf, 0x8d, 0xee, 0x77, 0x1a, 0x85, 0x2d, 0xab, 0x28, - 0xde, 0xfe, 0x6d, 0x0d, 0xbd, 0x7e, 0x19, 0xb9, 0x1d, 0x96, 0xf0, 0x54, 0x6e, 0x99, 0xa9, 0xeb, - 0x81, 0x78, 0x09, 0x79, 0xba, 0xa8, 0x92, 0xc4, 0xe0, 0xa8, 0xf4, 0x4c, 0xb2, 0xf2, 0xdc, 0x93, - 0x05, 0xf1, 0x5e, 0xc5, 0xe0, 0x98, 0x75, 0xe5, 0x57, 0xc9, 0x56, 0x96, 0x54, 0xc7, 0x3e, 0x5a, - 0x4f, 0x04, 0x15, 0x69, 0xd2, 0x2c, 0x4b, 0x9f, 0xce, 0x33, 0x7d, 0xa4, 0x96, 0xb9, 0xa9, 0x9c, - 0xd6, 0xf3, 0xb5, 0xa5, 0x3c, 0xda, 0x7f, 0x6a, 0xe8, 0xad, 0x05, 0xd4, 0x39, 0x4b, 0x04, 0xfe, - 0x6e, 0xae, 0xa2, 0x64, 0xb5, 0x8a, 0x66, 0xb4, 0xac, 0xe7, 0x96, 0x72, 0xad, 0x8d, 0x77, 0x66, - 0xaa, 0xe9, 0xa0, 0x2a, 0x13, 0x10, 0x64, 0xd3, 0x52, 0xde, 0xdd, 0x38, 0x38, 0x7e, 0x5e, 0x9a, - 0x66, 0x43, 0x59, 0x55, 0xcf, 0x32, 0x51, 0x2b, 0xd7, 0x6e, 0xff, 0xb3, 0x38, 0xbd, 0xac, 0xdc, - 0xf8, 0x1a, 0xd5, 0x03, 0x16, 0x9e, 0x0c, 0x28, 0xf3, 0xa9, 0xed, 0xc3, 0x93, 0x43, 0x93, 0xbd, - 0x6a, 0x92, 0xbf, 0x6a, 0x72, 0x16, 0x8a, 0x2e, 0xbf, 0x12, 0x9c, 0x85, 0x9e, 0xf9, 0x86, 0x72, - 0xae, 0x5f, 0xcc, 0xa8, 0x59, 0x05, 0x6d, 0xfc, 0x3d, 0xaa, 0x25, 0xe0, 0x83, 0x23, 0x22, 0xfe, - 0xff, 0x5e, 0xc7, 0x39, 0xb5, 0xc1, 0xbf, 0x52, 0xa8, 0x59, 0xcf, 0x6a, 0x39, 0x5e, 0x59, 0x13, - 0xc9, 0xf6, 0xbf, 0x15, 0xf4, 0xf6, 0xd2, 0xde, 0xe3, 0xaf, 0x10, 0x8e, 0x6c, 0xf9, 0xb3, 0x71, - 0xbf, 0xc8, 0xff, 0x14, 0x2c, 0x0a, 0x65, 0xba, 0x65, 0xb3, 0xa5, 0x82, 0xc7, 0xdd, 0xb9, 0x1b, - 0xd6, 0x02, 0x0a, 0xff, 0xaa, 0xa1, 0x86, 0x9b, 0xdb, 0x80, 0x7b, 0x19, 0xb9, 0xe3, 0xf6, 0x7d, - 0xf3, 0x22, 0xa6, 0x94, 0x74, 0x66, 0x95, 0x4f, 0x43, 0xc1, 0x87, 0xe6, 0xb6, 0x0a, 0xb0, 0x51, - 0x38, 0xb3, 0x8a, 0x41, 0xe0, 0x0b, 0x84, 0xdd, 0x89, 0x64, 0x72, 0xe2, 0xfb, 0xd1, 0x4f, 0xe0, - 0xca, 0x07, 0x54, 0x35, 0xdf, 0x51, 0x0a, 0xdb, 0x05, 0xdf, 0xf1, 0x25, 0x6b, 0x01, 0x88, 0x8f, - 0xd1, 0xa6, 0x93, 0x72, 0x0e, 0xa1, 0xf8, 0x12, 0xa8, 0x2f, 0x7a, 0xc3, 0x66, 0x45, 0x4a, 0xbd, - 0xa9, 0xa4, 0x36, 0x3f, 0x2f, 0x9c, 0x5a, 0x8f, 0x6e, 0x67, 0xbc, 0x0b, 0x09, 0xe3, 0xe0, 0x8e, - 0xf9, 0x6a, 0x91, 0xef, 0x14, 0x4e, 0xad, 0x47, 0xb7, 0xf1, 0x11, 0xaa, 0xc3, 0x4d, 0x0c, 0xce, - 0xb8, 0xc6, 0xeb, 0x92, 0x9e, 0x0c, 0xda, 0xe9, 0xcc, 0x99, 0x55, 0xb8, 0xd9, 0xf2, 0x11, 0x9e, - 0x2f, 0x22, 0xde, 0x42, 0xe5, 0x3e, 0x0c, 0x65, 0xcb, 0x5f, 0xb5, 0xb2, 0x4f, 0xfc, 0x19, 0xaa, - 0x0e, 0xa8, 0x9f, 0x82, 0x9a, 0xc6, 0xf7, 0x56, 0x9b, 0xc6, 0xaf, 0x59, 0x00, 0x56, 0x0e, 0x7e, - 0xba, 0x76, 0xa4, 0x99, 0x7b, 0xb7, 0x0f, 0x7a, 0xe9, 0xee, 0x41, 0x2f, 0xfd, 0xfe, 0xa0, 0x97, - 0x7e, 0x1e, 0xe9, 0xda, 0xed, 0x48, 0xd7, 0xee, 0x46, 0xba, 0xf6, 0xd7, 0x48, 0xd7, 0x7e, 0xf9, - 0x5b, 0x2f, 0x7d, 0xfb, 0x8a, 0x6a, 0xfa, 0x7f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x1b, 0xe9, 0x2f, - 0xf1, 0x61, 0x08, 0x00, 0x00, + // 791 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x94, 0x5b, 0x6f, 0xe3, 0x44, + 0x14, 0xc7, 0xe3, 0x5c, 0x4a, 0x98, 0x4d, 0xa2, 0x32, 0xb0, 0x10, 0x22, 0xe1, 0xa0, 0x3c, 0x2d, + 0x88, 0x1d, 0xd3, 0x5d, 0x84, 0x0a, 0x0f, 0x2b, 0xd6, 0xa4, 0x82, 0xa2, 0x46, 0xa9, 0xa6, 0x20, + 0x24, 0x04, 0x12, 0x63, 0xfb, 0xd4, 0x19, 0xe2, 0x9b, 0xec, 0x71, 0x68, 0xde, 0xf8, 0x08, 0x3c, + 0xf0, 0xa1, 0x2a, 0x21, 0xa1, 0x3e, 0x56, 0x08, 0x45, 0xd4, 0x7c, 0x06, 0xde, 0x91, 0xed, 0xc9, + 0xc5, 0x4d, 0xa2, 0x06, 0x8a, 0xf6, 0x2d, 0x73, 0xf9, 0xfd, 0xff, 0xe7, 0xfc, 0x7d, 0x26, 0xe8, + 0xa3, 0xf1, 0x61, 0x44, 0xb8, 0xaf, 0x8d, 0x63, 0x03, 0x42, 0x0f, 0x04, 0x44, 0x5a, 0x30, 0xb6, + 0x35, 0x16, 0xf0, 0x48, 0x0b, 0x7c, 0x87, 0x9b, 0x53, 0x6d, 0x72, 0x60, 0x80, 0x60, 0x07, 0x9a, + 0x0d, 0x1e, 0x84, 0x4c, 0x80, 0x45, 0x82, 0xd0, 0x17, 0x3e, 0x7e, 0x27, 0x47, 0xc9, 0x12, 0x25, + 0xc1, 0xd8, 0x26, 0x29, 0x4a, 0x72, 0x94, 0x48, 0xb4, 0xf3, 0xd8, 0xe6, 0x62, 0x14, 0x1b, 0xc4, + 0xf4, 0x5d, 0xcd, 0xf6, 0x6d, 0x5f, 0xcb, 0x14, 0x8c, 0xf8, 0x3c, 0x5b, 0x65, 0x8b, 0xec, 0x57, + 0xae, 0xdc, 0xf9, 0x40, 0x16, 0xc5, 0x02, 0xee, 0x32, 0x73, 0xc4, 0x3d, 0x08, 0xa7, 0xcb, 0xb2, + 0x5c, 0x10, 0x4c, 0x9b, 0xac, 0xd5, 0xd3, 0xd1, 0xb6, 0x51, 0x61, 0xec, 0x09, 0xee, 0xc2, 0x1a, + 0xf0, 0xe1, 0x5d, 0x40, 0x64, 0x8e, 0xc0, 0x65, 0x6b, 0xdc, 0xd3, 0x6d, 0x5c, 0x2c, 0xb8, 0xa3, + 0x71, 0x4f, 0x44, 0x22, 0x5c, 0x83, 0xde, 0xdb, 0x1a, 0xf4, 0x86, 0x5e, 0x7a, 0xbf, 0x2b, 0xa8, + 0x7e, 0x34, 0xe1, 0xa6, 0xe0, 0xbe, 0x87, 0xbf, 0x47, 0xf5, 0xb4, 0x67, 0x8b, 0x09, 0xd6, 0x56, + 0xde, 0x56, 0x1e, 0x3d, 0x78, 0xf2, 0x3e, 0x91, 0xd9, 0xaf, 0x96, 0xb0, 0x4c, 0x3f, 0xbd, 0x4d, + 0x26, 0x07, 0x64, 0x68, 0xfc, 0x00, 0xa6, 0x18, 0x80, 0x60, 0x3a, 0xbe, 0x9c, 0x75, 0x4b, 0xc9, + 0xac, 0x8b, 0x96, 0x7b, 0x74, 0xa1, 0x8a, 0x1d, 0xd4, 0xb4, 0xc0, 0x01, 0x01, 0xc3, 0x20, 0x75, + 0x8c, 0xda, 0xe5, 0xcc, 0xe6, 0xe9, 0x6e, 0x36, 0xfd, 0x55, 0x54, 0x7f, 0x25, 0x99, 0x75, 0x9b, + 0x85, 0x2d, 0x5a, 0x14, 0xef, 0xfd, 0x5a, 0x46, 0xaf, 0x9e, 0xfa, 0x56, 0x9f, 0x47, 0x61, 0x9c, + 0x6d, 0xe9, 0xb1, 0x65, 0x83, 0x78, 0x01, 0x7d, 0x5a, 0xa8, 0x1a, 0x05, 0x60, 0xca, 0xf6, 0x74, + 0xb2, 0xf3, 0x04, 0x93, 0x0d, 0xf5, 0x9e, 0x05, 0x60, 0xea, 0x0d, 0xe9, 0x57, 0x4d, 0x57, 0x34, + 0x53, 0xc7, 0x0e, 0xda, 0x8b, 0x04, 0x13, 0x71, 0xd4, 0xae, 0x64, 0x3e, 0xfd, 0x7b, 0xfa, 0x64, + 0x5a, 0x7a, 0x4b, 0x3a, 0xed, 0xe5, 0x6b, 0x2a, 0x3d, 0x7a, 0x7f, 0x28, 0xe8, 0x8d, 0x0d, 0xd4, + 0x09, 0x8f, 0x04, 0xfe, 0x76, 0x2d, 0x51, 0xb2, 0x5b, 0xa2, 0x29, 0x9d, 0xe5, 0xb9, 0x2f, 0x5d, + 0xeb, 0xf3, 0x9d, 0x95, 0x34, 0x4d, 0x54, 0xe3, 0x02, 0xdc, 0x74, 0x5a, 0x2a, 0x8f, 0x1e, 0x3c, + 0x79, 0x76, 0xbf, 0x36, 0xf5, 0xa6, 0xb4, 0xaa, 0x1d, 0xa7, 0xa2, 0x34, 0xd7, 0xee, 0xfd, 0x56, + 0xde, 0xd8, 0x5e, 0x1a, 0x37, 0x3e, 0x47, 0x0d, 0x97, 0x7b, 0xcf, 0x27, 0x8c, 0x3b, 0xcc, 0x70, + 0xe0, 0xce, 0xa1, 0x49, 0xdf, 0x27, 0xc9, 0xdf, 0x27, 0x39, 0xf6, 0xc4, 0x30, 0x3c, 0x13, 0x21, + 0xf7, 0x6c, 0x7d, 0x3f, 0x99, 0x75, 0x1b, 0x83, 0x15, 0x25, 0x5a, 0xd0, 0xc5, 0xdf, 0xa1, 0x7a, + 0x04, 0x0e, 0x98, 0xc2, 0x0f, 0xff, 0xdd, 0xcb, 0x38, 0x61, 0x06, 0x38, 0x67, 0x12, 0xd5, 0x1b, + 0x69, 0x8e, 0xf3, 0x15, 0x5d, 0x48, 0x62, 0x07, 0xb5, 0x5c, 0x76, 0xf1, 0x95, 0xc7, 0x16, 0x8d, + 0x54, 0xfe, 0x63, 0x23, 0x38, 0x99, 0x75, 0x5b, 0x83, 0x82, 0x16, 0xbd, 0xa5, 0xdd, 0xfb, 0xbb, + 0x8a, 0xde, 0xdc, 0x3a, 0x65, 0xf8, 0x0b, 0x84, 0x7d, 0x23, 0x82, 0x70, 0x02, 0xd6, 0x67, 0xf9, + 0x7f, 0x12, 0xf7, 0xbd, 0x2c, 0xd8, 0x8a, 0xde, 0x91, 0x1f, 0x08, 0x0f, 0xd7, 0x6e, 0xd0, 0x0d, + 0x14, 0xfe, 0x45, 0x41, 0x4d, 0x2b, 0xb7, 0x01, 0xeb, 0xd4, 0xb7, 0xe6, 0x83, 0xf2, 0xf5, 0xff, + 0xf1, 0x1e, 0x48, 0x7f, 0x55, 0xf9, 0xc8, 0x13, 0xe1, 0x54, 0x7f, 0x28, 0x0b, 0x6c, 0x16, 0xce, + 0x68, 0xb1, 0x08, 0x3c, 0x40, 0xd8, 0x5a, 0x48, 0x46, 0xcf, 0x1d, 0xc7, 0xff, 0x11, 0xac, 0x2c, + 0xf2, 0x9a, 0xfe, 0x96, 0x54, 0x78, 0x58, 0xf0, 0x9d, 0x5f, 0xa2, 0x1b, 0x40, 0xfc, 0x0c, 0xb5, + 0xcc, 0x38, 0x0c, 0xc1, 0x13, 0x9f, 0x03, 0x73, 0xc4, 0x68, 0xda, 0xae, 0x66, 0x52, 0xaf, 0x4b, + 0xa9, 0xd6, 0xa7, 0x85, 0x53, 0x7a, 0xeb, 0x76, 0xca, 0x5b, 0x10, 0xf1, 0x10, 0xac, 0x39, 0x5f, + 0x2b, 0xf2, 0xfd, 0xc2, 0x29, 0xbd, 0x75, 0x1b, 0x1f, 0xa2, 0x06, 0x5c, 0x04, 0x60, 0xce, 0x33, + 0xde, 0xcb, 0xe8, 0xd7, 0x24, 0xdd, 0x38, 0x5a, 0x39, 0xa3, 0x85, 0x9b, 0x1d, 0x07, 0xe1, 0xf5, + 0x10, 0xf1, 0x3e, 0xaa, 0x8c, 0x61, 0x9a, 0x7d, 0xf2, 0x97, 0x69, 0xfa, 0x13, 0x7f, 0x82, 0x6a, + 0x13, 0xe6, 0xc4, 0x20, 0x67, 0xff, 0xdd, 0xdd, 0x66, 0xff, 0x4b, 0xee, 0x02, 0xcd, 0xc1, 0x8f, + 0xcb, 0x87, 0x8a, 0xfe, 0xf8, 0xf2, 0x46, 0x2d, 0x5d, 0xdd, 0xa8, 0xa5, 0xeb, 0x1b, 0xb5, 0xf4, + 0x53, 0xa2, 0x2a, 0x97, 0x89, 0xaa, 0x5c, 0x25, 0xaa, 0x72, 0x9d, 0xa8, 0xca, 0x9f, 0x89, 0xaa, + 0xfc, 0xfc, 0x97, 0x5a, 0xfa, 0xe6, 0x25, 0xf9, 0xe1, 0xff, 0x09, 0x00, 0x00, 0xff, 0xff, 0x58, + 0xfb, 0xa1, 0x14, 0x99, 0x08, 0x00, 0x00, } diff --git a/vendor/k8s.io/client-go/pkg/apis/policy/v1beta1/generated.proto b/vendor/k8s.io/client-go/pkg/apis/policy/v1beta1/generated.proto index d14d5de3..1cdde5a1 100644 --- a/vendor/k8s.io/client-go/pkg/apis/policy/v1beta1/generated.proto +++ b/vendor/k8s.io/client-go/pkg/apis/policy/v1beta1/generated.proto @@ -19,13 +19,12 @@ limitations under the License. syntax = 'proto2'; -package k8s.io.kubernetes.pkg.apis.policy.v1beta1; +package k8s.io.client_go.pkg.apis.policy.v1beta1; import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; import "k8s.io/kubernetes/pkg/api/v1/generated.proto"; // Package-wide variables from generator "generated". @@ -71,6 +70,12 @@ message PodDisruptionBudgetSpec { // Label query over pods whose evictions are managed by the disruption // budget. optional k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector selector = 2; + + // An eviction is allowed if at most "maxUnavailable" pods selected by + // "selector" are unavailable after the eviction, i.e. even in absence of + // the evicted pod. For example, one can prevent all voluntary evictions + // by specifying 0. This is a mutually exclusive setting with "minAvailable". + optional k8s.io.apimachinery.pkg.util.intstr.IntOrString maxUnavailable = 3; } // PodDisruptionBudgetStatus represents information about the status of a diff --git a/vendor/k8s.io/client-go/pkg/apis/policy/v1beta1/types.generated.go b/vendor/k8s.io/client-go/pkg/apis/policy/v1beta1/types.generated.go index 38b3afeb..a4636a80 100644 --- a/vendor/k8s.io/client-go/pkg/apis/policy/v1beta1/types.generated.go +++ b/vendor/k8s.io/client-go/pkg/apis/policy/v1beta1/types.generated.go @@ -85,14 +85,15 @@ func (x *PodDisruptionBudgetSpec) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [2]bool + var yyq2 [3]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false - yyq2[0] = true + yyq2[0] = x.MinAvailable != nil yyq2[1] = x.Selector != nil + yyq2[2] = x.MaxUnavailable != nil var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(2) + r.EncodeArrayStart(3) } else { yynn2 = 0 for _, b := range yyq2 { @@ -106,15 +107,18 @@ func (x *PodDisruptionBudgetSpec) CodecEncodeSelf(e *codec1978.Encoder) { if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) if yyq2[0] { - yy4 := &x.MinAvailable - yym5 := z.EncBinary() - _ = yym5 - if false { - } else if z.HasExtensions() && z.EncExt(yy4) { - } else if !yym5 && z.IsJSONHandle() { - z.EncJSONMarshal(yy4) + if x.MinAvailable == nil { + r.EncodeNil() } else { - z.EncFallback(yy4) + yym4 := z.EncBinary() + _ = yym4 + if false { + } else if z.HasExtensions() && z.EncExt(x.MinAvailable) { + } else if !yym4 && z.IsJSONHandle() { + z.EncJSONMarshal(x.MinAvailable) + } else { + z.EncFallback(x.MinAvailable) + } } } else { r.EncodeNil() @@ -124,15 +128,18 @@ func (x *PodDisruptionBudgetSpec) CodecEncodeSelf(e *codec1978.Encoder) { z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("minAvailable")) z.EncSendContainerState(codecSelfer_containerMapValue1234) - yy6 := &x.MinAvailable - yym7 := z.EncBinary() - _ = yym7 - if false { - } else if z.HasExtensions() && z.EncExt(yy6) { - } else if !yym7 && z.IsJSONHandle() { - z.EncJSONMarshal(yy6) + if x.MinAvailable == nil { + r.EncodeNil() } else { - z.EncFallback(yy6) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else if z.HasExtensions() && z.EncExt(x.MinAvailable) { + } else if !yym5 && z.IsJSONHandle() { + z.EncJSONMarshal(x.MinAvailable) + } else { + z.EncFallback(x.MinAvailable) + } } } } @@ -142,8 +149,8 @@ func (x *PodDisruptionBudgetSpec) CodecEncodeSelf(e *codec1978.Encoder) { if x.Selector == nil { r.EncodeNil() } else { - yym9 := z.EncBinary() - _ = yym9 + yym7 := z.EncBinary() + _ = yym7 if false { } else if z.HasExtensions() && z.EncExt(x.Selector) { } else { @@ -161,8 +168,8 @@ func (x *PodDisruptionBudgetSpec) CodecEncodeSelf(e *codec1978.Encoder) { if x.Selector == nil { r.EncodeNil() } else { - yym10 := z.EncBinary() - _ = yym10 + yym8 := z.EncBinary() + _ = yym8 if false { } else if z.HasExtensions() && z.EncExt(x.Selector) { } else { @@ -171,6 +178,45 @@ func (x *PodDisruptionBudgetSpec) CodecEncodeSelf(e *codec1978.Encoder) { } } } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + if x.MaxUnavailable == nil { + r.EncodeNil() + } else { + yym10 := z.EncBinary() + _ = yym10 + if false { + } else if z.HasExtensions() && z.EncExt(x.MaxUnavailable) { + } else if !yym10 && z.IsJSONHandle() { + z.EncJSONMarshal(x.MaxUnavailable) + } else { + z.EncFallback(x.MaxUnavailable) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("maxUnavailable")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.MaxUnavailable == nil { + r.EncodeNil() + } else { + yym11 := z.EncBinary() + _ = yym11 + if false { + } else if z.HasExtensions() && z.EncExt(x.MaxUnavailable) { + } else if !yym11 && z.IsJSONHandle() { + z.EncJSONMarshal(x.MaxUnavailable) + } else { + z.EncFallback(x.MaxUnavailable) + } + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -234,17 +280,21 @@ func (x *PodDisruptionBudgetSpec) codecDecodeSelfFromMap(l int, d *codec1978.Dec switch yys3 { case "minAvailable": if r.TryDecodeAsNil() { - x.MinAvailable = pkg1_intstr.IntOrString{} + if x.MinAvailable != nil { + x.MinAvailable = nil + } } else { - yyv4 := &x.MinAvailable + if x.MinAvailable == nil { + x.MinAvailable = new(pkg1_intstr.IntOrString) + } yym5 := z.DecBinary() _ = yym5 if false { - } else if z.HasExtensions() && z.DecExt(yyv4) { + } else if z.HasExtensions() && z.DecExt(x.MinAvailable) { } else if !yym5 && z.IsJSONHandle() { - z.DecJSONUnmarshal(yyv4) + z.DecJSONUnmarshal(x.MinAvailable) } else { - z.DecFallback(yyv4, false) + z.DecFallback(x.MinAvailable, false) } } case "selector": @@ -264,6 +314,25 @@ func (x *PodDisruptionBudgetSpec) codecDecodeSelfFromMap(l int, d *codec1978.Dec z.DecFallback(x.Selector, false) } } + case "maxUnavailable": + if r.TryDecodeAsNil() { + if x.MaxUnavailable != nil { + x.MaxUnavailable = nil + } + } else { + if x.MaxUnavailable == nil { + x.MaxUnavailable = new(pkg1_intstr.IntOrString) + } + yym9 := z.DecBinary() + _ = yym9 + if false { + } else if z.HasExtensions() && z.DecExt(x.MaxUnavailable) { + } else if !yym9 && z.IsJSONHandle() { + z.DecJSONUnmarshal(x.MaxUnavailable) + } else { + z.DecFallback(x.MaxUnavailable, false) + } + } default: z.DecStructFieldNotFound(-1, yys3) } // end switch yys3 @@ -275,41 +344,45 @@ func (x *PodDisruptionBudgetSpec) codecDecodeSelfFromArray(l int, d *codec1978.D var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj8 int - var yyb8 bool - var yyhl8 bool = l >= 0 - yyj8++ - if yyhl8 { - yyb8 = yyj8 > l + var yyj10 int + var yyb10 bool + var yyhl10 bool = l >= 0 + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l } else { - yyb8 = r.CheckBreak() + yyb10 = r.CheckBreak() } - if yyb8 { + if yyb10 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } z.DecSendContainerState(codecSelfer_containerArrayElem1234) if r.TryDecodeAsNil() { - x.MinAvailable = pkg1_intstr.IntOrString{} + if x.MinAvailable != nil { + x.MinAvailable = nil + } } else { - yyv9 := &x.MinAvailable - yym10 := z.DecBinary() - _ = yym10 + if x.MinAvailable == nil { + x.MinAvailable = new(pkg1_intstr.IntOrString) + } + yym12 := z.DecBinary() + _ = yym12 if false { - } else if z.HasExtensions() && z.DecExt(yyv9) { - } else if !yym10 && z.IsJSONHandle() { - z.DecJSONUnmarshal(yyv9) + } else if z.HasExtensions() && z.DecExt(x.MinAvailable) { + } else if !yym12 && z.IsJSONHandle() { + z.DecJSONUnmarshal(x.MinAvailable) } else { - z.DecFallback(yyv9, false) + z.DecFallback(x.MinAvailable, false) } } - yyj8++ - if yyhl8 { - yyb8 = yyj8 > l + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l } else { - yyb8 = r.CheckBreak() + yyb10 = r.CheckBreak() } - if yyb8 { + if yyb10 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -322,26 +395,55 @@ func (x *PodDisruptionBudgetSpec) codecDecodeSelfFromArray(l int, d *codec1978.D if x.Selector == nil { x.Selector = new(pkg2_v1.LabelSelector) } - yym12 := z.DecBinary() - _ = yym12 + yym14 := z.DecBinary() + _ = yym14 if false { } else if z.HasExtensions() && z.DecExt(x.Selector) { } else { z.DecFallback(x.Selector, false) } } - for { - yyj8++ - if yyhl8 { - yyb8 = yyj8 > l - } else { - yyb8 = r.CheckBreak() + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l + } else { + yyb10 = r.CheckBreak() + } + if yyb10 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.MaxUnavailable != nil { + x.MaxUnavailable = nil } - if yyb8 { + } else { + if x.MaxUnavailable == nil { + x.MaxUnavailable = new(pkg1_intstr.IntOrString) + } + yym16 := z.DecBinary() + _ = yym16 + if false { + } else if z.HasExtensions() && z.DecExt(x.MaxUnavailable) { + } else if !yym16 && z.IsJSONHandle() { + z.DecJSONUnmarshal(x.MaxUnavailable) + } else { + z.DecFallback(x.MaxUnavailable, false) + } + } + for { + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l + } else { + yyb10 = r.CheckBreak() + } + if yyb10 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj8-1, "") + z.DecStructFieldNotFound(yyj10-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -2122,7 +2224,7 @@ func (x codecSelfer1234) decSlicePodDisruptionBudget(v *[]PodDisruptionBudget, d yyrg1 := len(yyv1) > 0 yyv21 := yyv1 - yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 336) + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 320) if yyrt1 { if yyrl1 <= cap(yyv1) { yyv1 = yyv1[:yyrl1] diff --git a/vendor/k8s.io/client-go/pkg/apis/policy/v1beta1/types.go b/vendor/k8s.io/client-go/pkg/apis/policy/v1beta1/types.go index ca5ea373..6cc56256 100644 --- a/vendor/k8s.io/client-go/pkg/apis/policy/v1beta1/types.go +++ b/vendor/k8s.io/client-go/pkg/apis/policy/v1beta1/types.go @@ -27,11 +27,17 @@ type PodDisruptionBudgetSpec struct { // "selector" will still be available after the eviction, i.e. even in the // absence of the evicted pod. So for example you can prevent all voluntary // evictions by specifying "100%". - MinAvailable intstr.IntOrString `json:"minAvailable,omitempty" protobuf:"bytes,1,opt,name=minAvailable"` + MinAvailable *intstr.IntOrString `json:"minAvailable,omitempty" protobuf:"bytes,1,opt,name=minAvailable"` // Label query over pods whose evictions are managed by the disruption // budget. Selector *metav1.LabelSelector `json:"selector,omitempty" protobuf:"bytes,2,opt,name=selector"` + + // An eviction is allowed if at most "maxUnavailable" pods selected by + // "selector" are unavailable after the eviction, i.e. even in absence of + // the evicted pod. For example, one can prevent all voluntary evictions + // by specifying 0. This is a mutually exclusive setting with "minAvailable". + MaxUnavailable *intstr.IntOrString `json:"maxUnavailable,omitempty" protobuf:"bytes,3,opt,name=maxUnavailable"` } // PodDisruptionBudgetStatus represents information about the status of a diff --git a/vendor/k8s.io/client-go/pkg/apis/policy/v1beta1/types_swagger_doc_generated.go b/vendor/k8s.io/client-go/pkg/apis/policy/v1beta1/types_swagger_doc_generated.go index d919856b..29432506 100644 --- a/vendor/k8s.io/client-go/pkg/apis/policy/v1beta1/types_swagger_doc_generated.go +++ b/vendor/k8s.io/client-go/pkg/apis/policy/v1beta1/types_swagger_doc_generated.go @@ -56,9 +56,10 @@ func (PodDisruptionBudgetList) SwaggerDoc() map[string]string { } var map_PodDisruptionBudgetSpec = map[string]string{ - "": "PodDisruptionBudgetSpec is a description of a PodDisruptionBudget.", - "minAvailable": "An eviction is allowed if at least \"minAvailable\" pods selected by \"selector\" will still be available after the eviction, i.e. even in the absence of the evicted pod. So for example you can prevent all voluntary evictions by specifying \"100%\".", - "selector": "Label query over pods whose evictions are managed by the disruption budget.", + "": "PodDisruptionBudgetSpec is a description of a PodDisruptionBudget.", + "minAvailable": "An eviction is allowed if at least \"minAvailable\" pods selected by \"selector\" will still be available after the eviction, i.e. even in the absence of the evicted pod. So for example you can prevent all voluntary evictions by specifying \"100%\".", + "selector": "Label query over pods whose evictions are managed by the disruption budget.", + "maxUnavailable": "An eviction is allowed if at most \"maxUnavailable\" pods selected by \"selector\" are unavailable after the eviction, i.e. even in absence of the evicted pod. For example, one can prevent all voluntary evictions by specifying 0. This is a mutually exclusive setting with \"minAvailable\".", } func (PodDisruptionBudgetSpec) SwaggerDoc() map[string]string { diff --git a/vendor/k8s.io/client-go/pkg/apis/policy/v1beta1/zz_generated.conversion.go b/vendor/k8s.io/client-go/pkg/apis/policy/v1beta1/zz_generated.conversion.go index 816251bd..b10663a0 100644 --- a/vendor/k8s.io/client-go/pkg/apis/policy/v1beta1/zz_generated.conversion.go +++ b/vendor/k8s.io/client-go/pkg/apis/policy/v1beta1/zz_generated.conversion.go @@ -24,6 +24,7 @@ import ( v1 "k8s.io/apimachinery/pkg/apis/meta/v1" conversion "k8s.io/apimachinery/pkg/conversion" runtime "k8s.io/apimachinery/pkg/runtime" + intstr "k8s.io/apimachinery/pkg/util/intstr" policy "k8s.io/client-go/pkg/apis/policy" unsafe "unsafe" ) @@ -130,8 +131,9 @@ func Convert_policy_PodDisruptionBudgetList_To_v1beta1_PodDisruptionBudgetList(i } func autoConvert_v1beta1_PodDisruptionBudgetSpec_To_policy_PodDisruptionBudgetSpec(in *PodDisruptionBudgetSpec, out *policy.PodDisruptionBudgetSpec, s conversion.Scope) error { - out.MinAvailable = in.MinAvailable + out.MinAvailable = (*intstr.IntOrString)(unsafe.Pointer(in.MinAvailable)) out.Selector = (*v1.LabelSelector)(unsafe.Pointer(in.Selector)) + out.MaxUnavailable = (*intstr.IntOrString)(unsafe.Pointer(in.MaxUnavailable)) return nil } @@ -141,8 +143,9 @@ func Convert_v1beta1_PodDisruptionBudgetSpec_To_policy_PodDisruptionBudgetSpec(i } func autoConvert_policy_PodDisruptionBudgetSpec_To_v1beta1_PodDisruptionBudgetSpec(in *policy.PodDisruptionBudgetSpec, out *PodDisruptionBudgetSpec, s conversion.Scope) error { - out.MinAvailable = in.MinAvailable + out.MinAvailable = (*intstr.IntOrString)(unsafe.Pointer(in.MinAvailable)) out.Selector = (*v1.LabelSelector)(unsafe.Pointer(in.Selector)) + out.MaxUnavailable = (*intstr.IntOrString)(unsafe.Pointer(in.MaxUnavailable)) return nil } diff --git a/vendor/k8s.io/client-go/pkg/apis/policy/v1beta1/zz_generated.deepcopy.go b/vendor/k8s.io/client-go/pkg/apis/policy/v1beta1/zz_generated.deepcopy.go index abd2cea2..cf8ddbd6 100644 --- a/vendor/k8s.io/client-go/pkg/apis/policy/v1beta1/zz_generated.deepcopy.go +++ b/vendor/k8s.io/client-go/pkg/apis/policy/v1beta1/zz_generated.deepcopy.go @@ -24,6 +24,7 @@ import ( v1 "k8s.io/apimachinery/pkg/apis/meta/v1" conversion "k8s.io/apimachinery/pkg/conversion" runtime "k8s.io/apimachinery/pkg/runtime" + intstr "k8s.io/apimachinery/pkg/util/intstr" reflect "reflect" ) @@ -112,6 +113,11 @@ func DeepCopy_v1beta1_PodDisruptionBudgetSpec(in interface{}, out interface{}, c in := in.(*PodDisruptionBudgetSpec) out := out.(*PodDisruptionBudgetSpec) *out = *in + if in.MinAvailable != nil { + in, out := &in.MinAvailable, &out.MinAvailable + *out = new(intstr.IntOrString) + **out = **in + } if in.Selector != nil { in, out := &in.Selector, &out.Selector if newVal, err := c.DeepCopy(*in); err != nil { @@ -120,6 +126,11 @@ func DeepCopy_v1beta1_PodDisruptionBudgetSpec(in interface{}, out interface{}, c *out = newVal.(*v1.LabelSelector) } } + if in.MaxUnavailable != nil { + in, out := &in.MaxUnavailable, &out.MaxUnavailable + *out = new(intstr.IntOrString) + **out = **in + } return nil } } diff --git a/vendor/k8s.io/client-go/pkg/apis/policy/zz_generated.deepcopy.go b/vendor/k8s.io/client-go/pkg/apis/policy/zz_generated.deepcopy.go index 9edd2a1e..ba27f907 100644 --- a/vendor/k8s.io/client-go/pkg/apis/policy/zz_generated.deepcopy.go +++ b/vendor/k8s.io/client-go/pkg/apis/policy/zz_generated.deepcopy.go @@ -24,6 +24,7 @@ import ( v1 "k8s.io/apimachinery/pkg/apis/meta/v1" conversion "k8s.io/apimachinery/pkg/conversion" runtime "k8s.io/apimachinery/pkg/runtime" + intstr "k8s.io/apimachinery/pkg/util/intstr" reflect "reflect" ) @@ -112,6 +113,11 @@ func DeepCopy_policy_PodDisruptionBudgetSpec(in interface{}, out interface{}, c in := in.(*PodDisruptionBudgetSpec) out := out.(*PodDisruptionBudgetSpec) *out = *in + if in.MinAvailable != nil { + in, out := &in.MinAvailable, &out.MinAvailable + *out = new(intstr.IntOrString) + **out = **in + } if in.Selector != nil { in, out := &in.Selector, &out.Selector if newVal, err := c.DeepCopy(*in); err != nil { @@ -120,6 +126,11 @@ func DeepCopy_policy_PodDisruptionBudgetSpec(in interface{}, out interface{}, c *out = newVal.(*v1.LabelSelector) } } + if in.MaxUnavailable != nil { + in, out := &in.MaxUnavailable, &out.MaxUnavailable + *out = new(intstr.IntOrString) + **out = **in + } return nil } } diff --git a/vendor/k8s.io/client-go/pkg/apis/rbac/helpers.go b/vendor/k8s.io/client-go/pkg/apis/rbac/helpers.go index 7007a509..9895b484 100644 --- a/vendor/k8s.io/client-go/pkg/apis/rbac/helpers.go +++ b/vendor/k8s.io/client-go/pkg/apis/rbac/helpers.go @@ -124,6 +124,38 @@ func SubjectsStrings(subjects []Subject) ([]string, []string, []string, []string return users, groups, sas, others } +func (r PolicyRule) String() string { + return "PolicyRule" + r.CompactString() +} + +// CompactString exposes a compact string representation for use in escalation error messages +func (r PolicyRule) CompactString() string { + formatStringParts := []string{} + formatArgs := []interface{}{} + if len(r.Resources) > 0 { + formatStringParts = append(formatStringParts, "Resources:%q") + formatArgs = append(formatArgs, r.Resources) + } + if len(r.NonResourceURLs) > 0 { + formatStringParts = append(formatStringParts, "NonResourceURLs:%q") + formatArgs = append(formatArgs, r.NonResourceURLs) + } + if len(r.ResourceNames) > 0 { + formatStringParts = append(formatStringParts, "ResourceNames:%q") + formatArgs = append(formatArgs, r.ResourceNames) + } + if len(r.APIGroups) > 0 { + formatStringParts = append(formatStringParts, "APIGroups:%q") + formatArgs = append(formatArgs, r.APIGroups) + } + if len(r.Verbs) > 0 { + formatStringParts = append(formatStringParts, "Verbs:%q") + formatArgs = append(formatArgs, r.Verbs) + } + formatString := "{" + strings.Join(formatStringParts, ", ") + "}" + return fmt.Sprintf(formatString, formatArgs...) +} + // PolicyRuleBuilder let's us attach methods. A no-no for API types. // We use it to construct rules in code. It's more compact than trying to write them // out in a literal and allows us to perform some basic checking during construction @@ -189,6 +221,22 @@ func (r *PolicyRuleBuilder) Rule() (PolicyRule, error) { // this a common bug return PolicyRule{}, fmt.Errorf("resource rule must have apiGroups: %#v", r.PolicyRule) } + // if resource names are set, then the verb must not be list, watch, create, or deletecollection + // since verbs are largely opaque, we don't want to accidentally prevent things like "impersonate", so + // we will backlist common mistakes, not whitelist acceptable options. + if len(r.PolicyRule.ResourceNames) != 0 { + illegalVerbs := []string{} + for _, verb := range r.PolicyRule.Verbs { + switch verb { + case "list", "watch", "create", "deletecollection": + illegalVerbs = append(illegalVerbs, verb) + } + } + if len(illegalVerbs) > 0 { + return PolicyRule{}, fmt.Errorf("verbs %v do not have names available: %#v", illegalVerbs, r.PolicyRule) + } + } + default: return PolicyRule{}, fmt.Errorf("a rule must have either nonResourceURLs or resources: %#v", r.PolicyRule) } @@ -338,3 +386,11 @@ func (r *RoleBindingBuilder) Binding() (RoleBinding, error) { return r.RoleBinding, nil } + +type SortableRuleSlice []PolicyRule + +func (s SortableRuleSlice) Len() int { return len(s) } +func (s SortableRuleSlice) Swap(i, j int) { s[i], s[j] = s[j], s[i] } +func (s SortableRuleSlice) Less(i, j int) bool { + return strings.Compare(s[i].String(), s[j].String()) < 0 +} diff --git a/vendor/k8s.io/client-go/pkg/apis/rbac/v1alpha1/generated.pb.go b/vendor/k8s.io/client-go/pkg/apis/rbac/v1alpha1/generated.pb.go index 21b9000a..3977142e 100644 --- a/vendor/k8s.io/client-go/pkg/apis/rbac/v1alpha1/generated.pb.go +++ b/vendor/k8s.io/client-go/pkg/apis/rbac/v1alpha1/generated.pb.go @@ -2766,58 +2766,57 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 841 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x54, 0x4d, 0x6f, 0xe3, 0x44, - 0x18, 0xce, 0xb4, 0x09, 0x4d, 0xde, 0x52, 0x95, 0x0e, 0x12, 0x32, 0x3d, 0x38, 0x95, 0x4f, 0x15, - 0x1f, 0x36, 0x2d, 0x0b, 0xec, 0x01, 0x0e, 0x6b, 0x0e, 0xa8, 0x62, 0x29, 0xd5, 0xac, 0x58, 0x89, - 0xd5, 0x4a, 0x30, 0x71, 0x66, 0x93, 0x21, 0xfe, 0xd2, 0x8c, 0x1d, 0xb1, 0x42, 0x48, 0x1c, 0x39, - 0xf2, 0x2b, 0x38, 0x72, 0x40, 0xe2, 0xc8, 0x89, 0x4b, 0x05, 0x97, 0x1e, 0xe1, 0x12, 0x51, 0xf3, - 0x43, 0x40, 0x1e, 0x8f, 0x3f, 0x8a, 0x53, 0xf5, 0x03, 0x29, 0x12, 0xd2, 0x9e, 0x12, 0xbf, 0xef, - 0xf3, 0x3c, 0xf3, 0x3e, 0xf3, 0xda, 0x0f, 0xdc, 0x9d, 0xdd, 0x95, 0x36, 0x8f, 0x9c, 0x59, 0x3a, - 0x62, 0x22, 0x64, 0x09, 0x93, 0x4e, 0x3c, 0x9b, 0x38, 0x34, 0xe6, 0xd2, 0x11, 0x23, 0xea, 0x39, - 0xf3, 0x03, 0xea, 0xc7, 0x53, 0x7a, 0xe0, 0x4c, 0x58, 0xc8, 0x04, 0x4d, 0xd8, 0xd8, 0x8e, 0x45, - 0x94, 0x44, 0x78, 0xbf, 0x60, 0xda, 0x35, 0xd3, 0x8e, 0x67, 0x13, 0x3b, 0x67, 0xda, 0x39, 0xd3, - 0x2e, 0x99, 0xbb, 0xaf, 0x4f, 0x78, 0x32, 0x4d, 0x47, 0xb6, 0x17, 0x05, 0xce, 0x24, 0x9a, 0x44, - 0x8e, 0x12, 0x18, 0xa5, 0x4f, 0xd4, 0x93, 0x7a, 0x50, 0xff, 0x0a, 0xe1, 0xdd, 0x3b, 0x7a, 0x24, - 0x1a, 0xf3, 0x80, 0x7a, 0x53, 0x1e, 0x32, 0xf1, 0xb4, 0x1e, 0x2a, 0x60, 0x09, 0x75, 0xe6, 0xad, - 0x71, 0x76, 0x9d, 0xcb, 0x58, 0x22, 0x0d, 0x13, 0x1e, 0xb0, 0x16, 0xe1, 0xed, 0xab, 0x08, 0xd2, - 0x9b, 0xb2, 0x80, 0xb6, 0x78, 0x6f, 0x5e, 0xc6, 0x4b, 0x13, 0xee, 0x3b, 0x3c, 0x4c, 0x64, 0x22, - 0x5a, 0xa4, 0x86, 0x27, 0xc9, 0xc4, 0x9c, 0x89, 0xda, 0x10, 0xfb, 0x92, 0x06, 0xb1, 0xcf, 0x96, - 0x78, 0xb2, 0x7e, 0x45, 0xb0, 0xf9, 0xbe, 0x9f, 0xca, 0x84, 0x09, 0x12, 0xf9, 0x0c, 0x7f, 0x0e, - 0xfd, 0xdc, 0xfe, 0x98, 0x26, 0xd4, 0x40, 0x7b, 0x68, 0x7f, 0xf3, 0xf0, 0x0d, 0x5b, 0x6f, 0xa1, - 0x39, 0x4d, 0xbd, 0x87, 0x1c, 0x6d, 0xcf, 0x0f, 0xec, 0x8f, 0x47, 0x5f, 0x30, 0x2f, 0xf9, 0x88, - 0x25, 0xd4, 0xc5, 0xa7, 0x8b, 0x61, 0x27, 0x5b, 0x0c, 0xa1, 0xae, 0x91, 0x4a, 0x15, 0x7f, 0x0a, - 0x3d, 0x91, 0xfa, 0x4c, 0x1a, 0x6b, 0x7b, 0xeb, 0xfb, 0x9b, 0x87, 0x77, 0xec, 0xeb, 0x2e, 0xd9, - 0x3e, 0x89, 0x7c, 0xee, 0x3d, 0x25, 0xa9, 0xcf, 0xdc, 0x2d, 0x7d, 0x44, 0x2f, 0x7f, 0x92, 0xa4, - 0x50, 0xb4, 0x7e, 0x5a, 0x03, 0xdc, 0x30, 0xe3, 0xf2, 0x70, 0xcc, 0xc3, 0xc9, 0x0a, 0x3c, 0x7d, - 0x06, 0x7d, 0x99, 0xaa, 0x46, 0x69, 0xeb, 0xe0, 0xfa, 0xb6, 0x1e, 0x14, 0x4c, 0xf7, 0x05, 0x7d, - 0x44, 0x5f, 0x17, 0x24, 0xa9, 0x44, 0xf1, 0x63, 0xd8, 0x10, 0x91, 0xcf, 0x08, 0x7b, 0x62, 0xac, - 0x2b, 0x07, 0x37, 0xd0, 0x27, 0x05, 0xd1, 0xdd, 0xd6, 0xfa, 0x1b, 0xba, 0x40, 0x4a, 0x49, 0xeb, - 0x7b, 0x04, 0x2f, 0xb7, 0xef, 0xcd, 0x4d, 0xb9, 0x3f, 0x66, 0x02, 0x7f, 0x8b, 0x00, 0x7b, 0xad, - 0xae, 0xbe, 0xc9, 0x77, 0xaf, 0x3f, 0xc7, 0x92, 0x13, 0x76, 0xf5, 0x48, 0x4b, 0xb6, 0x46, 0x96, - 0x9c, 0x69, 0xfd, 0x81, 0xe0, 0xa5, 0x36, 0xf4, 0x3e, 0x97, 0x09, 0x7e, 0xdc, 0x5a, 0xb2, 0x7d, - 0xbd, 0x25, 0xe7, 0x6c, 0xb5, 0xe2, 0xea, 0xfe, 0xcb, 0x4a, 0x63, 0xc1, 0x14, 0x7a, 0x3c, 0x61, - 0x41, 0xb9, 0xdd, 0xff, 0xe6, 0xba, 0x7a, 0x79, 0x8f, 0x72, 0x49, 0x52, 0x28, 0x5b, 0xbf, 0x21, - 0xd8, 0x6e, 0x80, 0x57, 0x60, 0xea, 0xd1, 0x45, 0x53, 0x6f, 0xdd, 0xce, 0xd4, 0x72, 0x37, 0x7f, - 0x23, 0x80, 0xfa, 0x7b, 0xc5, 0x43, 0xe8, 0xcd, 0x99, 0x18, 0x49, 0x03, 0xed, 0xad, 0xef, 0x0f, - 0xdc, 0x41, 0x8e, 0x7f, 0x98, 0x17, 0x48, 0x51, 0xc7, 0xaf, 0xc2, 0x80, 0xc6, 0xfc, 0x03, 0x11, - 0xa5, 0xb1, 0x34, 0xd6, 0x15, 0x68, 0x2b, 0x5b, 0x0c, 0x07, 0xf7, 0x4e, 0x8e, 0x8a, 0x22, 0xa9, - 0xfb, 0x39, 0x58, 0x30, 0x19, 0xa5, 0xc2, 0x63, 0xd2, 0xe8, 0xd6, 0x60, 0x52, 0x16, 0x49, 0xdd, - 0xc7, 0xef, 0xc0, 0x56, 0xf9, 0x70, 0x4c, 0x03, 0x26, 0x8d, 0x9e, 0x22, 0xec, 0x64, 0x8b, 0xe1, - 0x16, 0x69, 0x36, 0xc8, 0x45, 0x1c, 0x7e, 0x0f, 0xb6, 0xc3, 0x28, 0x2c, 0x21, 0x9f, 0x90, 0xfb, - 0xd2, 0x78, 0x4e, 0x51, 0x5f, 0xcc, 0x16, 0xc3, 0xed, 0xe3, 0x8b, 0x2d, 0xf2, 0x6f, 0xac, 0xf5, - 0x35, 0xec, 0x34, 0x02, 0x4b, 0x7f, 0x4b, 0x53, 0x80, 0xb8, 0x2a, 0xea, 0x95, 0xde, 0x2e, 0x01, - 0xab, 0x40, 0xaa, 0x6b, 0xa4, 0xa1, 0x6d, 0xfd, 0x82, 0xa0, 0xfb, 0xff, 0x4f, 0xf4, 0x1f, 0xd6, - 0x60, 0xf3, 0x59, 0x94, 0xdf, 0x20, 0xca, 0xf3, 0x14, 0x59, 0x6d, 0x34, 0xde, 0x3e, 0x45, 0xae, - 0xce, 0xc4, 0x9f, 0x11, 0xf4, 0x57, 0x14, 0x86, 0x0f, 0x2e, 0xda, 0xb0, 0x6f, 0x68, 0x63, 0xf9, - 0xfc, 0x5f, 0x41, 0xb9, 0x21, 0xfc, 0x1a, 0xf4, 0xcb, 0x00, 0x53, 0xd3, 0x0f, 0xea, 0x69, 0xca, - 0x8c, 0x23, 0x15, 0x02, 0xef, 0x41, 0x77, 0xc6, 0xc3, 0xb1, 0xb1, 0xa6, 0x90, 0xcf, 0x6b, 0x64, - 0xf7, 0x43, 0x1e, 0x8e, 0x89, 0xea, 0xe4, 0x88, 0x90, 0x06, 0x4c, 0xbd, 0x43, 0x0d, 0x44, 0x1e, - 0x5d, 0x44, 0x75, 0xac, 0x1f, 0x11, 0x6c, 0xe8, 0xf7, 0xaf, 0xd2, 0x43, 0x97, 0xea, 0x1d, 0x02, - 0xd0, 0x98, 0x3f, 0x64, 0x42, 0xf2, 0x28, 0xd4, 0xe7, 0x56, 0x5f, 0xca, 0xbd, 0x93, 0x23, 0xdd, - 0x21, 0x0d, 0xd4, 0xd5, 0x33, 0x60, 0x07, 0x06, 0xf9, 0xaf, 0x8c, 0xa9, 0xc7, 0x8c, 0xae, 0x82, - 0xed, 0x68, 0xd8, 0xe0, 0xb8, 0x6c, 0x90, 0x1a, 0xe3, 0xbe, 0x72, 0x7a, 0x6e, 0x76, 0xce, 0xce, - 0xcd, 0xce, 0xef, 0xe7, 0x66, 0xe7, 0x9b, 0xcc, 0x44, 0xa7, 0x99, 0x89, 0xce, 0x32, 0x13, 0xfd, - 0x99, 0x99, 0xe8, 0xbb, 0xbf, 0xcc, 0xce, 0xa3, 0x7e, 0x79, 0xf1, 0xff, 0x04, 0x00, 0x00, 0xff, - 0xff, 0x22, 0x38, 0x96, 0xd3, 0x59, 0x0c, 0x00, 0x00, + // 829 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x54, 0xcf, 0x6b, 0x24, 0x45, + 0x14, 0x9e, 0x4a, 0x66, 0xcc, 0xcc, 0x8b, 0x21, 0xa6, 0x04, 0x69, 0x73, 0xe8, 0x09, 0x7d, 0x0a, + 0xa8, 0xd5, 0x26, 0xae, 0xba, 0x07, 0x3d, 0x6c, 0x7b, 0x90, 0xe0, 0x1a, 0x43, 0x2d, 0x2e, 0xb8, + 0x2c, 0x68, 0x4d, 0x4f, 0xed, 0x4c, 0x39, 0xfd, 0x8b, 0xaa, 0xee, 0xc0, 0x22, 0x82, 0x47, 0x8f, + 0xfe, 0x15, 0x1e, 0x3d, 0x08, 0x1e, 0x3d, 0x79, 0x09, 0x7a, 0xd9, 0xe3, 0x7a, 0x19, 0x4c, 0xfb, + 0x87, 0x28, 0x5d, 0x5d, 0xfd, 0x23, 0x99, 0x09, 0xf9, 0x21, 0x04, 0x84, 0x3d, 0xcd, 0xf4, 0x7b, + 0xdf, 0xf7, 0xd5, 0xfb, 0xea, 0x75, 0x7f, 0x70, 0x77, 0x76, 0x57, 0x11, 0x11, 0xbb, 0xb3, 0x6c, + 0xc4, 0x65, 0xc4, 0x53, 0xae, 0xdc, 0x64, 0x36, 0x71, 0x59, 0x22, 0x94, 0x2b, 0x47, 0xcc, 0x77, + 0x8f, 0xf7, 0x58, 0x90, 0x4c, 0xd9, 0x9e, 0x3b, 0xe1, 0x11, 0x97, 0x2c, 0xe5, 0x63, 0x92, 0xc8, + 0x38, 0x8d, 0xf1, 0x6e, 0xc9, 0x24, 0x0d, 0x93, 0x24, 0xb3, 0x09, 0x29, 0x98, 0xa4, 0x60, 0x92, + 0x8a, 0xb9, 0xfd, 0xd6, 0x44, 0xa4, 0xd3, 0x6c, 0x44, 0xfc, 0x38, 0x74, 0x27, 0xf1, 0x24, 0x76, + 0xb5, 0xc0, 0x28, 0x7b, 0xa2, 0x9f, 0xf4, 0x83, 0xfe, 0x57, 0x0a, 0x6f, 0xdf, 0x31, 0x23, 0xb1, + 0x44, 0x84, 0xcc, 0x9f, 0x8a, 0x88, 0xcb, 0xa7, 0xcd, 0x50, 0x21, 0x4f, 0x99, 0x7b, 0xbc, 0x30, + 0xce, 0xb6, 0x7b, 0x11, 0x4b, 0x66, 0x51, 0x2a, 0x42, 0xbe, 0x40, 0x78, 0xef, 0x32, 0x82, 0xf2, + 0xa7, 0x3c, 0x64, 0x0b, 0xbc, 0x77, 0x2e, 0xe2, 0x65, 0xa9, 0x08, 0x5c, 0x11, 0xa5, 0x2a, 0x95, + 0xe7, 0x49, 0xce, 0xef, 0x08, 0xd6, 0x3f, 0x0a, 0x32, 0x95, 0x72, 0x49, 0xe3, 0x80, 0xe3, 0xaf, + 0xa0, 0x5f, 0x18, 0x19, 0xb3, 0x94, 0x59, 0x68, 0x07, 0xed, 0xae, 0xef, 0xbf, 0x4d, 0xcc, 0x7d, + 0xb6, 0x75, 0x9b, 0x1b, 0x2d, 0xd0, 0xe4, 0x78, 0x8f, 0x7c, 0x36, 0xfa, 0x9a, 0xfb, 0xe9, 0xa7, + 0x3c, 0x65, 0x1e, 0x3e, 0x99, 0x0f, 0x3b, 0xf9, 0x7c, 0x08, 0x4d, 0x8d, 0xd6, 0xaa, 0xf8, 0x0b, + 0xe8, 0xc9, 0x2c, 0xe0, 0xca, 0x5a, 0xd9, 0x59, 0xdd, 0x5d, 0xdf, 0xbf, 0x43, 0xae, 0xba, 0x2e, + 0x72, 0x14, 0x07, 0xc2, 0x7f, 0x4a, 0xb3, 0x80, 0x7b, 0x1b, 0xe6, 0x88, 0x5e, 0xf1, 0xa4, 0x68, + 0xa9, 0xe8, 0xfc, 0xb2, 0x02, 0xb8, 0x65, 0xc6, 0x13, 0xd1, 0x58, 0x44, 0x93, 0x5b, 0xf0, 0xf4, + 0x25, 0xf4, 0x55, 0xa6, 0x1b, 0x95, 0xad, 0xbd, 0xab, 0xdb, 0x7a, 0x50, 0x32, 0xbd, 0x57, 0xcc, + 0x11, 0x7d, 0x53, 0x50, 0xb4, 0x16, 0xc5, 0x8f, 0x61, 0x4d, 0xc6, 0x01, 0xa7, 0xfc, 0x89, 0xb5, + 0xaa, 0x1d, 0x5c, 0x43, 0x9f, 0x96, 0x44, 0x6f, 0xd3, 0xe8, 0xaf, 0x99, 0x02, 0xad, 0x24, 0x9d, + 0x1f, 0x11, 0xbc, 0xbe, 0x78, 0x6f, 0x5e, 0x26, 0x82, 0x31, 0x97, 0xf8, 0x7b, 0x04, 0xd8, 0x5f, + 0xe8, 0x9a, 0x9b, 0xfc, 0xe0, 0xea, 0x73, 0x2c, 0x39, 0x61, 0xdb, 0x8c, 0xb4, 0x64, 0x6b, 0x74, + 0xc9, 0x99, 0xce, 0x9f, 0x08, 0x5e, 0x5b, 0x84, 0xde, 0x17, 0x2a, 0xc5, 0x8f, 0x17, 0x96, 0x4c, + 0xae, 0xb6, 0xe4, 0x82, 0xad, 0x57, 0x5c, 0xdf, 0x7f, 0x55, 0x69, 0x2d, 0x98, 0x41, 0x4f, 0xa4, + 0x3c, 0xac, 0xb6, 0xfb, 0xdf, 0x5c, 0xd7, 0x2f, 0xef, 0x41, 0x21, 0x49, 0x4b, 0x65, 0xe7, 0x0f, + 0x04, 0x9b, 0x2d, 0xf0, 0x2d, 0x98, 0x7a, 0x74, 0xd6, 0xd4, 0xbb, 0x37, 0x33, 0xb5, 0xdc, 0xcd, + 0x3f, 0x08, 0xa0, 0xf9, 0x5e, 0xf1, 0x10, 0x7a, 0xc7, 0x5c, 0x8e, 0x94, 0x85, 0x76, 0x56, 0x77, + 0x07, 0xde, 0xa0, 0xc0, 0x3f, 0x2c, 0x0a, 0xb4, 0xac, 0xe3, 0x37, 0x60, 0xc0, 0x12, 0xf1, 0xb1, + 0x8c, 0xb3, 0x44, 0x59, 0xab, 0x1a, 0xb4, 0x91, 0xcf, 0x87, 0x83, 0x7b, 0x47, 0x07, 0x65, 0x91, + 0x36, 0xfd, 0x02, 0x2c, 0xb9, 0x8a, 0x33, 0xe9, 0x73, 0x65, 0x75, 0x1b, 0x30, 0xad, 0x8a, 0xb4, + 0xe9, 0xe3, 0xf7, 0x61, 0xa3, 0x7a, 0x38, 0x64, 0x21, 0x57, 0x56, 0x4f, 0x13, 0xb6, 0xf2, 0xf9, + 0x70, 0x83, 0xb6, 0x1b, 0xf4, 0x2c, 0x0e, 0x7f, 0x08, 0x9b, 0x51, 0x1c, 0x55, 0x90, 0xcf, 0xe9, + 0x7d, 0x65, 0xbd, 0xa4, 0xa9, 0xaf, 0xe6, 0xf3, 0xe1, 0xe6, 0xe1, 0xd9, 0x16, 0x3d, 0x8f, 0x75, + 0xbe, 0x85, 0xad, 0x56, 0x60, 0x99, 0x6f, 0x69, 0x0a, 0x90, 0xd4, 0x45, 0xb3, 0xd2, 0x9b, 0x25, + 0x60, 0x1d, 0x48, 0x4d, 0x8d, 0xb6, 0xb4, 0x9d, 0xdf, 0x10, 0x74, 0xff, 0xff, 0x89, 0xfe, 0xd3, + 0x0a, 0xac, 0xbf, 0x88, 0xf2, 0x6b, 0x44, 0x79, 0x91, 0x22, 0xb7, 0x1b, 0x8d, 0x37, 0x4f, 0x91, + 0xcb, 0x33, 0xf1, 0x57, 0x04, 0xfd, 0x5b, 0x0a, 0xc3, 0x07, 0x67, 0x6d, 0x90, 0x6b, 0xda, 0x58, + 0x3e, 0xff, 0x37, 0x50, 0x6d, 0x08, 0xbf, 0x09, 0xfd, 0x2a, 0xc0, 0xf4, 0xf4, 0x83, 0x66, 0x9a, + 0x2a, 0xe3, 0x68, 0x8d, 0xc0, 0x3b, 0xd0, 0x9d, 0x89, 0x68, 0x6c, 0xad, 0x68, 0xe4, 0xcb, 0x06, + 0xd9, 0xfd, 0x44, 0x44, 0x63, 0xaa, 0x3b, 0x05, 0x22, 0x62, 0x21, 0xd7, 0xef, 0x50, 0x0b, 0x51, + 0x44, 0x17, 0xd5, 0x1d, 0xe7, 0x67, 0x04, 0x6b, 0xe6, 0xfd, 0xab, 0xf5, 0xd0, 0x85, 0x7a, 0xfb, + 0x00, 0x2c, 0x11, 0x0f, 0xb9, 0x54, 0x22, 0x8e, 0xcc, 0xb9, 0xf5, 0x97, 0x72, 0xef, 0xe8, 0xc0, + 0x74, 0x68, 0x0b, 0x75, 0xf9, 0x0c, 0xd8, 0x85, 0x41, 0xf1, 0xab, 0x12, 0xe6, 0x73, 0xab, 0xab, + 0x61, 0x5b, 0x06, 0x36, 0x38, 0xac, 0x1a, 0xb4, 0xc1, 0x78, 0xe4, 0xe4, 0xd4, 0xee, 0x3c, 0x3b, + 0xb5, 0x3b, 0xcf, 0x4f, 0xed, 0xce, 0x77, 0xb9, 0x8d, 0x4e, 0x72, 0x1b, 0x3d, 0xcb, 0x6d, 0xf4, + 0x3c, 0xb7, 0xd1, 0x5f, 0xb9, 0x8d, 0x7e, 0xf8, 0xdb, 0xee, 0x3c, 0xea, 0x57, 0x97, 0xff, 0x6f, + 0x00, 0x00, 0x00, 0xff, 0xff, 0x20, 0x76, 0x05, 0x2e, 0x27, 0x0c, 0x00, 0x00, } diff --git a/vendor/k8s.io/client-go/pkg/apis/rbac/v1alpha1/generated.proto b/vendor/k8s.io/client-go/pkg/apis/rbac/v1alpha1/generated.proto index 75302176..ba462c66 100644 --- a/vendor/k8s.io/client-go/pkg/apis/rbac/v1alpha1/generated.proto +++ b/vendor/k8s.io/client-go/pkg/apis/rbac/v1alpha1/generated.proto @@ -19,13 +19,12 @@ limitations under the License. syntax = 'proto2'; -package k8s.io.kubernetes.pkg.apis.rbac.v1alpha1; +package k8s.io.client_go.pkg.apis.rbac.v1alpha1; import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; // Package-wide variables from generator "generated". option go_package = "v1alpha1"; diff --git a/vendor/k8s.io/client-go/pkg/apis/rbac/v1beta1/generated.pb.go b/vendor/k8s.io/client-go/pkg/apis/rbac/v1beta1/generated.pb.go index 5078deff..07a71939 100644 --- a/vendor/k8s.io/client-go/pkg/apis/rbac/v1beta1/generated.pb.go +++ b/vendor/k8s.io/client-go/pkg/apis/rbac/v1beta1/generated.pb.go @@ -2766,57 +2766,56 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 824 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x54, 0xbf, 0x8f, 0xe3, 0x44, - 0x18, 0xcd, 0x64, 0x13, 0x6d, 0x3c, 0x4b, 0x14, 0x76, 0x90, 0x90, 0x49, 0xe1, 0x44, 0x6e, 0x58, - 0x04, 0x67, 0xdf, 0xde, 0x9d, 0x38, 0x24, 0x44, 0x81, 0x29, 0xd0, 0x89, 0x63, 0x39, 0x0d, 0x02, - 0xf1, 0x4b, 0xe8, 0x26, 0xce, 0x9c, 0x77, 0x88, 0x7f, 0x69, 0x66, 0x1c, 0x71, 0x82, 0x82, 0x8e, - 0x96, 0x7f, 0x82, 0xee, 0x3a, 0x5a, 0x2a, 0xaa, 0x85, 0xea, 0xca, 0xad, 0x22, 0xd6, 0xfc, 0x21, - 0x20, 0xdb, 0xe3, 0x1f, 0xc1, 0x59, 0x36, 0x2c, 0x52, 0x24, 0xa4, 0xab, 0x76, 0xe7, 0xfb, 0xde, - 0xfb, 0xe6, 0xbd, 0xf9, 0x9c, 0x07, 0xef, 0x2e, 0xde, 0x10, 0x16, 0x8b, 0xec, 0x45, 0x32, 0xa3, - 0x3c, 0xa4, 0x92, 0x0a, 0x3b, 0x5e, 0x78, 0x36, 0x89, 0x99, 0xb0, 0xf9, 0x8c, 0xb8, 0xf6, 0xf2, - 0x78, 0x46, 0x25, 0x39, 0xb6, 0x3d, 0x1a, 0x52, 0x4e, 0x24, 0x9d, 0x5b, 0x31, 0x8f, 0x64, 0x84, - 0x5e, 0x2e, 0x88, 0x56, 0x4d, 0xb4, 0xe2, 0x85, 0x67, 0x65, 0x44, 0x2b, 0x23, 0x5a, 0x8a, 0x38, - 0xbe, 0xe1, 0x31, 0x79, 0x9a, 0xcc, 0x2c, 0x37, 0x0a, 0x6c, 0x2f, 0xf2, 0x22, 0x3b, 0xe7, 0xcf, - 0x92, 0x47, 0xf9, 0x29, 0x3f, 0xe4, 0xff, 0x15, 0x73, 0xc7, 0x77, 0x94, 0x20, 0x12, 0xb3, 0x80, - 0xb8, 0xa7, 0x2c, 0xa4, 0xfc, 0x71, 0x2d, 0x29, 0xa0, 0x92, 0xd8, 0xcb, 0x96, 0x9a, 0xb1, 0x7d, - 0x19, 0x8b, 0x27, 0xa1, 0x64, 0x01, 0x6d, 0x11, 0x5e, 0xbf, 0x8a, 0x20, 0xdc, 0x53, 0x1a, 0x90, - 0x16, 0xef, 0xf6, 0x65, 0xbc, 0x44, 0x32, 0xdf, 0x66, 0xa1, 0x14, 0x92, 0xb7, 0x48, 0x0d, 0x4f, - 0x82, 0xf2, 0x25, 0xe5, 0xb5, 0x21, 0xfa, 0x35, 0x09, 0x62, 0x9f, 0x6e, 0xf0, 0x64, 0xfe, 0x0a, - 0xe0, 0xc1, 0x3b, 0x7e, 0x22, 0x24, 0xe5, 0x38, 0xf2, 0x29, 0x7a, 0x08, 0x07, 0x99, 0xfd, 0x39, - 0x91, 0x44, 0x07, 0x53, 0x70, 0x74, 0x70, 0xeb, 0xa6, 0xa5, 0x96, 0xd0, 0x54, 0x53, 0xaf, 0x21, - 0x43, 0x5b, 0xcb, 0x63, 0xeb, 0x83, 0xd9, 0x57, 0xd4, 0x95, 0xef, 0x53, 0x49, 0x1c, 0x74, 0xb6, - 0x9a, 0x74, 0xd2, 0xd5, 0x04, 0xd6, 0x35, 0x5c, 0x4d, 0x45, 0x9f, 0xc0, 0x3e, 0x4f, 0x7c, 0x2a, - 0xf4, 0xee, 0x74, 0xef, 0xe8, 0xe0, 0xd6, 0x6d, 0x6b, 0xcb, 0x1d, 0x5b, 0x0f, 0x22, 0x9f, 0xb9, - 0x8f, 0x71, 0xe2, 0x53, 0x67, 0xa8, 0x6e, 0xe8, 0x67, 0x27, 0x81, 0x8b, 0x81, 0xe6, 0x4f, 0x5d, - 0x88, 0x1a, 0x5e, 0x1c, 0x16, 0xce, 0x59, 0xe8, 0xed, 0xc0, 0xd2, 0x97, 0x70, 0x20, 0x92, 0xbc, - 0x51, 0xba, 0xba, 0xb9, 0xb5, 0xab, 0x0f, 0x0b, 0xa2, 0xf3, 0xbc, 0xba, 0x61, 0xa0, 0x0a, 0x02, - 0x57, 0x33, 0xd1, 0xe7, 0x70, 0x9f, 0x47, 0x3e, 0xc5, 0xf4, 0x91, 0xbe, 0xb7, 0x6e, 0xe0, 0xca, - 0xf1, 0xb8, 0xe0, 0x39, 0x23, 0x35, 0x7e, 0x5f, 0x15, 0x70, 0x39, 0xd1, 0xfc, 0x11, 0xc0, 0x97, - 0xda, 0xaf, 0xe6, 0x24, 0xcc, 0x9f, 0x53, 0x8e, 0xbe, 0x07, 0x10, 0xb9, 0xad, 0xae, 0x7a, 0xc7, - 0x37, 0xb7, 0x96, 0xb1, 0xe1, 0x82, 0xb1, 0x52, 0xb4, 0x61, 0x65, 0x78, 0xc3, 0x95, 0xe6, 0x39, - 0x80, 0x2f, 0xb6, 0xa1, 0xf7, 0x99, 0x90, 0xe8, 0x8b, 0xd6, 0x86, 0xad, 0xed, 0x36, 0x9c, 0xb1, - 0xf3, 0xfd, 0x56, 0xaf, 0x5f, 0x56, 0x1a, 0xdb, 0x7d, 0x08, 0xfb, 0x4c, 0xd2, 0xa0, 0x5c, 0xed, - 0x7f, 0x32, 0x5d, 0x7d, 0xb8, 0xf7, 0xb2, 0x89, 0xb8, 0x18, 0x6c, 0xfe, 0x06, 0xe0, 0xa8, 0x01, - 0xde, 0x81, 0xa7, 0x4f, 0xd7, 0x3d, 0xdd, 0xb9, 0x96, 0xa7, 0xcd, 0x66, 0xfe, 0x04, 0x10, 0xd6, - 0x3f, 0x55, 0x34, 0x81, 0xfd, 0x25, 0xe5, 0x33, 0xa1, 0x83, 0xe9, 0xde, 0x91, 0xe6, 0x68, 0x19, - 0xfe, 0xe3, 0xac, 0x80, 0x8b, 0x3a, 0x7a, 0x15, 0x6a, 0x24, 0x66, 0xef, 0xf2, 0x28, 0x89, 0x0b, - 0x39, 0x9a, 0x33, 0x4c, 0x57, 0x13, 0xed, 0xed, 0x07, 0xf7, 0x8a, 0x22, 0xae, 0xfb, 0x19, 0x98, - 0x53, 0x11, 0x25, 0xdc, 0xa5, 0x42, 0xdf, 0xab, 0xc1, 0xb8, 0x2c, 0xe2, 0xba, 0x8f, 0xee, 0xc2, - 0x61, 0x79, 0x38, 0x21, 0x01, 0x15, 0x7a, 0x2f, 0x27, 0x1c, 0xa6, 0xab, 0xc9, 0x10, 0x37, 0x1b, - 0x78, 0x1d, 0x87, 0xde, 0x82, 0xa3, 0x30, 0x0a, 0x4b, 0xc8, 0x47, 0xf8, 0xbe, 0xd0, 0xfb, 0x39, - 0xf5, 0x85, 0x74, 0x35, 0x19, 0x9d, 0xac, 0xb7, 0xf0, 0xdf, 0xb1, 0xe6, 0xb7, 0xf0, 0xb0, 0x91, - 0x55, 0xea, 0x87, 0xe4, 0x41, 0x18, 0x57, 0x45, 0xb5, 0xd1, 0x6b, 0x65, 0x5f, 0x15, 0x45, 0x75, - 0x0d, 0x37, 0x46, 0x9b, 0xbf, 0x00, 0xd8, 0xfb, 0xdf, 0x47, 0xf9, 0x93, 0x2e, 0x3c, 0x78, 0x96, - 0xe1, 0x5b, 0x67, 0x78, 0x16, 0x20, 0xbb, 0x0d, 0xc5, 0x6b, 0x07, 0xc8, 0xd5, 0x69, 0xf8, 0x33, - 0x80, 0x83, 0x1d, 0xc5, 0x20, 0x5e, 0x77, 0x71, 0xe3, 0xdf, 0xb9, 0xd8, 0x2c, 0xff, 0x1b, 0x58, - 0xee, 0x07, 0xbd, 0x06, 0x07, 0x65, 0x74, 0xe5, 0xe2, 0xb5, 0x5a, 0x4c, 0x99, 0x6e, 0xb8, 0x42, - 0xa0, 0x29, 0xec, 0x2d, 0x58, 0x38, 0xd7, 0xbb, 0x39, 0xf2, 0x39, 0x85, 0xec, 0xbd, 0xc7, 0xc2, - 0x39, 0xce, 0x3b, 0x19, 0x22, 0x24, 0x01, 0xcd, 0x3f, 0xa0, 0x06, 0x22, 0x0b, 0x2d, 0x9c, 0x77, - 0xcc, 0x27, 0x00, 0xee, 0xab, 0x8f, 0xaf, 0x9a, 0x07, 0x2e, 0x9d, 0xd7, 0xd4, 0xd7, 0xdd, 0x46, - 0xdf, 0x3f, 0xdf, 0x8e, 0x6c, 0xa8, 0x65, 0x7f, 0x45, 0x4c, 0x5c, 0xaa, 0xf7, 0x72, 0xd8, 0xa1, - 0x82, 0x69, 0x27, 0x65, 0x03, 0xd7, 0x18, 0xe7, 0x95, 0xb3, 0x0b, 0xa3, 0xf3, 0xf4, 0xc2, 0xe8, - 0x9c, 0x5f, 0x18, 0x9d, 0xef, 0x52, 0x03, 0x9c, 0xa5, 0x06, 0x78, 0x9a, 0x1a, 0xe0, 0xf7, 0xd4, - 0x00, 0x3f, 0xfc, 0x61, 0x74, 0x3e, 0xdb, 0x57, 0x2f, 0xfe, 0x57, 0x00, 0x00, 0x00, 0xff, 0xff, - 0x2d, 0xfe, 0x9c, 0x61, 0x44, 0x0c, 0x00, 0x00, + // 806 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x54, 0x3d, 0x6f, 0xc3, 0x44, + 0x18, 0xce, 0xe5, 0x43, 0x89, 0x2f, 0x44, 0xa1, 0x87, 0x84, 0x4c, 0x06, 0x27, 0xf2, 0x42, 0x25, + 0xa8, 0xdd, 0x2f, 0x51, 0x24, 0xc4, 0x80, 0x19, 0x50, 0x45, 0x29, 0xd5, 0x21, 0x10, 0x5f, 0x42, + 0x75, 0x9c, 0xab, 0x7b, 0xc4, 0x5f, 0xf2, 0x9d, 0x23, 0x55, 0x30, 0xb0, 0xb1, 0xf2, 0x27, 0xd8, + 0xba, 0xb1, 0x32, 0x31, 0x15, 0xa6, 0x8e, 0x9d, 0x22, 0x6a, 0x7e, 0x08, 0xc8, 0xf6, 0xf9, 0x23, + 0x4d, 0x4a, 0x43, 0x91, 0x22, 0x21, 0x31, 0xb5, 0xf7, 0xbe, 0xcf, 0xf3, 0xdc, 0xfb, 0xdc, 0xeb, + 0x3c, 0xf0, 0x68, 0xfa, 0x26, 0xd3, 0xa8, 0xaf, 0x4f, 0xa3, 0x31, 0x09, 0x3d, 0xc2, 0x09, 0xd3, + 0x83, 0xa9, 0xad, 0x9b, 0x01, 0x65, 0x7a, 0x38, 0x36, 0x2d, 0x7d, 0xb6, 0x37, 0x26, 0xdc, 0xdc, + 0xd3, 0x6d, 0xe2, 0x91, 0xd0, 0xe4, 0x64, 0xa2, 0x05, 0xa1, 0xcf, 0x7d, 0xf4, 0x6a, 0x46, 0xd4, + 0x4a, 0xa2, 0x16, 0x4c, 0x6d, 0x2d, 0x21, 0x6a, 0x09, 0x51, 0x13, 0xc4, 0xc1, 0x8e, 0x4d, 0xf9, + 0x65, 0x34, 0xd6, 0x2c, 0xdf, 0xd5, 0x6d, 0xdf, 0xf6, 0xf5, 0x94, 0x3f, 0x8e, 0x2e, 0xd2, 0x53, + 0x7a, 0x48, 0xff, 0xcb, 0x74, 0x07, 0x87, 0x62, 0x20, 0x33, 0xa0, 0xae, 0x69, 0x5d, 0x52, 0x8f, + 0x84, 0x57, 0xe5, 0x48, 0x2e, 0xe1, 0xa6, 0x3e, 0x5b, 0x9a, 0x66, 0xa0, 0x3f, 0xc6, 0x0a, 0x23, + 0x8f, 0x53, 0x97, 0x2c, 0x11, 0xde, 0x78, 0x8a, 0xc0, 0xac, 0x4b, 0xe2, 0x9a, 0x4b, 0xbc, 0x83, + 0xc7, 0x78, 0x11, 0xa7, 0x8e, 0x4e, 0x3d, 0xce, 0x78, 0xf8, 0x90, 0xa4, 0xfe, 0x0a, 0x60, 0xf7, + 0x5d, 0x27, 0x62, 0x9c, 0x84, 0xd8, 0x77, 0x08, 0x3a, 0x87, 0x9d, 0xc4, 0xc8, 0xc4, 0xe4, 0xa6, + 0x0c, 0x46, 0x60, 0xbb, 0xbb, 0xbf, 0xab, 0x89, 0xe7, 0xac, 0xea, 0x96, 0x0f, 0x9a, 0xa0, 0xb5, + 0xd9, 0x9e, 0xf6, 0xe1, 0xf8, 0x6b, 0x62, 0xf1, 0x0f, 0x08, 0x37, 0x0d, 0x74, 0x33, 0x1f, 0xd6, + 0xe2, 0xf9, 0x10, 0x96, 0x35, 0x5c, 0xa8, 0xa2, 0x4f, 0x61, 0x2b, 0x8c, 0x1c, 0xc2, 0xe4, 0xfa, + 0xa8, 0xb1, 0xdd, 0xdd, 0x3f, 0xd0, 0xd6, 0xdc, 0x96, 0x76, 0xe6, 0x3b, 0xd4, 0xba, 0xc2, 0x91, + 0x43, 0x8c, 0x9e, 0xb8, 0xa1, 0x95, 0x9c, 0x18, 0xce, 0x04, 0xd5, 0x9f, 0xea, 0x10, 0x55, 0xbc, + 0x18, 0xd4, 0x9b, 0x50, 0xcf, 0xde, 0x80, 0xa5, 0xaf, 0x60, 0x87, 0x45, 0x69, 0x23, 0x77, 0xb5, + 0xbb, 0xb6, 0xab, 0x8f, 0x32, 0xa2, 0xf1, 0xa2, 0xb8, 0xa1, 0x23, 0x0a, 0x0c, 0x17, 0x9a, 0xe8, + 0x0b, 0xd8, 0x0e, 0x7d, 0x87, 0x60, 0x72, 0x21, 0x37, 0x16, 0x0d, 0x3c, 0x29, 0x8f, 0x33, 0x9e, + 0xd1, 0x17, 0xf2, 0x6d, 0x51, 0xc0, 0xb9, 0xa2, 0xfa, 0x23, 0x80, 0xaf, 0x2c, 0xbf, 0x9a, 0x11, + 0x51, 0x67, 0x42, 0x42, 0xf4, 0x3d, 0x80, 0xc8, 0x5a, 0xea, 0x8a, 0x77, 0x7c, 0x6b, 0xed, 0x31, + 0x56, 0x5c, 0x30, 0x10, 0x13, 0xad, 0x58, 0x19, 0x5e, 0x71, 0xa5, 0x7a, 0x07, 0xe0, 0xcb, 0xcb, + 0xd0, 0x13, 0xca, 0x38, 0xfa, 0x72, 0x69, 0xc3, 0xda, 0x7a, 0x1b, 0x4e, 0xd8, 0xe9, 0x7e, 0x8b, + 0xd7, 0xcf, 0x2b, 0x95, 0xed, 0x9e, 0xc3, 0x16, 0xe5, 0xc4, 0xcd, 0x57, 0xfb, 0xaf, 0x4c, 0x17, + 0x1f, 0xee, 0x71, 0xa2, 0x88, 0x33, 0x61, 0xf5, 0x37, 0x00, 0xfb, 0x15, 0xf0, 0x06, 0x3c, 0x7d, + 0xb6, 0xe8, 0xe9, 0xf0, 0x59, 0x9e, 0x56, 0x9b, 0xf9, 0x13, 0x40, 0x58, 0xfe, 0x54, 0xd1, 0x10, + 0xb6, 0x66, 0x24, 0x1c, 0x33, 0x19, 0x8c, 0x1a, 0xdb, 0x92, 0x21, 0x25, 0xf8, 0x4f, 0x92, 0x02, + 0xce, 0xea, 0xe8, 0x35, 0x28, 0x99, 0x01, 0x7d, 0x2f, 0xf4, 0xa3, 0x20, 0x1b, 0x47, 0x32, 0x7a, + 0xf1, 0x7c, 0x28, 0xbd, 0x73, 0x76, 0x9c, 0x15, 0x71, 0xd9, 0x4f, 0xc0, 0x21, 0x61, 0x7e, 0x14, + 0x5a, 0x84, 0xc9, 0x8d, 0x12, 0x8c, 0xf3, 0x22, 0x2e, 0xfb, 0xe8, 0x08, 0xf6, 0xf2, 0xc3, 0xa9, + 0xe9, 0x12, 0x26, 0x37, 0x53, 0xc2, 0x56, 0x3c, 0x1f, 0xf6, 0x70, 0xb5, 0x81, 0x17, 0x71, 0xe8, + 0x6d, 0xd8, 0xf7, 0x7c, 0x2f, 0x87, 0x7c, 0x8c, 0x4f, 0x98, 0xdc, 0x4a, 0xa9, 0x2f, 0xc5, 0xf3, + 0x61, 0xff, 0x74, 0xb1, 0x85, 0x1f, 0x62, 0xd5, 0x6f, 0xe1, 0x56, 0x25, 0xab, 0xc4, 0x0f, 0xc9, + 0x86, 0x30, 0x28, 0x8a, 0x62, 0xa3, 0xcf, 0xca, 0xbe, 0x22, 0x8a, 0xca, 0x1a, 0xae, 0x48, 0xab, + 0xbf, 0x00, 0xd8, 0xfc, 0xcf, 0x47, 0xf9, 0x75, 0x1d, 0x76, 0xff, 0xcf, 0xf0, 0xb5, 0x33, 0x3c, + 0x09, 0x90, 0xcd, 0x86, 0xe2, 0xb3, 0x03, 0xe4, 0xe9, 0x34, 0xfc, 0x19, 0xc0, 0xce, 0x86, 0x62, + 0x10, 0x2f, 0xba, 0xd8, 0xf9, 0x67, 0x2e, 0x56, 0x8f, 0xff, 0x0d, 0xcc, 0xf7, 0x83, 0x5e, 0x87, + 0x9d, 0x3c, 0xba, 0xd2, 0xe1, 0xa5, 0x72, 0x98, 0x3c, 0xdd, 0x70, 0x81, 0x40, 0x23, 0xd8, 0x9c, + 0x52, 0x6f, 0x22, 0xd7, 0x53, 0xe4, 0x0b, 0x02, 0xd9, 0x7c, 0x9f, 0x7a, 0x13, 0x9c, 0x76, 0x12, + 0x84, 0x67, 0xba, 0x24, 0xfd, 0x80, 0x2a, 0x88, 0x24, 0xb4, 0x70, 0xda, 0x51, 0xaf, 0x01, 0x6c, + 0x8b, 0x8f, 0xaf, 0xd0, 0x03, 0x8f, 0xea, 0x55, 0xe7, 0xab, 0xaf, 0x33, 0xdf, 0xdf, 0xdf, 0x8e, + 0x74, 0x28, 0x25, 0x7f, 0x59, 0x60, 0x5a, 0x44, 0x6e, 0xa6, 0xb0, 0x2d, 0x01, 0x93, 0x4e, 0xf3, + 0x06, 0x2e, 0x31, 0xc6, 0xce, 0xcd, 0xbd, 0x52, 0xbb, 0xbd, 0x57, 0x6a, 0x77, 0xf7, 0x4a, 0xed, + 0xbb, 0x58, 0x01, 0x37, 0xb1, 0x02, 0x6e, 0x63, 0x05, 0xdc, 0xc5, 0x0a, 0xf8, 0x3d, 0x56, 0xc0, + 0x0f, 0x7f, 0x28, 0xb5, 0xcf, 0xdb, 0xe2, 0xd5, 0xff, 0x0a, 0x00, 0x00, 0xff, 0xff, 0x6d, 0x2c, + 0xb9, 0x90, 0x12, 0x0c, 0x00, 0x00, } diff --git a/vendor/k8s.io/client-go/pkg/apis/rbac/v1beta1/generated.proto b/vendor/k8s.io/client-go/pkg/apis/rbac/v1beta1/generated.proto index b18fc0fd..d4a6ebcf 100644 --- a/vendor/k8s.io/client-go/pkg/apis/rbac/v1beta1/generated.proto +++ b/vendor/k8s.io/client-go/pkg/apis/rbac/v1beta1/generated.proto @@ -19,13 +19,12 @@ limitations under the License. syntax = 'proto2'; -package k8s.io.kubernetes.pkg.apis.rbac.v1beta1; +package k8s.io.client_go.pkg.apis.rbac.v1beta1; import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; // Package-wide variables from generator "generated". option go_package = "v1beta1"; diff --git a/vendor/k8s.io/client-go/pkg/apis/settings/v1alpha1/generated.pb.go b/vendor/k8s.io/client-go/pkg/apis/settings/v1alpha1/generated.pb.go index d3f49e55..64b15b1d 100644 --- a/vendor/k8s.io/client-go/pkg/apis/settings/v1alpha1/generated.pb.go +++ b/vendor/k8s.io/client-go/pkg/apis/settings/v1alpha1/generated.pb.go @@ -891,40 +891,39 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 550 bytes of a gzipped FileDescriptorProto + // 538 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x92, 0x41, 0x8b, 0xd3, 0x40, - 0x14, 0xc7, 0x9b, 0x6d, 0x4b, 0xeb, 0xb4, 0x8b, 0x12, 0x3c, 0x84, 0x1e, 0xb2, 0x4b, 0xf1, 0xb0, - 0xea, 0x3a, 0xb1, 0xab, 0xa8, 0xa0, 0xa7, 0xc8, 0x0a, 0x82, 0xcb, 0x2e, 0x29, 0xf4, 0x20, 0x2b, - 0x38, 0x4d, 0x9f, 0x69, 0x6c, 0x93, 0x09, 0x33, 0x93, 0xa0, 0x37, 0x3f, 0x82, 0x5f, 0x4a, 0x28, - 0xe8, 0x61, 0x8f, 0x9e, 0x16, 0x5b, 0xbf, 0x88, 0xcc, 0x74, 0xd2, 0x44, 0xba, 0x65, 0xab, 0xb7, - 0x79, 0x8f, 0xf7, 0xff, 0xbd, 0xff, 0x3f, 0x2f, 0xe8, 0xc5, 0xe4, 0x19, 0xc7, 0x21, 0x75, 0x26, - 0xe9, 0x10, 0x58, 0x0c, 0x02, 0xb8, 0x93, 0x4c, 0x02, 0x87, 0x24, 0x21, 0x77, 0x38, 0x08, 0x11, - 0xc6, 0x01, 0x77, 0xb2, 0x1e, 0x99, 0x26, 0x63, 0xd2, 0x73, 0x02, 0x88, 0x81, 0x11, 0x01, 0x23, - 0x9c, 0x30, 0x2a, 0xa8, 0x79, 0xb8, 0x54, 0xe3, 0x42, 0x8d, 0x93, 0x49, 0x80, 0xa5, 0x1a, 0xe7, - 0x6a, 0x9c, 0xab, 0x3b, 0x0f, 0x82, 0x50, 0x8c, 0xd3, 0x21, 0xf6, 0x69, 0xe4, 0x04, 0x34, 0xa0, - 0x8e, 0x82, 0x0c, 0xd3, 0x0f, 0xaa, 0x52, 0x85, 0x7a, 0x2d, 0xe1, 0x9d, 0xc7, 0xda, 0x1a, 0x49, - 0xc2, 0x88, 0xf8, 0xe3, 0x30, 0x06, 0xf6, 0xb9, 0x30, 0x17, 0x81, 0x20, 0x4e, 0xb6, 0x66, 0xa9, - 0xe3, 0x6c, 0x52, 0xb1, 0x34, 0x16, 0x61, 0x04, 0x6b, 0x82, 0x27, 0xd7, 0x09, 0xb8, 0x3f, 0x86, - 0x88, 0xac, 0xe9, 0x4a, 0xf6, 0x38, 0xb0, 0x0c, 0x58, 0xe1, 0x0d, 0x3e, 0x91, 0x28, 0x99, 0xc2, - 0x55, 0xf6, 0x0e, 0x37, 0x7e, 0xef, 0x2b, 0xa6, 0xbb, 0x3f, 0x0c, 0x74, 0xe3, 0x8c, 0x8e, 0xce, - 0x18, 0x70, 0x10, 0xe6, 0x7b, 0xd4, 0x94, 0xa9, 0x47, 0x44, 0x10, 0xcb, 0xd8, 0x37, 0x0e, 0x5a, - 0x47, 0x0f, 0xb1, 0x3e, 0x40, 0xd9, 0x7c, 0x71, 0x02, 0x39, 0x8d, 0xb3, 0x1e, 0x3e, 0x1d, 0x7e, - 0x04, 0x5f, 0x9c, 0x80, 0x20, 0xae, 0x39, 0xbb, 0xdc, 0xab, 0x2c, 0x2e, 0xf7, 0x50, 0xd1, 0xf3, - 0x56, 0x54, 0xf3, 0x1d, 0xaa, 0xf1, 0x04, 0x7c, 0x6b, 0x47, 0xd1, 0x9f, 0xe3, 0x7f, 0x39, 0x2f, - 0x5e, 0x19, 0xed, 0x27, 0xe0, 0xbb, 0x6d, 0xbd, 0xa8, 0x26, 0x2b, 0x4f, 0x61, 0xbb, 0xdf, 0x0d, - 0xb4, 0xbb, 0x9a, 0x7a, 0x13, 0x72, 0x61, 0x9e, 0xaf, 0x45, 0xc2, 0xdb, 0x45, 0x92, 0x6a, 0x15, - 0xe8, 0x96, 0xde, 0xd3, 0xcc, 0x3b, 0xa5, 0x38, 0xe7, 0xa8, 0x1e, 0x0a, 0x88, 0xb8, 0xb5, 0xb3, - 0x5f, 0x3d, 0x68, 0x1d, 0x3d, 0xfd, 0xcf, 0x3c, 0xee, 0xae, 0xde, 0x51, 0x7f, 0x2d, 0x69, 0xde, - 0x12, 0xda, 0xfd, 0x56, 0x2d, 0xa5, 0x91, 0x29, 0x4d, 0x82, 0x9a, 0x1c, 0xa6, 0xe0, 0x0b, 0xca, - 0x74, 0x9a, 0x47, 0x5b, 0xa6, 0x21, 0x43, 0x98, 0xf6, 0xb5, 0xb4, 0x88, 0x94, 0x77, 0xbc, 0x15, - 0xd6, 0x7c, 0x89, 0xaa, 0x10, 0x67, 0x3a, 0xd0, 0x9d, 0xcd, 0x81, 0x24, 0xf5, 0x38, 0xce, 0x06, - 0x84, 0xb9, 0x2d, 0x8d, 0xab, 0x1e, 0xc7, 0x99, 0x27, 0xd5, 0xe6, 0x00, 0x35, 0x20, 0xce, 0x5e, - 0x31, 0x1a, 0x59, 0x55, 0x05, 0xba, 0x7f, 0x2d, 0x48, 0x0e, 0xf7, 0x69, 0xca, 0x7c, 0x70, 0x6f, - 0x6a, 0x5e, 0x43, 0xb7, 0xbd, 0x1c, 0x66, 0x9e, 0xa2, 0x46, 0x46, 0xa7, 0x69, 0x04, 0xdc, 0xaa, - 0x6d, 0x63, 0x70, 0xa0, 0x86, 0x0b, 0xe0, 0xb2, 0xe6, 0x5e, 0x4e, 0x31, 0x7d, 0xd4, 0x5e, 0x3e, - 0x4f, 0x68, 0x1a, 0x0b, 0x6e, 0xd5, 0x15, 0xf5, 0xee, 0x36, 0x54, 0xa5, 0x70, 0x6f, 0x6b, 0x74, - 0xbb, 0xd4, 0xe4, 0xde, 0x5f, 0x50, 0xf7, 0xde, 0x6c, 0x6e, 0x57, 0x2e, 0xe6, 0x76, 0xe5, 0xe7, - 0xdc, 0xae, 0x7c, 0x59, 0xd8, 0xc6, 0x6c, 0x61, 0x1b, 0x17, 0x0b, 0xdb, 0xf8, 0xb5, 0xb0, 0x8d, - 0xaf, 0xbf, 0xed, 0xca, 0xdb, 0x66, 0xfe, 0x4f, 0xfc, 0x09, 0x00, 0x00, 0xff, 0xff, 0x91, 0x84, - 0x03, 0x10, 0x2f, 0x05, 0x00, 0x00, + 0x14, 0xc7, 0x9b, 0xed, 0x96, 0xd6, 0x69, 0x17, 0x25, 0x78, 0x08, 0x3d, 0x64, 0x97, 0xe2, 0x61, + 0xc5, 0x75, 0x62, 0x57, 0x51, 0x41, 0x4f, 0x91, 0x15, 0x04, 0x97, 0x5d, 0x52, 0xe8, 0x41, 0x56, + 0x70, 0x9a, 0x3e, 0xd3, 0xd8, 0x26, 0x13, 0x66, 0x26, 0x01, 0x6f, 0x7e, 0x04, 0xbf, 0x94, 0x50, + 0xd0, 0xc3, 0x1e, 0xf7, 0xb4, 0xd8, 0xf8, 0x45, 0x64, 0x26, 0x93, 0xa6, 0x52, 0xcb, 0x56, 0x6f, + 0xf3, 0x1e, 0xef, 0xff, 0x7b, 0xff, 0xff, 0x4b, 0xd0, 0xcb, 0xe9, 0x73, 0x8e, 0x43, 0xea, 0x4c, + 0xd3, 0x11, 0xb0, 0x18, 0x04, 0x70, 0x27, 0x99, 0x06, 0x0e, 0x49, 0x42, 0xee, 0x70, 0x10, 0x22, + 0x8c, 0x03, 0xee, 0x64, 0x7d, 0x32, 0x4b, 0x26, 0xa4, 0xef, 0x04, 0x10, 0x03, 0x23, 0x02, 0xc6, + 0x38, 0x61, 0x54, 0x50, 0xf3, 0xa8, 0x50, 0xe3, 0x4a, 0x8d, 0x93, 0x69, 0x80, 0xa5, 0x1a, 0x97, + 0x6a, 0x5c, 0xaa, 0xbb, 0x0f, 0x83, 0x50, 0x4c, 0xd2, 0x11, 0xf6, 0x69, 0xe4, 0x04, 0x34, 0xa0, + 0x8e, 0x82, 0x8c, 0xd2, 0x8f, 0xaa, 0x52, 0x85, 0x7a, 0x15, 0xf0, 0xee, 0x13, 0x6d, 0x8d, 0x24, + 0x61, 0x44, 0xfc, 0x49, 0x18, 0x03, 0xfb, 0x5c, 0x99, 0x8b, 0x40, 0x10, 0x27, 0x5b, 0xb3, 0xd4, + 0x75, 0x36, 0xa9, 0x58, 0x1a, 0x8b, 0x30, 0x82, 0x35, 0xc1, 0xd3, 0x9b, 0x04, 0xdc, 0x9f, 0x40, + 0x44, 0xd6, 0x74, 0x47, 0x1b, 0x2f, 0xf7, 0x17, 0x5b, 0xbd, 0x1f, 0x06, 0xba, 0x75, 0x4e, 0xc7, + 0xe7, 0x0c, 0x38, 0x08, 0xf3, 0x03, 0x6a, 0x49, 0xff, 0x63, 0x22, 0x88, 0x65, 0x1c, 0x18, 0x87, + 0xed, 0xe3, 0x47, 0x58, 0x9f, 0x72, 0xd5, 0x46, 0x75, 0x4c, 0x39, 0x8d, 0xb3, 0x3e, 0x3e, 0x1b, + 0x7d, 0x02, 0x5f, 0x9c, 0x82, 0x20, 0xae, 0x39, 0xbf, 0xde, 0xaf, 0xe5, 0xd7, 0xfb, 0xa8, 0xea, + 0x79, 0x4b, 0xaa, 0xf9, 0x1e, 0xed, 0xf2, 0x04, 0x7c, 0x6b, 0x47, 0xd1, 0x5f, 0xe0, 0x7f, 0xf9, + 0x50, 0x78, 0x69, 0x74, 0x90, 0x80, 0xef, 0x76, 0xf4, 0xa2, 0x5d, 0x59, 0x79, 0x0a, 0xdb, 0xfb, + 0x6e, 0xa0, 0xbd, 0xe5, 0xd4, 0xdb, 0x90, 0x0b, 0xf3, 0x62, 0x2d, 0x12, 0xde, 0x2e, 0x92, 0x54, + 0xab, 0x40, 0x77, 0xf4, 0x9e, 0x56, 0xd9, 0x59, 0x89, 0x73, 0x81, 0x1a, 0xa1, 0x80, 0x88, 0x5b, + 0x3b, 0x07, 0xf5, 0xc3, 0xf6, 0xf1, 0xb3, 0xff, 0xcc, 0xe3, 0xee, 0xe9, 0x1d, 0x8d, 0x37, 0x92, + 0xe6, 0x15, 0xd0, 0xde, 0xb7, 0xfa, 0x4a, 0x1a, 0x99, 0xd2, 0x24, 0xa8, 0xc5, 0x61, 0x06, 0xbe, + 0xa0, 0x4c, 0xa7, 0x79, 0xbc, 0x65, 0x1a, 0x32, 0x82, 0xd9, 0x40, 0x4b, 0xab, 0x48, 0x65, 0xc7, + 0x5b, 0x62, 0xcd, 0x57, 0xa8, 0x0e, 0x71, 0xa6, 0x03, 0xdd, 0xdb, 0x1c, 0x48, 0x52, 0x4f, 0xe2, + 0x6c, 0x48, 0x98, 0xdb, 0xd6, 0xb8, 0xfa, 0x49, 0x9c, 0x79, 0x52, 0x6d, 0x0e, 0x51, 0x13, 0xe2, + 0xec, 0x35, 0xa3, 0x91, 0x55, 0x57, 0xa0, 0x07, 0x37, 0x82, 0xe4, 0xf0, 0x80, 0xa6, 0xcc, 0x07, + 0xf7, 0xb6, 0xe6, 0x35, 0x75, 0xdb, 0x2b, 0x61, 0xe6, 0x19, 0x6a, 0x66, 0x74, 0x96, 0x46, 0xc0, + 0xad, 0xdd, 0x6d, 0x0c, 0x0e, 0xd5, 0x70, 0x05, 0x2c, 0x6a, 0xee, 0x95, 0x14, 0xd3, 0x47, 0x9d, + 0xe2, 0x79, 0x4a, 0xd3, 0x58, 0x70, 0xab, 0xa1, 0xa8, 0xf7, 0xb7, 0xa1, 0x2a, 0x85, 0x7b, 0x57, + 0xa3, 0x3b, 0x2b, 0x4d, 0xee, 0xfd, 0x01, 0x75, 0xf1, 0x7c, 0x61, 0xd7, 0x2e, 0x17, 0x76, 0xed, + 0x6a, 0x61, 0xd7, 0xbe, 0xe4, 0xb6, 0x31, 0xcf, 0x6d, 0xe3, 0x32, 0xb7, 0x8d, 0xab, 0xdc, 0x36, + 0x7e, 0xe6, 0xb6, 0xf1, 0xf5, 0x97, 0x5d, 0x7b, 0xd7, 0x2a, 0xff, 0x8b, 0xdf, 0x01, 0x00, 0x00, + 0xff, 0xff, 0x80, 0x75, 0x96, 0xb8, 0xfd, 0x04, 0x00, 0x00, } diff --git a/vendor/k8s.io/client-go/pkg/apis/settings/v1alpha1/generated.proto b/vendor/k8s.io/client-go/pkg/apis/settings/v1alpha1/generated.proto index c27c921f..5b0c9e5c 100644 --- a/vendor/k8s.io/client-go/pkg/apis/settings/v1alpha1/generated.proto +++ b/vendor/k8s.io/client-go/pkg/apis/settings/v1alpha1/generated.proto @@ -19,12 +19,11 @@ limitations under the License. syntax = 'proto2'; -package k8s.io.kubernetes.pkg.apis.settings.v1alpha1; +package k8s.io.client_go.pkg.apis.settings.v1alpha1; import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; import "k8s.io/kubernetes/pkg/api/v1/generated.proto"; // Package-wide variables from generator "generated". @@ -43,7 +42,7 @@ message PodPreset { // PodPresetList is a list of PodPreset objects. message PodPresetList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -59,18 +58,18 @@ message PodPresetSpec { // Env defines the collection of EnvVar to inject into containers. // +optional - repeated k8s.io.kubernetes.pkg.api.v1.EnvVar env = 2; + repeated k8s.io.client_go.pkg.api.v1.EnvVar env = 2; // EnvFrom defines the collection of EnvFromSource to inject into containers. // +optional - repeated k8s.io.kubernetes.pkg.api.v1.EnvFromSource envFrom = 3; + repeated k8s.io.client_go.pkg.api.v1.EnvFromSource envFrom = 3; // Volumes defines the collection of Volume to inject into the pod. // +optional - repeated k8s.io.kubernetes.pkg.api.v1.Volume volumes = 4; + repeated k8s.io.client_go.pkg.api.v1.Volume volumes = 4; // VolumeMounts defines the collection of VolumeMount to inject into containers. // +optional - repeated k8s.io.kubernetes.pkg.api.v1.VolumeMount volumeMounts = 5; + repeated k8s.io.client_go.pkg.api.v1.VolumeMount volumeMounts = 5; } diff --git a/vendor/k8s.io/client-go/pkg/apis/settings/v1alpha1/types.go b/vendor/k8s.io/client-go/pkg/apis/settings/v1alpha1/types.go index 977fc0d2..0565f7c6 100644 --- a/vendor/k8s.io/client-go/pkg/apis/settings/v1alpha1/types.go +++ b/vendor/k8s.io/client-go/pkg/apis/settings/v1alpha1/types.go @@ -58,7 +58,7 @@ type PodPresetSpec struct { type PodPresetList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` diff --git a/vendor/k8s.io/client-go/pkg/apis/settings/v1alpha1/types_swagger_doc_generated.go b/vendor/k8s.io/client-go/pkg/apis/settings/v1alpha1/types_swagger_doc_generated.go index 63a7be99..2a89e556 100644 --- a/vendor/k8s.io/client-go/pkg/apis/settings/v1alpha1/types_swagger_doc_generated.go +++ b/vendor/k8s.io/client-go/pkg/apis/settings/v1alpha1/types_swagger_doc_generated.go @@ -37,7 +37,7 @@ func (PodPreset) SwaggerDoc() map[string]string { var map_PodPresetList = map[string]string{ "": "PodPresetList is a list of PodPreset objects.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "items": "Items is a list of schema objects.", } diff --git a/vendor/k8s.io/client-go/pkg/apis/storage/types.go b/vendor/k8s.io/client-go/pkg/apis/storage/types.go index e3e4160b..827e7c66 100644 --- a/vendor/k8s.io/client-go/pkg/apis/storage/types.go +++ b/vendor/k8s.io/client-go/pkg/apis/storage/types.go @@ -51,7 +51,7 @@ type StorageClass struct { type StorageClassList struct { metav1.TypeMeta // Standard list metadata - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta diff --git a/vendor/k8s.io/client-go/pkg/apis/storage/v1/generated.pb.go b/vendor/k8s.io/client-go/pkg/apis/storage/v1/generated.pb.go index 3e88054c..cc241c5b 100644 --- a/vendor/k8s.io/client-go/pkg/apis/storage/v1/generated.pb.go +++ b/vendor/k8s.io/client-go/pkg/apis/storage/v1/generated.pb.go @@ -34,9 +34,10 @@ import proto "github.com/gogo/protobuf/proto" import fmt "fmt" import math "math" +import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + import strings "strings" import reflect "reflect" -import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" import io "io" @@ -91,10 +92,15 @@ func (m *StorageClass) MarshalTo(dAtA []byte) (int, error) { i = encodeVarintGenerated(dAtA, i, uint64(len(m.Provisioner))) i += copy(dAtA[i:], m.Provisioner) if len(m.Parameters) > 0 { + keysForParameters := make([]string, 0, len(m.Parameters)) for k := range m.Parameters { + keysForParameters = append(keysForParameters, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForParameters) + for _, k := range keysForParameters { dAtA[i] = 0x1a i++ - v := m.Parameters[k] + v := m.Parameters[string(k)] mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v))) i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) dAtA[i] = 0xa @@ -707,35 +713,34 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 474 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x92, 0x4f, 0x6f, 0xd3, 0x30, - 0x18, 0xc6, 0xe3, 0x54, 0x95, 0x36, 0x17, 0x44, 0x15, 0x38, 0x54, 0x3d, 0x64, 0xd5, 0x04, 0x52, - 0x2f, 0xd8, 0x74, 0x63, 0x68, 0x42, 0xe2, 0xd2, 0x89, 0x03, 0x12, 0x88, 0x29, 0x5c, 0x10, 0xe2, - 0x80, 0xdb, 0xbd, 0xa4, 0x26, 0x4d, 0x1c, 0xd9, 0x6f, 0x02, 0xbd, 0xf1, 0x11, 0xf8, 0x58, 0x15, - 0xa7, 0x1d, 0x39, 0x0d, 0x1a, 0xbe, 0x08, 0xca, 0x1f, 0x96, 0x88, 0x6c, 0xa2, 0xda, 0x2d, 0xaf, - 0xed, 0xdf, 0xe3, 0xe7, 0x79, 0x1c, 0x7a, 0x14, 0x1c, 0x1b, 0x26, 0x15, 0x0f, 0x92, 0x19, 0xe8, - 0x08, 0x10, 0x0c, 0x8f, 0x03, 0x9f, 0x8b, 0x58, 0x1a, 0x6e, 0x50, 0x69, 0xe1, 0x03, 0x4f, 0x27, - 0xdc, 0x87, 0x08, 0xb4, 0x40, 0x38, 0x63, 0xb1, 0x56, 0xa8, 0x9c, 0x07, 0x25, 0xc6, 0x6a, 0x8c, - 0xc5, 0x81, 0xcf, 0x72, 0x8c, 0x55, 0x18, 0x4b, 0x27, 0xc3, 0x87, 0xbe, 0xc4, 0x45, 0x32, 0x63, - 0x73, 0x15, 0x72, 0x5f, 0xf9, 0x8a, 0x17, 0xf4, 0x2c, 0xf9, 0x58, 0x4c, 0xc5, 0x50, 0x7c, 0x95, - 0xaa, 0xc3, 0xc7, 0x95, 0x19, 0x11, 0xcb, 0x50, 0xcc, 0x17, 0x32, 0x02, 0xbd, 0xaa, 0xed, 0x84, - 0x80, 0xe2, 0x0a, 0x2f, 0x43, 0x7e, 0x1d, 0xa5, 0x93, 0x08, 0x65, 0x08, 0x2d, 0xe0, 0xc9, 0xff, - 0x00, 0x33, 0x5f, 0x40, 0x28, 0x5a, 0xdc, 0xe1, 0x75, 0x5c, 0x82, 0x72, 0xc9, 0x65, 0x84, 0x06, - 0x75, 0x0b, 0x6a, 0x64, 0x32, 0xa0, 0x53, 0xd0, 0x75, 0x20, 0xf8, 0x22, 0xc2, 0x78, 0x79, 0x55, - 0xbf, 0xfb, 0x3f, 0x6d, 0x7a, 0xeb, 0x4d, 0xd9, 0xe3, 0xc9, 0x52, 0x18, 0xe3, 0x7c, 0xa0, 0x3b, - 0x79, 0xfe, 0x33, 0x81, 0x62, 0x40, 0x46, 0x64, 0xdc, 0x3b, 0x78, 0xc4, 0xaa, 0x37, 0x68, 0xda, - 0xa9, 0x5f, 0x21, 0x3f, 0xcd, 0xd2, 0x09, 0x7b, 0x3d, 0xfb, 0x04, 0x73, 0x7c, 0x05, 0x28, 0xa6, - 0xce, 0xfa, 0x62, 0xcf, 0xca, 0x2e, 0xf6, 0x68, 0xbd, 0xe6, 0x5d, 0xaa, 0x3a, 0x47, 0xb4, 0x17, - 0x6b, 0x95, 0x4a, 0x23, 0x55, 0x04, 0x7a, 0x60, 0x8f, 0xc8, 0x78, 0x77, 0x7a, 0xb7, 0x42, 0x7a, - 0xa7, 0xf5, 0x96, 0xd7, 0x3c, 0xe7, 0x7c, 0xa6, 0x34, 0x16, 0x5a, 0x84, 0x80, 0xa0, 0xcd, 0xa0, - 0x33, 0xea, 0x8c, 0x7b, 0x07, 0x27, 0x6c, 0xab, 0xdf, 0x83, 0x35, 0x13, 0xb2, 0xd3, 0x4b, 0x95, - 0xe7, 0x11, 0xea, 0x55, 0xed, 0xb6, 0xde, 0xf0, 0x1a, 0x57, 0x0d, 0x9f, 0xd1, 0x3b, 0xff, 0x20, - 0x4e, 0x9f, 0x76, 0x02, 0x58, 0x15, 0xfd, 0xec, 0x7a, 0xf9, 0xa7, 0x73, 0x8f, 0x76, 0x53, 0xb1, - 0x4c, 0xa0, 0x8c, 0xe3, 0x95, 0xc3, 0x53, 0xfb, 0x98, 0xec, 0x7f, 0x27, 0xb4, 0xdf, 0xbc, 0xff, - 0xa5, 0x34, 0xe8, 0xbc, 0x6f, 0xb5, 0xcc, 0xb6, 0x6b, 0x39, 0xa7, 0x8b, 0x8e, 0xfb, 0x95, 0xeb, - 0x9d, 0xbf, 0x2b, 0x8d, 0x86, 0xdf, 0xd2, 0xae, 0x44, 0x08, 0xcd, 0xc0, 0x2e, 0x5a, 0x3a, 0xbc, - 0x41, 0x4b, 0xd3, 0xdb, 0x95, 0x7e, 0xf7, 0x45, 0xae, 0xe4, 0x95, 0x82, 0xd3, 0xfb, 0xeb, 0x8d, - 0x6b, 0x9d, 0x6f, 0x5c, 0xeb, 0xc7, 0xc6, 0xb5, 0xbe, 0x66, 0x2e, 0x59, 0x67, 0x2e, 0x39, 0xcf, - 0x5c, 0xf2, 0x2b, 0x73, 0xc9, 0xb7, 0xdf, 0xae, 0xf5, 0xce, 0x4e, 0x27, 0x7f, 0x02, 0x00, 0x00, - 0xff, 0xff, 0xe8, 0xe1, 0xb9, 0x93, 0xec, 0x03, 0x00, 0x00, + // 460 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x91, 0xcf, 0x6f, 0xd3, 0x30, + 0x14, 0xc7, 0xe3, 0x54, 0x95, 0x36, 0x17, 0x44, 0x15, 0x38, 0x54, 0x3d, 0x78, 0xd5, 0x24, 0xa4, + 0x5e, 0xb0, 0xe9, 0xc6, 0xd0, 0x84, 0xc4, 0xa5, 0x13, 0x07, 0x24, 0x10, 0x53, 0xb8, 0x20, 0xc4, + 0x01, 0xb7, 0x7b, 0xa4, 0x26, 0x4d, 0x1c, 0xd9, 0x2f, 0x41, 0xbd, 0xf1, 0x27, 0xf0, 0x67, 0x55, + 0x9c, 0x76, 0xdc, 0x69, 0xd0, 0xf0, 0x8f, 0xa0, 0xfc, 0x60, 0x89, 0x56, 0x26, 0x26, 0x6e, 0x7e, + 0xb6, 0x3f, 0x5f, 0xbf, 0xf7, 0x31, 0x3d, 0x0a, 0x8f, 0x2d, 0x57, 0x5a, 0x84, 0xe9, 0x0c, 0x4c, + 0x0c, 0x08, 0x56, 0x24, 0x61, 0x20, 0x64, 0xa2, 0xac, 0xb0, 0xa8, 0x8d, 0x0c, 0x40, 0x64, 0x13, + 0x11, 0x40, 0x0c, 0x46, 0x22, 0x9c, 0xf1, 0xc4, 0x68, 0xd4, 0xde, 0xc3, 0x0a, 0xe3, 0x0d, 0xc6, + 0x93, 0x30, 0xe0, 0x05, 0xc6, 0x6b, 0x8c, 0x67, 0x93, 0xe1, 0xa3, 0x40, 0xe1, 0x22, 0x9d, 0xf1, + 0xb9, 0x8e, 0x44, 0xa0, 0x03, 0x2d, 0x4a, 0x7a, 0x96, 0x7e, 0x2a, 0xab, 0xb2, 0x28, 0x57, 0x55, + 0xea, 0xf0, 0x49, 0xdd, 0x8c, 0x4c, 0x54, 0x24, 0xe7, 0x0b, 0x15, 0x83, 0x59, 0x35, 0xed, 0x44, + 0x80, 0xf2, 0x2f, 0xbd, 0x0c, 0xc5, 0x4d, 0x94, 0x49, 0x63, 0x54, 0x11, 0x6c, 0x01, 0x4f, 0xff, + 0x05, 0xd8, 0xf9, 0x02, 0x22, 0xb9, 0xc5, 0x1d, 0xde, 0xc4, 0xa5, 0xa8, 0x96, 0x42, 0xc5, 0x68, + 0xd1, 0x5c, 0x87, 0xf6, 0x7f, 0xb8, 0xf4, 0xce, 0xdb, 0xca, 0xc8, 0xc9, 0x52, 0x5a, 0xeb, 0x7d, + 0xa4, 0x3b, 0xc5, 0x24, 0x67, 0x12, 0xe5, 0x80, 0x8c, 0xc8, 0xb8, 0x77, 0xf0, 0x98, 0xd7, 0x36, + 0xdb, 0xc1, 0x8d, 0xcf, 0xe2, 0x36, 0xcf, 0x26, 0xfc, 0xcd, 0xec, 0x33, 0xcc, 0xf1, 0x35, 0xa0, + 0x9c, 0x7a, 0xeb, 0xcb, 0x3d, 0x27, 0xbf, 0xdc, 0xa3, 0xcd, 0x9e, 0x7f, 0x95, 0xea, 0x1d, 0xd1, + 0x5e, 0x62, 0x74, 0xa6, 0xac, 0xd2, 0x31, 0x98, 0x81, 0x3b, 0x22, 0xe3, 0xdd, 0xe9, 0xfd, 0x1a, + 0xe9, 0x9d, 0x36, 0x47, 0x7e, 0xfb, 0x9e, 0xf7, 0x85, 0xd2, 0x44, 0x1a, 0x19, 0x01, 0x82, 0xb1, + 0x83, 0xce, 0xa8, 0x33, 0xee, 0x1d, 0x9c, 0xf0, 0x5b, 0x7d, 0x34, 0x6f, 0x4f, 0xc8, 0x4f, 0xaf, + 0x52, 0x5e, 0xc4, 0x68, 0x56, 0x4d, 0xb7, 0xcd, 0x81, 0xdf, 0x7a, 0x6a, 0xf8, 0x9c, 0xde, 0xbb, + 0x86, 0x78, 0x7d, 0xda, 0x09, 0x61, 0x55, 0xfa, 0xd9, 0xf5, 0x8b, 0xa5, 0xf7, 0x80, 0x76, 0x33, + 0xb9, 0x4c, 0xa1, 0x1a, 0xc7, 0xaf, 0x8a, 0x67, 0xee, 0x31, 0xd9, 0xff, 0x4e, 0x68, 0xbf, 0xfd, + 0xfe, 0x2b, 0x65, 0xd1, 0xfb, 0xb0, 0x65, 0x99, 0xdf, 0xce, 0x72, 0x41, 0x97, 0x8e, 0xfb, 0x75, + 0xd7, 0x3b, 0x7f, 0x76, 0x5a, 0x86, 0xdf, 0xd1, 0xae, 0x42, 0x88, 0xec, 0xc0, 0x2d, 0x2d, 0x1d, + 0xfe, 0x87, 0xa5, 0xe9, 0xdd, 0x3a, 0xbf, 0xfb, 0xb2, 0x48, 0xf2, 0xab, 0xc0, 0xe9, 0x78, 0xbd, + 0x61, 0xce, 0xf9, 0x86, 0x39, 0x17, 0x1b, 0xe6, 0x7c, 0xcd, 0x19, 0x59, 0xe7, 0x8c, 0x9c, 0xe7, + 0x8c, 0x5c, 0xe4, 0x8c, 0xfc, 0xcc, 0x19, 0xf9, 0xf6, 0x8b, 0x39, 0xef, 0xdd, 0x6c, 0xf2, 0x3b, + 0x00, 0x00, 0xff, 0xff, 0x0b, 0xb7, 0x00, 0xe1, 0xba, 0x03, 0x00, 0x00, } diff --git a/vendor/k8s.io/client-go/pkg/apis/storage/v1/generated.proto b/vendor/k8s.io/client-go/pkg/apis/storage/v1/generated.proto index 9457ee7a..1a7849ea 100644 --- a/vendor/k8s.io/client-go/pkg/apis/storage/v1/generated.proto +++ b/vendor/k8s.io/client-go/pkg/apis/storage/v1/generated.proto @@ -19,13 +19,12 @@ limitations under the License. syntax = 'proto2'; -package k8s.io.kubernetes.pkg.apis.storage.v1; +package k8s.io.client_go.pkg.apis.storage.v1; import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; // Package-wide variables from generator "generated". option go_package = "v1"; @@ -37,7 +36,7 @@ option go_package = "v1"; // according to etcd is in ObjectMeta.Name. message StorageClass { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; @@ -53,7 +52,7 @@ message StorageClass { // StorageClassList is a collection of storage classes. message StorageClassList { // Standard list metadata - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; diff --git a/vendor/k8s.io/client-go/pkg/apis/storage/v1/types.go b/vendor/k8s.io/client-go/pkg/apis/storage/v1/types.go index 26828ceb..971db769 100644 --- a/vendor/k8s.io/client-go/pkg/apis/storage/v1/types.go +++ b/vendor/k8s.io/client-go/pkg/apis/storage/v1/types.go @@ -31,7 +31,7 @@ import ( type StorageClass struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -48,7 +48,7 @@ type StorageClass struct { type StorageClassList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` diff --git a/vendor/k8s.io/client-go/pkg/apis/storage/v1/types_swagger_doc_generated.go b/vendor/k8s.io/client-go/pkg/apis/storage/v1/types_swagger_doc_generated.go index 767ef607..a13106fa 100644 --- a/vendor/k8s.io/client-go/pkg/apis/storage/v1/types_swagger_doc_generated.go +++ b/vendor/k8s.io/client-go/pkg/apis/storage/v1/types_swagger_doc_generated.go @@ -29,7 +29,7 @@ package v1 // AUTO-GENERATED FUNCTIONS START HERE var map_StorageClass = map[string]string{ "": "StorageClass describes the parameters for a class of storage for which PersistentVolumes can be dynamically provisioned.\n\nStorageClasses are non-namespaced; the name of the storage class according to etcd is in ObjectMeta.Name.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "provisioner": "Provisioner indicates the type of the provisioner.", "parameters": "Parameters holds the parameters for the provisioner that should create volumes of this storage class.", } @@ -40,7 +40,7 @@ func (StorageClass) SwaggerDoc() map[string]string { var map_StorageClassList = map[string]string{ "": "StorageClassList is a collection of storage classes.", - "metadata": "Standard list metadata More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard list metadata More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "items": "Items is the list of StorageClasses", } diff --git a/vendor/k8s.io/client-go/pkg/apis/storage/v1beta1/generated.pb.go b/vendor/k8s.io/client-go/pkg/apis/storage/v1beta1/generated.pb.go index 6ef1e6e1..8f446c0b 100644 --- a/vendor/k8s.io/client-go/pkg/apis/storage/v1beta1/generated.pb.go +++ b/vendor/k8s.io/client-go/pkg/apis/storage/v1beta1/generated.pb.go @@ -34,9 +34,10 @@ import proto "github.com/gogo/protobuf/proto" import fmt "fmt" import math "math" +import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + import strings "strings" import reflect "reflect" -import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" import io "io" @@ -91,10 +92,15 @@ func (m *StorageClass) MarshalTo(dAtA []byte) (int, error) { i = encodeVarintGenerated(dAtA, i, uint64(len(m.Provisioner))) i += copy(dAtA[i:], m.Provisioner) if len(m.Parameters) > 0 { + keysForParameters := make([]string, 0, len(m.Parameters)) for k := range m.Parameters { + keysForParameters = append(keysForParameters, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForParameters) + for _, k := range keysForParameters { dAtA[i] = 0x1a i++ - v := m.Parameters[k] + v := m.Parameters[string(k)] mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v))) i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) dAtA[i] = 0xa @@ -707,35 +713,35 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 479 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x92, 0x4d, 0x8b, 0xd3, 0x40, - 0x1c, 0xc6, 0x33, 0x2d, 0xc5, 0xdd, 0xa9, 0x62, 0x89, 0x1e, 0x4a, 0x0f, 0xd9, 0xb2, 0xa7, 0x2a, - 0x38, 0x63, 0xd7, 0x17, 0xca, 0x82, 0x97, 0x8a, 0xa0, 0xa0, 0xb8, 0xc4, 0x9b, 0x28, 0x38, 0xe9, - 0xfe, 0x4d, 0xc7, 0x34, 0x99, 0x30, 0xf3, 0x4f, 0xb0, 0xe0, 0xc1, 0x8f, 0xe0, 0xc7, 0xea, 0xcd, - 0x3d, 0x7a, 0x5a, 0x6c, 0xf4, 0x83, 0x48, 0x5e, 0xdc, 0x04, 0xe3, 0x62, 0xf1, 0x96, 0x79, 0xf9, - 0x3d, 0xff, 0xe7, 0x79, 0x26, 0xf4, 0x38, 0x98, 0x19, 0x26, 0x15, 0x0f, 0x12, 0x0f, 0x74, 0x04, - 0x08, 0x86, 0xc7, 0x81, 0xcf, 0x45, 0x2c, 0x0d, 0x37, 0xa8, 0xb4, 0xf0, 0x81, 0xa7, 0x53, 0x0f, - 0x50, 0x4c, 0xb9, 0x0f, 0x11, 0x68, 0x81, 0x70, 0xca, 0x62, 0xad, 0x50, 0xd9, 0xb7, 0x4b, 0x96, - 0xd5, 0x2c, 0x8b, 0x03, 0x9f, 0xe5, 0x2c, 0xab, 0x58, 0x56, 0xb1, 0xa3, 0x3b, 0xbe, 0xc4, 0x65, - 0xe2, 0xb1, 0x85, 0x0a, 0xb9, 0xaf, 0x7c, 0xc5, 0x0b, 0x09, 0x2f, 0x79, 0x5f, 0xac, 0x8a, 0x45, - 0xf1, 0x55, 0x4a, 0x8f, 0xee, 0x57, 0xb6, 0x44, 0x2c, 0x43, 0xb1, 0x58, 0xca, 0x08, 0xf4, 0xba, - 0x36, 0x16, 0x02, 0x0a, 0x9e, 0xb6, 0x0c, 0x8d, 0xf8, 0x65, 0x94, 0x4e, 0x22, 0x94, 0x21, 0xb4, - 0x80, 0x87, 0xff, 0x02, 0xcc, 0x62, 0x09, 0xa1, 0x68, 0x71, 0xf7, 0x2e, 0xe3, 0x12, 0x94, 0x2b, - 0x2e, 0x23, 0x34, 0xa8, 0x5b, 0x50, 0x23, 0x93, 0x01, 0x9d, 0x82, 0xae, 0x03, 0xc1, 0x47, 0x11, - 0xc6, 0x2b, 0xf8, 0x4b, 0xa6, 0xc3, 0x9f, 0x1d, 0x7a, 0xf5, 0x55, 0x59, 0xe6, 0xe3, 0x95, 0x30, - 0xc6, 0x7e, 0x47, 0xf7, 0xf2, 0xfc, 0xa7, 0x02, 0xc5, 0x90, 0x8c, 0xc9, 0xa4, 0x7f, 0x74, 0x97, - 0x55, 0x0f, 0xd1, 0xb4, 0x53, 0x3f, 0x45, 0x7e, 0x9b, 0xa5, 0x53, 0xf6, 0xd2, 0xfb, 0x00, 0x0b, - 0x7c, 0x01, 0x28, 0xe6, 0xf6, 0xe6, 0xfc, 0xc0, 0xca, 0xce, 0x0f, 0x68, 0xbd, 0xe7, 0x5e, 0xa8, - 0xda, 0x0f, 0x68, 0x3f, 0xd6, 0x2a, 0x95, 0x46, 0xaa, 0x08, 0xf4, 0xb0, 0x33, 0x26, 0x93, 0xfd, - 0xf9, 0x8d, 0x0a, 0xe9, 0x9f, 0xd4, 0x47, 0x6e, 0xf3, 0x9e, 0xfd, 0x89, 0xd2, 0x58, 0x68, 0x11, - 0x02, 0x82, 0x36, 0xc3, 0xee, 0xb8, 0x3b, 0xe9, 0x1f, 0x3d, 0x65, 0xbb, 0xff, 0x23, 0xac, 0x19, - 0x93, 0x9d, 0x5c, 0x48, 0x3d, 0x89, 0x50, 0xaf, 0x6b, 0xcb, 0xf5, 0x81, 0xdb, 0x98, 0x37, 0x7a, - 0x44, 0xaf, 0xff, 0x81, 0xd8, 0x03, 0xda, 0x0d, 0x60, 0x5d, 0x94, 0xb4, 0xef, 0xe6, 0x9f, 0xf6, - 0x4d, 0xda, 0x4b, 0xc5, 0x2a, 0x81, 0x32, 0x93, 0x5b, 0x2e, 0x8e, 0x3b, 0x33, 0x72, 0xf8, 0x95, - 0xd0, 0x41, 0x73, 0xfe, 0x73, 0x69, 0xd0, 0x7e, 0xd3, 0xaa, 0x9a, 0xed, 0x56, 0x75, 0x4e, 0x17, - 0x45, 0x0f, 0x2a, 0xd7, 0x7b, 0xbf, 0x77, 0x1a, 0x35, 0xbf, 0xa5, 0x3d, 0x89, 0x10, 0x9a, 0x61, - 0xa7, 0xa8, 0x6a, 0xf6, 0xbf, 0x55, 0xcd, 0xaf, 0x55, 0x43, 0x7a, 0xcf, 0x72, 0x39, 0xb7, 0x54, - 0x9d, 0xdf, 0xda, 0x6c, 0x1d, 0xeb, 0x6c, 0xeb, 0x58, 0xdf, 0xb6, 0x8e, 0xf5, 0x39, 0x73, 0xc8, - 0x26, 0x73, 0xc8, 0x59, 0xe6, 0x90, 0xef, 0x99, 0x43, 0xbe, 0xfc, 0x70, 0xac, 0xd7, 0x57, 0x2a, - 0xb5, 0x5f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x7e, 0xb2, 0x39, 0x2a, 0x05, 0x04, 0x00, 0x00, + // 466 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x91, 0xcf, 0x6b, 0x13, 0x41, + 0x14, 0xc7, 0x77, 0x52, 0x82, 0xed, 0x44, 0x31, 0xac, 0x1e, 0x42, 0x0e, 0xd3, 0xd0, 0x53, 0x10, + 0x3a, 0x63, 0xea, 0x0f, 0x42, 0xc1, 0x4b, 0x44, 0x50, 0x50, 0x2c, 0xeb, 0x4d, 0x14, 0x9c, 0x4d, + 0x9f, 0x9b, 0x71, 0xb3, 0x3b, 0xcb, 0xcc, 0xdb, 0x85, 0x80, 0x07, 0xff, 0x04, 0xff, 0xac, 0xdc, + 0xec, 0xb1, 0xa7, 0x62, 0x56, 0xff, 0x10, 0xd9, 0x1f, 0x76, 0x97, 0x86, 0x62, 0xf1, 0xb6, 0x6f, + 0x66, 0x3e, 0xdf, 0xf7, 0xde, 0x67, 0xe9, 0x71, 0x38, 0xb5, 0x5c, 0x69, 0x11, 0xa6, 0x3e, 0x98, + 0x18, 0x10, 0xac, 0x48, 0xc2, 0x40, 0xc8, 0x44, 0x59, 0x61, 0x51, 0x1b, 0x19, 0x80, 0xc8, 0x26, + 0x3e, 0xa0, 0x9c, 0x88, 0x00, 0x62, 0x30, 0x12, 0xe1, 0x94, 0x27, 0x46, 0xa3, 0x76, 0x1f, 0x54, + 0x2c, 0x6f, 0x58, 0x9e, 0x84, 0x01, 0x2f, 0x58, 0x5e, 0xb3, 0xbc, 0x66, 0x87, 0x87, 0x81, 0xc2, + 0x45, 0xea, 0xf3, 0xb9, 0x8e, 0x44, 0xa0, 0x03, 0x2d, 0xca, 0x08, 0x3f, 0xfd, 0x5c, 0x56, 0x65, + 0x51, 0x7e, 0x55, 0xd1, 0xc3, 0xc7, 0xf5, 0x58, 0x32, 0x51, 0x91, 0x9c, 0x2f, 0x54, 0x0c, 0x66, + 0xd5, 0x0c, 0x16, 0x01, 0x4a, 0x91, 0x6d, 0x0d, 0x34, 0x14, 0xd7, 0x51, 0x26, 0x8d, 0x51, 0x45, + 0xb0, 0x05, 0x3c, 0xfd, 0x17, 0x60, 0xe7, 0x0b, 0x88, 0xe4, 0x16, 0xf7, 0xe8, 0x3a, 0x2e, 0x45, + 0xb5, 0x14, 0x2a, 0x46, 0x8b, 0xe6, 0x2a, 0x74, 0xf0, 0xbb, 0x43, 0x6f, 0xbf, 0xab, 0xb4, 0x3c, + 0x5f, 0x4a, 0x6b, 0xdd, 0x4f, 0x74, 0xb7, 0xd8, 0xe4, 0x54, 0xa2, 0x1c, 0x90, 0x11, 0x19, 0xf7, + 0x8e, 0x1e, 0xf2, 0x5a, 0x69, 0x3b, 0xb8, 0x91, 0x5a, 0xbc, 0xe6, 0xd9, 0x84, 0xbf, 0xf5, 0xbf, + 0xc0, 0x1c, 0xdf, 0x00, 0xca, 0x99, 0xbb, 0xbe, 0xd8, 0x77, 0xf2, 0x8b, 0x7d, 0xda, 0x9c, 0x79, + 0x97, 0xa9, 0xee, 0x13, 0xda, 0x4b, 0x8c, 0xce, 0x94, 0x55, 0x3a, 0x06, 0x33, 0xe8, 0x8c, 0xc8, + 0x78, 0x6f, 0x76, 0xaf, 0x46, 0x7a, 0x27, 0xcd, 0x95, 0xd7, 0x7e, 0xe7, 0x7e, 0xa5, 0x34, 0x91, + 0x46, 0x46, 0x80, 0x60, 0xec, 0x60, 0x67, 0xb4, 0x33, 0xee, 0x1d, 0xbd, 0xe4, 0x37, 0xff, 0xdb, + 0xbc, 0xbd, 0x26, 0x3f, 0xb9, 0x8c, 0x7a, 0x11, 0xa3, 0x59, 0x35, 0x23, 0x37, 0x17, 0x5e, 0xab, + 0xdf, 0xf0, 0x19, 0xbd, 0x7b, 0x05, 0x71, 0xfb, 0x74, 0x27, 0x84, 0x55, 0x29, 0x69, 0xcf, 0x2b, + 0x3e, 0xdd, 0xfb, 0xb4, 0x9b, 0xc9, 0x65, 0x0a, 0xd5, 0x4e, 0x5e, 0x55, 0x1c, 0x77, 0xa6, 0xe4, + 0xe0, 0x07, 0xa1, 0xfd, 0x76, 0xff, 0xd7, 0xca, 0xa2, 0xfb, 0x61, 0x4b, 0x35, 0xbf, 0x99, 0xea, + 0x82, 0x2e, 0x45, 0xf7, 0xeb, 0xa9, 0x77, 0xff, 0x9e, 0xb4, 0x34, 0x7f, 0xa4, 0x5d, 0x85, 0x10, + 0xd9, 0x41, 0xa7, 0x54, 0x35, 0xfd, 0x5f, 0x55, 0xb3, 0x3b, 0x75, 0x93, 0xee, 0xab, 0x22, 0xce, + 0xab, 0x52, 0x67, 0x87, 0xeb, 0x0d, 0x73, 0xce, 0x36, 0xcc, 0x39, 0xdf, 0x30, 0xe7, 0x5b, 0xce, + 0xc8, 0x3a, 0x67, 0xe4, 0x2c, 0x67, 0xe4, 0x3c, 0x67, 0xe4, 0x67, 0xce, 0xc8, 0xf7, 0x5f, 0xcc, + 0x79, 0x7f, 0xab, 0x4e, 0xfc, 0x13, 0x00, 0x00, 0xff, 0xff, 0xaf, 0x85, 0xaa, 0xb3, 0xd3, 0x03, + 0x00, 0x00, } diff --git a/vendor/k8s.io/client-go/pkg/apis/storage/v1beta1/generated.proto b/vendor/k8s.io/client-go/pkg/apis/storage/v1beta1/generated.proto index 28080dd6..5fb69659 100644 --- a/vendor/k8s.io/client-go/pkg/apis/storage/v1beta1/generated.proto +++ b/vendor/k8s.io/client-go/pkg/apis/storage/v1beta1/generated.proto @@ -19,13 +19,12 @@ limitations under the License. syntax = 'proto2'; -package k8s.io.kubernetes.pkg.apis.storage.v1beta1; +package k8s.io.client_go.pkg.apis.storage.v1beta1; import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; // Package-wide variables from generator "generated". option go_package = "v1beta1"; @@ -37,7 +36,7 @@ option go_package = "v1beta1"; // according to etcd is in ObjectMeta.Name. message StorageClass { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; @@ -53,7 +52,7 @@ message StorageClass { // StorageClassList is a collection of storage classes. message StorageClassList { // Standard list metadata - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; diff --git a/vendor/k8s.io/client-go/pkg/apis/storage/v1beta1/types.go b/vendor/k8s.io/client-go/pkg/apis/storage/v1beta1/types.go index 8211f674..8b475678 100644 --- a/vendor/k8s.io/client-go/pkg/apis/storage/v1beta1/types.go +++ b/vendor/k8s.io/client-go/pkg/apis/storage/v1beta1/types.go @@ -31,7 +31,7 @@ import ( type StorageClass struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -48,7 +48,7 @@ type StorageClass struct { type StorageClassList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` diff --git a/vendor/k8s.io/client-go/pkg/apis/storage/v1beta1/types_swagger_doc_generated.go b/vendor/k8s.io/client-go/pkg/apis/storage/v1beta1/types_swagger_doc_generated.go index a6e5288c..0d43bb03 100644 --- a/vendor/k8s.io/client-go/pkg/apis/storage/v1beta1/types_swagger_doc_generated.go +++ b/vendor/k8s.io/client-go/pkg/apis/storage/v1beta1/types_swagger_doc_generated.go @@ -29,7 +29,7 @@ package v1beta1 // AUTO-GENERATED FUNCTIONS START HERE var map_StorageClass = map[string]string{ "": "StorageClass describes the parameters for a class of storage for which PersistentVolumes can be dynamically provisioned.\n\nStorageClasses are non-namespaced; the name of the storage class according to etcd is in ObjectMeta.Name.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "provisioner": "Provisioner indicates the type of the provisioner.", "parameters": "Parameters holds the parameters for the provisioner that should create volumes of this storage class.", } @@ -40,7 +40,7 @@ func (StorageClass) SwaggerDoc() map[string]string { var map_StorageClassList = map[string]string{ "": "StorageClassList is a collection of storage classes.", - "metadata": "Standard list metadata More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard list metadata More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "items": "Items is the list of StorageClasses", } diff --git a/vendor/k8s.io/client-go/rest/request.go b/vendor/k8s.io/client-go/rest/request.go index b87ddaff..cfb4511b 100644 --- a/vendor/k8s.io/client-go/rest/request.go +++ b/vendor/k8s.io/client-go/rest/request.go @@ -1148,6 +1148,9 @@ func (r Result) Into(obj runtime.Object) error { if r.decoder == nil { return fmt.Errorf("serializer for %s doesn't exist", r.contentType) } + if len(r.body) == 0 { + return fmt.Errorf("0-length response") + } out, _, err := r.decoder.Decode(r.body, nil, obj) if err != nil || out == obj { diff --git a/vendor/k8s.io/client-go/tools/record/events_cache.go b/vendor/k8s.io/client-go/tools/record/events_cache.go index f5c0ca35..bde110bf 100644 --- a/vendor/k8s.io/client-go/tools/record/events_cache.go +++ b/vendor/k8s.io/client-go/tools/record/events_cache.go @@ -93,7 +93,7 @@ type EventAggregatorMessageFunc func(event *v1.Event) string // EventAggregratorByReasonMessageFunc returns an aggregate message by prefixing the incoming message func EventAggregatorByReasonMessageFunc(event *v1.Event) string { - return "(events with common reason combined)" + return "(combined from similar events): " + event.Message } // EventAggregator identifies similar events and aggregates them into a single event @@ -141,11 +141,22 @@ type aggregateRecord struct { lastTimestamp metav1.Time } -// EventAggregate identifies similar events and groups into a common event if required -func (e *EventAggregator) EventAggregate(newEvent *v1.Event) (*v1.Event, error) { - aggregateKey, localKey := e.keyFunc(newEvent) +// EventAggregate checks if a similar event has been seen according to the +// aggregation configuration (max events, max interval, etc) and returns: +// +// - The (potentially modified) event that should be created +// - The cache key for the event, for correlation purposes. This will be set to +// the full key for normal events, and to the result of +// EventAggregatorMessageFunc for aggregate events. +func (e *EventAggregator) EventAggregate(newEvent *v1.Event) (*v1.Event, string) { now := metav1.NewTime(e.clock.Now()) - record := aggregateRecord{localKeys: sets.NewString(), lastTimestamp: now} + var record aggregateRecord + // eventKey is the full cache key for this event + eventKey := getEventKey(newEvent) + // aggregateKey is for the aggregate event, if one is needed. + aggregateKey, localKey := e.keyFunc(newEvent) + + // Do we have a record of similar events in our cache? e.Lock() defer e.Unlock() value, found := e.cache.Get(aggregateKey) @@ -153,24 +164,30 @@ func (e *EventAggregator) EventAggregate(newEvent *v1.Event) (*v1.Event, error) record = value.(aggregateRecord) } - // if the last event was far enough in the past, it is not aggregated, and we must reset state + // Is the previous record too old? If so, make a fresh one. Note: if we didn't + // find a similar record, its lastTimestamp will be the zero value, so we + // create a new one in that case. maxInterval := time.Duration(e.maxIntervalInSeconds) * time.Second interval := now.Time.Sub(record.lastTimestamp.Time) if interval > maxInterval { record = aggregateRecord{localKeys: sets.NewString()} } + + // Write the new event into the aggregation record and put it on the cache record.localKeys.Insert(localKey) record.lastTimestamp = now e.cache.Add(aggregateKey, record) + // If we are not yet over the threshold for unique events, don't correlate them if uint(record.localKeys.Len()) < e.maxEvents { - return newEvent, nil + return newEvent, eventKey } // do not grow our local key set any larger than max record.localKeys.PopAny() - // create a new aggregate event + // create a new aggregate event, and return the aggregateKey as the cache key + // (so that it can be overwritten.) eventCopy := &v1.Event{ ObjectMeta: metav1.ObjectMeta{ Name: fmt.Sprintf("%v.%x", newEvent.InvolvedObject.Name, now.UnixNano()), @@ -185,7 +202,7 @@ func (e *EventAggregator) EventAggregate(newEvent *v1.Event) (*v1.Event, error) Reason: newEvent.Reason, Source: newEvent.Source, } - return eventCopy, nil + return eventCopy, aggregateKey } // eventLog records data about when an event was observed @@ -215,22 +232,22 @@ func newEventLogger(lruCacheEntries int, clock clock.Clock) *eventLogger { return &eventLogger{cache: lru.New(lruCacheEntries), clock: clock} } -// eventObserve records the event, and determines if its frequency should update -func (e *eventLogger) eventObserve(newEvent *v1.Event) (*v1.Event, []byte, error) { +// eventObserve records an event, or updates an existing one if key is a cache hit +func (e *eventLogger) eventObserve(newEvent *v1.Event, key string) (*v1.Event, []byte, error) { var ( patch []byte err error ) - key := getEventKey(newEvent) eventCopy := *newEvent event := &eventCopy e.Lock() defer e.Unlock() + // Check if there is an existing event we should update lastObservation := e.lastEventObservationFromCache(key) - // we have seen this event before, so we must prepare a patch + // If we found a result, prepare a patch if lastObservation.count > 0 { // update the event based on the last observation so patch will work as desired event.Name = lastObservation.name @@ -241,6 +258,7 @@ func (e *eventLogger) eventObserve(newEvent *v1.Event) (*v1.Event, []byte, error eventCopy2 := *event eventCopy2.Count = 0 eventCopy2.LastTimestamp = metav1.NewTime(time.Unix(0, 0)) + eventCopy2.Message = "" newData, _ := json.Marshal(event) oldData, _ := json.Marshal(eventCopy2) @@ -337,6 +355,7 @@ func NewEventCorrelator(clock clock.Clock) *EventCorrelator { defaultAggregateMaxEvents, defaultAggregateIntervalInSeconds, clock), + logger: newEventLogger(cacheSize, clock), } } @@ -346,11 +365,8 @@ func (c *EventCorrelator) EventCorrelate(newEvent *v1.Event) (*EventCorrelateRes if c.filterFunc(newEvent) { return &EventCorrelateResult{Skip: true}, nil } - aggregateEvent, err := c.aggregator.EventAggregate(newEvent) - if err != nil { - return &EventCorrelateResult{}, err - } - observedEvent, patch, err := c.logger.eventObserve(aggregateEvent) + aggregateEvent, ckey := c.aggregator.EventAggregate(newEvent) + observedEvent, patch, err := c.logger.eventObserve(aggregateEvent, ckey) return &EventCorrelateResult{Event: observedEvent, Patch: patch}, err } diff --git a/vendor/k8s.io/client-go/util/flowcontrol/throttle.go b/vendor/k8s.io/client-go/util/flowcontrol/throttle.go index 881a2f57..c45169c4 100644 --- a/vendor/k8s.io/client-go/util/flowcontrol/throttle.go +++ b/vendor/k8s.io/client-go/util/flowcontrol/throttle.go @@ -51,6 +51,22 @@ type tokenBucketRateLimiter struct { // The maximum number of tokens in the bucket is capped at 'burst'. func NewTokenBucketRateLimiter(qps float32, burst int) RateLimiter { limiter := ratelimit.NewBucketWithRate(float64(qps), int64(burst)) + return newTokenBucketRateLimiter(limiter, qps) +} + +// An injectable, mockable clock interface. +type Clock interface { + ratelimit.Clock +} + +// NewTokenBucketRateLimiterWithClock is identical to NewTokenBucketRateLimiter +// but allows an injectable clock, for testing. +func NewTokenBucketRateLimiterWithClock(qps float32, burst int, clock Clock) RateLimiter { + limiter := ratelimit.NewBucketWithRateAndClock(float64(qps), int64(burst), clock) + return newTokenBucketRateLimiter(limiter, qps) +} + +func newTokenBucketRateLimiter(limiter *ratelimit.Bucket, qps float32) RateLimiter { return &tokenBucketRateLimiter{ limiter: limiter, qps: qps, diff --git a/vendor/k8s.io/kubernetes/pkg/api/annotation_key_constants.go b/vendor/k8s.io/kubernetes/pkg/api/annotation_key_constants.go index bfb42c8b..e1080a34 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/annotation_key_constants.go +++ b/vendor/k8s.io/kubernetes/pkg/api/annotation_key_constants.go @@ -19,6 +19,13 @@ limitations under the License. package api const ( + // ImagePolicyFailedOpenKey is added to pods created by failing open when the image policy + // webhook backend fails. + ImagePolicyFailedOpenKey string = "alpha.image-policy.k8s.io/failed-open" + + // PodPresetOptOutAnnotationKey represents the annotation key for a pod to exempt itself from pod preset manipulation + PodPresetOptOutAnnotationKey string = "podpreset.admission.kubernetes.io/exclude" + // MirrorAnnotationKey represents the annotation key set by kubelets when creating mirror pods MirrorPodAnnotationKey string = "kubernetes.io/config.mirror" diff --git a/vendor/k8s.io/kubernetes/pkg/api/helper/helpers.go b/vendor/k8s.io/kubernetes/pkg/api/helper/helpers.go index ddf44ea7..46916b78 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/helper/helpers.go +++ b/vendor/k8s.io/kubernetes/pkg/api/helper/helpers.go @@ -17,18 +17,15 @@ limitations under the License. package helper import ( - "crypto/md5" "encoding/json" "fmt" "strings" - "time" "k8s.io/apimachinery/pkg/api/resource" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/conversion" "k8s.io/apimachinery/pkg/fields" "k8s.io/apimachinery/pkg/labels" - "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/selection" "k8s.io/apimachinery/pkg/util/sets" "k8s.io/kubernetes/pkg/api" @@ -225,6 +222,7 @@ func IsServiceIPRequested(service *api.Service) bool { var standardFinalizers = sets.NewString( string(api.FinalizerKubernetes), metav1.FinalizerOrphanDependents, + metav1.FinalizerDeleteDependents, ) // HasAnnotation returns a bool if passed in annotation exists @@ -262,14 +260,6 @@ func AddToNodeAddresses(addresses *[]api.NodeAddress, addAddresses ...api.NodeAd } } -func HashObject(obj runtime.Object, codec runtime.Codec) (string, error) { - data, err := runtime.Encode(codec, obj) - if err != nil { - return "", err - } - return fmt.Sprintf("%x", md5.Sum(data)), nil -} - // TODO: make method on LoadBalancerStatus? func LoadBalancerStatusEqual(l, r *api.LoadBalancerStatus) bool { return ingressSliceEqual(l.Ingress, r.Ingress) @@ -362,18 +352,6 @@ func containsAccessMode(modes []api.PersistentVolumeAccessMode, mode api.Persist return false } -// ParseRFC3339 parses an RFC3339 date in either RFC3339Nano or RFC3339 format. -func ParseRFC3339(s string, nowFn func() metav1.Time) (metav1.Time, error) { - if t, timeErr := time.Parse(time.RFC3339Nano, s); timeErr == nil { - return metav1.Time{Time: t}, nil - } - t, err := time.Parse(time.RFC3339, s) - if err != nil { - return metav1.Time{}, err - } - return metav1.Time{Time: t}, nil -} - // NodeSelectorRequirementsAsSelector converts the []NodeSelectorRequirement api type into a struct that implements // labels.Selector. func NodeSelectorRequirementsAsSelector(nsm []api.NodeSelectorRequirement) (labels.Selector, error) { @@ -594,3 +572,33 @@ func PersistentVolumeClaimHasClass(claim *api.PersistentVolumeClaim) bool { return false } + +// GetStorageNodeAffinityFromAnnotation gets the json serialized data from PersistentVolume.Annotations +// and converts it to the NodeAffinity type in api. +// TODO: update when storage node affinity graduates to beta +func GetStorageNodeAffinityFromAnnotation(annotations map[string]string) (*api.NodeAffinity, error) { + if len(annotations) > 0 && annotations[api.AlphaStorageNodeAffinityAnnotation] != "" { + var affinity api.NodeAffinity + err := json.Unmarshal([]byte(annotations[api.AlphaStorageNodeAffinityAnnotation]), &affinity) + if err != nil { + return nil, err + } + return &affinity, nil + } + return nil, nil +} + +// Converts NodeAffinity type to Alpha annotation for use in PersistentVolumes +// TODO: update when storage node affinity graduates to beta +func StorageNodeAffinityToAlphaAnnotation(annotations map[string]string, affinity *api.NodeAffinity) error { + if affinity == nil { + return nil + } + + json, err := json.Marshal(*affinity) + if err != nil { + return err + } + annotations[api.AlphaStorageNodeAffinityAnnotation] = string(json) + return nil +} diff --git a/vendor/k8s.io/kubernetes/pkg/api/register.go b/vendor/k8s.io/kubernetes/pkg/api/register.go index 23cfaabd..5f261bdf 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/register.go +++ b/vendor/k8s.io/kubernetes/pkg/api/register.go @@ -50,10 +50,6 @@ const GroupName = "" // SchemeGroupVersion is group version used to register these objects var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: runtime.APIVersionInternal} -// Unversioned is group version for unversioned API objects -// TODO: this should be v1 probably -var Unversioned = schema.GroupVersion{Group: "", Version: "v1"} - // ParameterCodec handles versioning of objects that are converted to query parameters. var ParameterCodec = runtime.NewParameterCodec(Scheme) @@ -123,13 +119,5 @@ func addKnownTypes(scheme *runtime.Scheme) error { &ConfigMapList{}, ) - // Register Unversioned types under their own special group - scheme.AddUnversionedTypes(Unversioned, - &metav1.Status{}, - &metav1.APIVersions{}, - &metav1.APIGroupList{}, - &metav1.APIGroup{}, - &metav1.APIResourceList{}, - ) return nil } diff --git a/vendor/k8s.io/kubernetes/pkg/api/resource.go b/vendor/k8s.io/kubernetes/pkg/api/resource.go index 1ea96d16..27b7fd66 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/resource.go +++ b/vendor/k8s.io/kubernetes/pkg/api/resource.go @@ -53,3 +53,10 @@ func (self *ResourceList) NvidiaGPU() *resource.Quantity { } return &resource.Quantity{} } + +func (self *ResourceList) StorageOverlay() *resource.Quantity { + if val, ok := (*self)[ResourceStorageOverlay]; ok { + return &val + } + return &resource.Quantity{} +} diff --git a/vendor/k8s.io/kubernetes/pkg/api/types.go b/vendor/k8s.io/kubernetes/pkg/api/types.go index 0984bab2..412d6d08 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/types.go +++ b/vendor/k8s.io/kubernetes/pkg/api/types.go @@ -131,7 +131,7 @@ type ObjectMeta struct { // // Populated by the system when a graceful deletion is requested. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional DeletionTimestamp *metav1.Time @@ -313,6 +313,9 @@ type VolumeSource struct { // ScaleIO represents a ScaleIO persistent volume attached and mounted on Kubernetes nodes. // +optional ScaleIO *ScaleIOVolumeSource + // StorageOS represents a StorageOS volume that is attached to the kubelet's host machine and mounted into the pod + // +optional + StorageOS *StorageOSVolumeSource } // Similar to VolumeSource but meant for the administrator who creates PVs. @@ -381,6 +384,13 @@ type PersistentVolumeSource struct { // ScaleIO represents a ScaleIO persistent volume attached and mounted on Kubernetes nodes. // +optional ScaleIO *ScaleIOVolumeSource + // Local represents directly-attached storage with node affinity + // +optional + Local *LocalVolumeSource + // StorageOS represents a StorageOS volume that is attached to the kubelet's host machine and mounted into the pod + // More info: https://releases.k8s.io/HEAD/examples/volumes/storageos/README.md + // +optional + StorageOS *StorageOSPersistentVolumeSource } type PersistentVolumeClaimVolumeSource struct { @@ -399,6 +409,10 @@ const ( // MountOptionAnnotation defines mount option annotation used in PVs MountOptionAnnotation = "volume.beta.kubernetes.io/mount-options" + + // AlphaStorageNodeAffinityAnnotation defines node affinity policies for a PersistentVolume. + // Value is a string of the json representation of type NodeAffinity + AlphaStorageNodeAffinityAnnotation = "volume.alpha.kubernetes.io/node-affinity" ) // +genclient=true @@ -594,6 +608,14 @@ type EmptyDirVolumeSource struct { // The default is "" which means to use the node's default medium. // +optional Medium StorageMedium + // Total amount of local storage required for this EmptyDir volume. + // The size limit is also applicable for memory medium. + // The maximum usage on memory medium EmptyDir would be the minimum value between + // the SizeLimit specified here and the sum of memory limits of all containers in a pod. + // The default is nil which means that the limit is undefined. + // More info: http://kubernetes.io/docs/user-guide/volumes#emptydir + // +optional + SizeLimit resource.Quantity } // StorageMedium defines ways that storage can be allocated to a volume. @@ -1031,6 +1053,12 @@ type VsphereVirtualDiskVolumeSource struct { // Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. // +optional FSType string + // Storage Policy Based Management (SPBM) profile name. + // +optional + StoragePolicyName string + // Storage Policy Based Management (SPBM) profile ID associated with the StoragePolicyName. + // +optional + StoragePolicyID string } // Represents a Photon Controller persistent disk resource. @@ -1075,7 +1103,7 @@ const ( type AzureDiskVolumeSource struct { // The Name of the data disk in the blob storage DiskName string - // The URI the the data disk in the blob storage + // The URI of the data disk in the blob storage DataDiskURI string // Host Caching mode: None, Read Only, Read Write. // +optional @@ -1128,6 +1156,62 @@ type ScaleIOVolumeSource struct { ReadOnly bool } +// Represents a StorageOS persistent volume resource. +type StorageOSVolumeSource struct { + // VolumeName is the human-readable name of the StorageOS volume. Volume + // names are only unique within a namespace. + VolumeName string + // VolumeNamespace specifies the scope of the volume within StorageOS. If no + // namespace is specified then the Pod's namespace will be used. This allows the + // Kubernetes name scoping to be mirrored within StorageOS for tighter integration. + // Set VolumeName to any name to override the default behaviour. + // Set to "default" if you are not using namespaces within StorageOS. + // Namespaces that do not pre-exist within StorageOS will be created. + // +optional + VolumeNamespace string + // Filesystem type to mount. + // Must be a filesystem type supported by the host operating system. + // Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. + // +optional + FSType string + // Defaults to false (read/write). ReadOnly here will force + // the ReadOnly setting in VolumeMounts. + // +optional + ReadOnly bool + // SecretRef specifies the secret to use for obtaining the StorageOS API + // credentials. If not specified, default values will be attempted. + // +optional + SecretRef *LocalObjectReference +} + +// Represents a StorageOS persistent volume resource. +type StorageOSPersistentVolumeSource struct { + // VolumeName is the human-readable name of the StorageOS volume. Volume + // names are only unique within a namespace. + VolumeName string + // VolumeNamespace specifies the scope of the volume within StorageOS. If no + // namespace is specified then the Pod's namespace will be used. This allows the + // Kubernetes name scoping to be mirrored within StorageOS for tighter integration. + // Set VolumeName to any name to override the default behaviour. + // Set to "default" if you are not using namespaces within StorageOS. + // Namespaces that do not pre-exist within StorageOS will be created. + // +optional + VolumeNamespace string + // Filesystem type to mount. + // Must be a filesystem type supported by the host operating system. + // Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. + // +optional + FSType string + // Defaults to false (read/write). ReadOnly here will force + // the ReadOnly setting in VolumeMounts. + // +optional + ReadOnly bool + // SecretRef specifies the secret to use for obtaining the StorageOS API + // credentials. If not specified, default values will be attempted. + // +optional + SecretRef *ObjectReference +} + // Adapts a ConfigMap into a volume. // // The contents of the target ConfigMap's Data field will be presented in a @@ -1223,6 +1307,14 @@ type KeyToPath struct { Mode *int32 } +// Local represents directly-attached storage with node affinity +type LocalVolumeSource struct { + // The full path to the volume on the node + // For alpha, this path must be a directory + // Once block as a source is supported, then this path can point to a block device + Path string +} + // ContainerPort represents a network port in a single container type ContainerPort struct { // Optional: If specified, this must be an IANA_SVC_NAME Each named port @@ -2475,10 +2567,10 @@ const ( type ServiceExternalTrafficPolicyType string const ( - // ServiceExternalTrafficPolicyTypeLocal specifies local endpoints behavior. + // ServiceExternalTrafficPolicyTypeLocal specifies node-local endpoints behavior. ServiceExternalTrafficPolicyTypeLocal ServiceExternalTrafficPolicyType = "Local" - // ServiceExternalTrafficPolicyTypeGlobal specifies global (legacy) behavior. - ServiceExternalTrafficPolicyTypeGlobal ServiceExternalTrafficPolicyType = "Global" + // ServiceExternalTrafficPolicyTypeCluster specifies cluster-wide (legacy) behavior. + ServiceExternalTrafficPolicyTypeCluster ServiceExternalTrafficPolicyType = "Cluster" ) // ServiceStatus represents the current status of a service @@ -2581,9 +2673,12 @@ type ServiceSpec struct { // +optional LoadBalancerSourceRanges []string - // externalTrafficPolicy denotes if this Service desires to route external traffic to - // local endpoints only. This preserves Source IP and avoids a second hop for - // LoadBalancer and Nodeport type services. + // externalTrafficPolicy denotes if this Service desires to route external + // traffic to node-local or cluster-wide endpoints. "Local" preserves the + // client source IP and avoids a second hop for LoadBalancer and Nodeport + // type services, but risks potentially imbalanced traffic spreading. + // "Cluster" obscures the client source IP and may cause a second hop to + // another node, but should have good overall load-spreading. // +optional ExternalTrafficPolicy ServiceExternalTrafficPolicyType @@ -2802,11 +2897,11 @@ type NodeDaemonEndpoints struct { // NodeSystemInfo is a set of ids/uuids to uniquely identify the node. type NodeSystemInfo struct { // MachineID reported by the node. For unique machine identification - // in the cluster this field is prefered. Learn more from man(5) + // in the cluster this field is preferred. Learn more from man(5) // machine-id: http://man7.org/linux/man-pages/man5/machine-id.5.html MachineID string // SystemUUID reported by the node. For unique machine identification - // MachineID is prefered. This field is specific to Red Hat hosts + // MachineID is preferred. This field is specific to Red Hat hosts // https://access.redhat.com/documentation/en-US/Red_Hat_Subscription_Management/1/html/RHSM/getting-system-uuid.html SystemUUID string // Boot ID reported by the node. @@ -2996,6 +3091,12 @@ const ( ResourceMemory ResourceName = "memory" // Volume size, in bytes (e,g. 5Gi = 5GiB = 5 * 1024 * 1024 * 1024) ResourceStorage ResourceName = "storage" + // Local Storage for overlay filesystem, in bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024) + // The resource name for ResourceStorageOverlay is alpha and it can change across releases. + ResourceStorageOverlay ResourceName = "storage.kubernetes.io/overlay" + // Local Storage for scratch space, in bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024) + // The resource name for ResourceStorageScratch is alpha and it can change across releases. + ResourceStorageScratch ResourceName = "storage.kubernetes.io/scratch" // NVIDIA GPU, in devices. Alpha, might change: although fractional and allowing values >1, only one whole device per node is assigned. ResourceNvidiaGPU ResourceName = "alpha.kubernetes.io/nvidia-gpu" // Number of Pods that may be running on this Node: see ResourcePods @@ -3097,7 +3198,8 @@ type NamespaceList struct { Items []Namespace } -// Binding ties one object to another - for example, a pod is bound to a node by a scheduler. +// Binding ties one object to another; for example, a pod is bound to a node by a scheduler. +// Deprecated in 1.7, please use the bindings subresource of pods instead. type Binding struct { metav1.TypeMeta // ObjectMeta describes the object that is being bound. @@ -3884,8 +3986,4 @@ const ( // When the --hard-pod-affinity-weight scheduler flag is not specified, // DefaultHardPodAffinityWeight defines the weight of the implicit PreferredDuringScheduling affinity rule. DefaultHardPodAffinitySymmetricWeight int = 1 - - // When the --failure-domains scheduler flag is not specified, - // DefaultFailureDomains defines the set of label keys used when TopologyKey is empty in PreferredDuringScheduling anti-affinity. - DefaultFailureDomains string = metav1.LabelHostname + "," + metav1.LabelZoneFailureDomain + "," + metav1.LabelZoneRegion ) diff --git a/vendor/k8s.io/kubernetes/pkg/api/v1/annotation_key_constants.go b/vendor/k8s.io/kubernetes/pkg/api/v1/annotation_key_constants.go index 96bbdd57..bb458855 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/v1/annotation_key_constants.go +++ b/vendor/k8s.io/kubernetes/pkg/api/v1/annotation_key_constants.go @@ -19,6 +19,13 @@ limitations under the License. package v1 const ( + // ImagePolicyFailedOpenKey is added to pods created by failing open when the image policy + // webhook backend fails. + ImagePolicyFailedOpenKey string = "alpha.image-policy.k8s.io/failed-open" + + // PodPresetOptOutAnnotationKey represents the annotation key for a pod to exempt itself from pod preset manipulation + PodPresetOptOutAnnotationKey string = "podpreset.admission.kubernetes.io/exclude" + // MirrorAnnotationKey represents the annotation key set by kubelets when creating mirror pods MirrorPodAnnotationKey string = "kubernetes.io/config.mirror" diff --git a/vendor/k8s.io/kubernetes/pkg/api/v1/defaults.go b/vendor/k8s.io/kubernetes/pkg/api/v1/defaults.go index 84e95cc3..d6cf9fc2 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/v1/defaults.go +++ b/vendor/k8s.io/kubernetes/pkg/api/v1/defaults.go @@ -120,7 +120,7 @@ func SetDefaults_Service(obj *Service) { } else if (obj.Spec.Type == ServiceTypeNodePort || obj.Spec.Type == ServiceTypeLoadBalancer) && obj.Spec.ExternalTrafficPolicy == "" { - obj.Spec.ExternalTrafficPolicy = ServiceExternalTrafficPolicyTypeGlobal + obj.Spec.ExternalTrafficPolicy = ServiceExternalTrafficPolicyTypeCluster } } func SetDefaults_Pod(obj *Pod) { diff --git a/vendor/k8s.io/kubernetes/pkg/api/v1/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/api/v1/generated.pb.go index 4901ea32..03199cc6 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/v1/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/api/v1/generated.pb.go @@ -93,6 +93,7 @@ limitations under the License. LoadBalancerIngress LoadBalancerStatus LocalObjectReference + LocalVolumeSource NFSVolumeSource Namespace NamespaceList @@ -183,6 +184,8 @@ limitations under the License. ServiceProxyOptions ServiceSpec ServiceStatus + StorageOSPersistentVolumeSource + StorageOSVolumeSource Sysctl TCPSocketAction Taint @@ -206,9 +209,10 @@ import k8s_io_apimachinery_pkg_runtime "k8s.io/apimachinery/pkg/runtime" import k8s_io_apimachinery_pkg_types "k8s.io/apimachinery/pkg/types" +import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + import strings "strings" import reflect "reflect" -import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" import io "io" @@ -503,430 +507,446 @@ func (m *LocalObjectReference) Reset() { *m = LocalObjectRefe func (*LocalObjectReference) ProtoMessage() {} func (*LocalObjectReference) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{67} } +func (m *LocalVolumeSource) Reset() { *m = LocalVolumeSource{} } +func (*LocalVolumeSource) ProtoMessage() {} +func (*LocalVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{68} } + func (m *NFSVolumeSource) Reset() { *m = NFSVolumeSource{} } func (*NFSVolumeSource) ProtoMessage() {} -func (*NFSVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{68} } +func (*NFSVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{69} } func (m *Namespace) Reset() { *m = Namespace{} } func (*Namespace) ProtoMessage() {} -func (*Namespace) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{69} } +func (*Namespace) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{70} } func (m *NamespaceList) Reset() { *m = NamespaceList{} } func (*NamespaceList) ProtoMessage() {} -func (*NamespaceList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{70} } +func (*NamespaceList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{71} } func (m *NamespaceSpec) Reset() { *m = NamespaceSpec{} } func (*NamespaceSpec) ProtoMessage() {} -func (*NamespaceSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{71} } +func (*NamespaceSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{72} } func (m *NamespaceStatus) Reset() { *m = NamespaceStatus{} } func (*NamespaceStatus) ProtoMessage() {} -func (*NamespaceStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{72} } +func (*NamespaceStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{73} } func (m *Node) Reset() { *m = Node{} } func (*Node) ProtoMessage() {} -func (*Node) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{73} } +func (*Node) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{74} } func (m *NodeAddress) Reset() { *m = NodeAddress{} } func (*NodeAddress) ProtoMessage() {} -func (*NodeAddress) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{74} } +func (*NodeAddress) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{75} } func (m *NodeAffinity) Reset() { *m = NodeAffinity{} } func (*NodeAffinity) ProtoMessage() {} -func (*NodeAffinity) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{75} } +func (*NodeAffinity) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{76} } func (m *NodeCondition) Reset() { *m = NodeCondition{} } func (*NodeCondition) ProtoMessage() {} -func (*NodeCondition) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{76} } +func (*NodeCondition) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{77} } func (m *NodeDaemonEndpoints) Reset() { *m = NodeDaemonEndpoints{} } func (*NodeDaemonEndpoints) ProtoMessage() {} -func (*NodeDaemonEndpoints) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{77} } +func (*NodeDaemonEndpoints) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{78} } func (m *NodeList) Reset() { *m = NodeList{} } func (*NodeList) ProtoMessage() {} -func (*NodeList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{78} } +func (*NodeList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{79} } func (m *NodeProxyOptions) Reset() { *m = NodeProxyOptions{} } func (*NodeProxyOptions) ProtoMessage() {} -func (*NodeProxyOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{79} } +func (*NodeProxyOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{80} } func (m *NodeResources) Reset() { *m = NodeResources{} } func (*NodeResources) ProtoMessage() {} -func (*NodeResources) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{80} } +func (*NodeResources) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{81} } func (m *NodeSelector) Reset() { *m = NodeSelector{} } func (*NodeSelector) ProtoMessage() {} -func (*NodeSelector) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{81} } +func (*NodeSelector) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{82} } func (m *NodeSelectorRequirement) Reset() { *m = NodeSelectorRequirement{} } func (*NodeSelectorRequirement) ProtoMessage() {} func (*NodeSelectorRequirement) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{82} + return fileDescriptorGenerated, []int{83} } func (m *NodeSelectorTerm) Reset() { *m = NodeSelectorTerm{} } func (*NodeSelectorTerm) ProtoMessage() {} -func (*NodeSelectorTerm) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{83} } +func (*NodeSelectorTerm) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{84} } func (m *NodeSpec) Reset() { *m = NodeSpec{} } func (*NodeSpec) ProtoMessage() {} -func (*NodeSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{84} } +func (*NodeSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{85} } func (m *NodeStatus) Reset() { *m = NodeStatus{} } func (*NodeStatus) ProtoMessage() {} -func (*NodeStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{85} } +func (*NodeStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{86} } func (m *NodeSystemInfo) Reset() { *m = NodeSystemInfo{} } func (*NodeSystemInfo) ProtoMessage() {} -func (*NodeSystemInfo) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{86} } +func (*NodeSystemInfo) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{87} } func (m *ObjectFieldSelector) Reset() { *m = ObjectFieldSelector{} } func (*ObjectFieldSelector) ProtoMessage() {} -func (*ObjectFieldSelector) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{87} } +func (*ObjectFieldSelector) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{88} } func (m *ObjectMeta) Reset() { *m = ObjectMeta{} } func (*ObjectMeta) ProtoMessage() {} -func (*ObjectMeta) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{88} } +func (*ObjectMeta) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{89} } func (m *ObjectReference) Reset() { *m = ObjectReference{} } func (*ObjectReference) ProtoMessage() {} -func (*ObjectReference) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{89} } +func (*ObjectReference) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{90} } func (m *PersistentVolume) Reset() { *m = PersistentVolume{} } func (*PersistentVolume) ProtoMessage() {} -func (*PersistentVolume) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{90} } +func (*PersistentVolume) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{91} } func (m *PersistentVolumeClaim) Reset() { *m = PersistentVolumeClaim{} } func (*PersistentVolumeClaim) ProtoMessage() {} -func (*PersistentVolumeClaim) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{91} } +func (*PersistentVolumeClaim) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{92} } func (m *PersistentVolumeClaimList) Reset() { *m = PersistentVolumeClaimList{} } func (*PersistentVolumeClaimList) ProtoMessage() {} func (*PersistentVolumeClaimList) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{92} + return fileDescriptorGenerated, []int{93} } func (m *PersistentVolumeClaimSpec) Reset() { *m = PersistentVolumeClaimSpec{} } func (*PersistentVolumeClaimSpec) ProtoMessage() {} func (*PersistentVolumeClaimSpec) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{93} + return fileDescriptorGenerated, []int{94} } func (m *PersistentVolumeClaimStatus) Reset() { *m = PersistentVolumeClaimStatus{} } func (*PersistentVolumeClaimStatus) ProtoMessage() {} func (*PersistentVolumeClaimStatus) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{94} + return fileDescriptorGenerated, []int{95} } func (m *PersistentVolumeClaimVolumeSource) Reset() { *m = PersistentVolumeClaimVolumeSource{} } func (*PersistentVolumeClaimVolumeSource) ProtoMessage() {} func (*PersistentVolumeClaimVolumeSource) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{95} + return fileDescriptorGenerated, []int{96} } func (m *PersistentVolumeList) Reset() { *m = PersistentVolumeList{} } func (*PersistentVolumeList) ProtoMessage() {} -func (*PersistentVolumeList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{96} } +func (*PersistentVolumeList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{97} } func (m *PersistentVolumeSource) Reset() { *m = PersistentVolumeSource{} } func (*PersistentVolumeSource) ProtoMessage() {} -func (*PersistentVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{97} } +func (*PersistentVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{98} } func (m *PersistentVolumeSpec) Reset() { *m = PersistentVolumeSpec{} } func (*PersistentVolumeSpec) ProtoMessage() {} -func (*PersistentVolumeSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{98} } +func (*PersistentVolumeSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{99} } -func (m *PersistentVolumeStatus) Reset() { *m = PersistentVolumeStatus{} } -func (*PersistentVolumeStatus) ProtoMessage() {} -func (*PersistentVolumeStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{99} } +func (m *PersistentVolumeStatus) Reset() { *m = PersistentVolumeStatus{} } +func (*PersistentVolumeStatus) ProtoMessage() {} +func (*PersistentVolumeStatus) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{100} +} func (m *PhotonPersistentDiskVolumeSource) Reset() { *m = PhotonPersistentDiskVolumeSource{} } func (*PhotonPersistentDiskVolumeSource) ProtoMessage() {} func (*PhotonPersistentDiskVolumeSource) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{100} + return fileDescriptorGenerated, []int{101} } func (m *Pod) Reset() { *m = Pod{} } func (*Pod) ProtoMessage() {} -func (*Pod) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{101} } +func (*Pod) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{102} } func (m *PodAffinity) Reset() { *m = PodAffinity{} } func (*PodAffinity) ProtoMessage() {} -func (*PodAffinity) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{102} } +func (*PodAffinity) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{103} } func (m *PodAffinityTerm) Reset() { *m = PodAffinityTerm{} } func (*PodAffinityTerm) ProtoMessage() {} -func (*PodAffinityTerm) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{103} } +func (*PodAffinityTerm) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{104} } func (m *PodAntiAffinity) Reset() { *m = PodAntiAffinity{} } func (*PodAntiAffinity) ProtoMessage() {} -func (*PodAntiAffinity) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{104} } +func (*PodAntiAffinity) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{105} } func (m *PodAttachOptions) Reset() { *m = PodAttachOptions{} } func (*PodAttachOptions) ProtoMessage() {} -func (*PodAttachOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{105} } +func (*PodAttachOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{106} } func (m *PodCondition) Reset() { *m = PodCondition{} } func (*PodCondition) ProtoMessage() {} -func (*PodCondition) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{106} } +func (*PodCondition) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{107} } func (m *PodExecOptions) Reset() { *m = PodExecOptions{} } func (*PodExecOptions) ProtoMessage() {} -func (*PodExecOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{107} } +func (*PodExecOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{108} } func (m *PodList) Reset() { *m = PodList{} } func (*PodList) ProtoMessage() {} -func (*PodList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{108} } +func (*PodList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{109} } func (m *PodLogOptions) Reset() { *m = PodLogOptions{} } func (*PodLogOptions) ProtoMessage() {} -func (*PodLogOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{109} } +func (*PodLogOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{110} } func (m *PodPortForwardOptions) Reset() { *m = PodPortForwardOptions{} } func (*PodPortForwardOptions) ProtoMessage() {} -func (*PodPortForwardOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{110} } +func (*PodPortForwardOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{111} } func (m *PodProxyOptions) Reset() { *m = PodProxyOptions{} } func (*PodProxyOptions) ProtoMessage() {} -func (*PodProxyOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{111} } +func (*PodProxyOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{112} } func (m *PodSecurityContext) Reset() { *m = PodSecurityContext{} } func (*PodSecurityContext) ProtoMessage() {} -func (*PodSecurityContext) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{112} } +func (*PodSecurityContext) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{113} } func (m *PodSignature) Reset() { *m = PodSignature{} } func (*PodSignature) ProtoMessage() {} -func (*PodSignature) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{113} } +func (*PodSignature) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{114} } func (m *PodSpec) Reset() { *m = PodSpec{} } func (*PodSpec) ProtoMessage() {} -func (*PodSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{114} } +func (*PodSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{115} } func (m *PodStatus) Reset() { *m = PodStatus{} } func (*PodStatus) ProtoMessage() {} -func (*PodStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{115} } +func (*PodStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{116} } func (m *PodStatusResult) Reset() { *m = PodStatusResult{} } func (*PodStatusResult) ProtoMessage() {} -func (*PodStatusResult) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{116} } +func (*PodStatusResult) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{117} } func (m *PodTemplate) Reset() { *m = PodTemplate{} } func (*PodTemplate) ProtoMessage() {} -func (*PodTemplate) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{117} } +func (*PodTemplate) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{118} } func (m *PodTemplateList) Reset() { *m = PodTemplateList{} } func (*PodTemplateList) ProtoMessage() {} -func (*PodTemplateList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{118} } +func (*PodTemplateList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{119} } func (m *PodTemplateSpec) Reset() { *m = PodTemplateSpec{} } func (*PodTemplateSpec) ProtoMessage() {} -func (*PodTemplateSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{119} } +func (*PodTemplateSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{120} } func (m *PortworxVolumeSource) Reset() { *m = PortworxVolumeSource{} } func (*PortworxVolumeSource) ProtoMessage() {} -func (*PortworxVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{120} } +func (*PortworxVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{121} } func (m *Preconditions) Reset() { *m = Preconditions{} } func (*Preconditions) ProtoMessage() {} -func (*Preconditions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{121} } +func (*Preconditions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{122} } func (m *PreferAvoidPodsEntry) Reset() { *m = PreferAvoidPodsEntry{} } func (*PreferAvoidPodsEntry) ProtoMessage() {} -func (*PreferAvoidPodsEntry) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{122} } +func (*PreferAvoidPodsEntry) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{123} } func (m *PreferredSchedulingTerm) Reset() { *m = PreferredSchedulingTerm{} } func (*PreferredSchedulingTerm) ProtoMessage() {} func (*PreferredSchedulingTerm) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{123} + return fileDescriptorGenerated, []int{124} } func (m *Probe) Reset() { *m = Probe{} } func (*Probe) ProtoMessage() {} -func (*Probe) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{124} } +func (*Probe) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{125} } func (m *ProjectedVolumeSource) Reset() { *m = ProjectedVolumeSource{} } func (*ProjectedVolumeSource) ProtoMessage() {} -func (*ProjectedVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{125} } +func (*ProjectedVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{126} } func (m *QuobyteVolumeSource) Reset() { *m = QuobyteVolumeSource{} } func (*QuobyteVolumeSource) ProtoMessage() {} -func (*QuobyteVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{126} } +func (*QuobyteVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{127} } func (m *RBDVolumeSource) Reset() { *m = RBDVolumeSource{} } func (*RBDVolumeSource) ProtoMessage() {} -func (*RBDVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{127} } +func (*RBDVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{128} } func (m *RangeAllocation) Reset() { *m = RangeAllocation{} } func (*RangeAllocation) ProtoMessage() {} -func (*RangeAllocation) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{128} } +func (*RangeAllocation) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{129} } func (m *ReplicationController) Reset() { *m = ReplicationController{} } func (*ReplicationController) ProtoMessage() {} -func (*ReplicationController) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{129} } +func (*ReplicationController) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{130} } func (m *ReplicationControllerCondition) Reset() { *m = ReplicationControllerCondition{} } func (*ReplicationControllerCondition) ProtoMessage() {} func (*ReplicationControllerCondition) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{130} + return fileDescriptorGenerated, []int{131} } func (m *ReplicationControllerList) Reset() { *m = ReplicationControllerList{} } func (*ReplicationControllerList) ProtoMessage() {} func (*ReplicationControllerList) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{131} + return fileDescriptorGenerated, []int{132} } func (m *ReplicationControllerSpec) Reset() { *m = ReplicationControllerSpec{} } func (*ReplicationControllerSpec) ProtoMessage() {} func (*ReplicationControllerSpec) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{132} + return fileDescriptorGenerated, []int{133} } func (m *ReplicationControllerStatus) Reset() { *m = ReplicationControllerStatus{} } func (*ReplicationControllerStatus) ProtoMessage() {} func (*ReplicationControllerStatus) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{133} + return fileDescriptorGenerated, []int{134} } func (m *ResourceFieldSelector) Reset() { *m = ResourceFieldSelector{} } func (*ResourceFieldSelector) ProtoMessage() {} -func (*ResourceFieldSelector) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{134} } +func (*ResourceFieldSelector) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{135} } func (m *ResourceQuota) Reset() { *m = ResourceQuota{} } func (*ResourceQuota) ProtoMessage() {} -func (*ResourceQuota) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{135} } +func (*ResourceQuota) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{136} } func (m *ResourceQuotaList) Reset() { *m = ResourceQuotaList{} } func (*ResourceQuotaList) ProtoMessage() {} -func (*ResourceQuotaList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{136} } +func (*ResourceQuotaList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{137} } func (m *ResourceQuotaSpec) Reset() { *m = ResourceQuotaSpec{} } func (*ResourceQuotaSpec) ProtoMessage() {} -func (*ResourceQuotaSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{137} } +func (*ResourceQuotaSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{138} } func (m *ResourceQuotaStatus) Reset() { *m = ResourceQuotaStatus{} } func (*ResourceQuotaStatus) ProtoMessage() {} -func (*ResourceQuotaStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{138} } +func (*ResourceQuotaStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{139} } func (m *ResourceRequirements) Reset() { *m = ResourceRequirements{} } func (*ResourceRequirements) ProtoMessage() {} -func (*ResourceRequirements) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{139} } +func (*ResourceRequirements) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{140} } func (m *SELinuxOptions) Reset() { *m = SELinuxOptions{} } func (*SELinuxOptions) ProtoMessage() {} -func (*SELinuxOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{140} } +func (*SELinuxOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{141} } func (m *ScaleIOVolumeSource) Reset() { *m = ScaleIOVolumeSource{} } func (*ScaleIOVolumeSource) ProtoMessage() {} -func (*ScaleIOVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{141} } +func (*ScaleIOVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{142} } func (m *Secret) Reset() { *m = Secret{} } func (*Secret) ProtoMessage() {} -func (*Secret) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{142} } +func (*Secret) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{143} } func (m *SecretEnvSource) Reset() { *m = SecretEnvSource{} } func (*SecretEnvSource) ProtoMessage() {} -func (*SecretEnvSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{143} } +func (*SecretEnvSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{144} } func (m *SecretKeySelector) Reset() { *m = SecretKeySelector{} } func (*SecretKeySelector) ProtoMessage() {} -func (*SecretKeySelector) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{144} } +func (*SecretKeySelector) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{145} } func (m *SecretList) Reset() { *m = SecretList{} } func (*SecretList) ProtoMessage() {} -func (*SecretList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{145} } +func (*SecretList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{146} } func (m *SecretProjection) Reset() { *m = SecretProjection{} } func (*SecretProjection) ProtoMessage() {} -func (*SecretProjection) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{146} } +func (*SecretProjection) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{147} } func (m *SecretVolumeSource) Reset() { *m = SecretVolumeSource{} } func (*SecretVolumeSource) ProtoMessage() {} -func (*SecretVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{147} } +func (*SecretVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{148} } func (m *SecurityContext) Reset() { *m = SecurityContext{} } func (*SecurityContext) ProtoMessage() {} -func (*SecurityContext) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{148} } +func (*SecurityContext) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{149} } func (m *SerializedReference) Reset() { *m = SerializedReference{} } func (*SerializedReference) ProtoMessage() {} -func (*SerializedReference) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{149} } +func (*SerializedReference) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{150} } func (m *Service) Reset() { *m = Service{} } func (*Service) ProtoMessage() {} -func (*Service) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{150} } +func (*Service) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{151} } func (m *ServiceAccount) Reset() { *m = ServiceAccount{} } func (*ServiceAccount) ProtoMessage() {} -func (*ServiceAccount) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{151} } +func (*ServiceAccount) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{152} } func (m *ServiceAccountList) Reset() { *m = ServiceAccountList{} } func (*ServiceAccountList) ProtoMessage() {} -func (*ServiceAccountList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{152} } +func (*ServiceAccountList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{153} } func (m *ServiceList) Reset() { *m = ServiceList{} } func (*ServiceList) ProtoMessage() {} -func (*ServiceList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{153} } +func (*ServiceList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{154} } func (m *ServicePort) Reset() { *m = ServicePort{} } func (*ServicePort) ProtoMessage() {} -func (*ServicePort) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{154} } +func (*ServicePort) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{155} } func (m *ServiceProxyOptions) Reset() { *m = ServiceProxyOptions{} } func (*ServiceProxyOptions) ProtoMessage() {} -func (*ServiceProxyOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{155} } +func (*ServiceProxyOptions) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{156} } func (m *ServiceSpec) Reset() { *m = ServiceSpec{} } func (*ServiceSpec) ProtoMessage() {} -func (*ServiceSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{156} } +func (*ServiceSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{157} } func (m *ServiceStatus) Reset() { *m = ServiceStatus{} } func (*ServiceStatus) ProtoMessage() {} -func (*ServiceStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{157} } +func (*ServiceStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{158} } + +func (m *StorageOSPersistentVolumeSource) Reset() { *m = StorageOSPersistentVolumeSource{} } +func (*StorageOSPersistentVolumeSource) ProtoMessage() {} +func (*StorageOSPersistentVolumeSource) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{159} +} + +func (m *StorageOSVolumeSource) Reset() { *m = StorageOSVolumeSource{} } +func (*StorageOSVolumeSource) ProtoMessage() {} +func (*StorageOSVolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{160} } func (m *Sysctl) Reset() { *m = Sysctl{} } func (*Sysctl) ProtoMessage() {} -func (*Sysctl) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{158} } +func (*Sysctl) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{161} } func (m *TCPSocketAction) Reset() { *m = TCPSocketAction{} } func (*TCPSocketAction) ProtoMessage() {} -func (*TCPSocketAction) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{159} } +func (*TCPSocketAction) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{162} } func (m *Taint) Reset() { *m = Taint{} } func (*Taint) ProtoMessage() {} -func (*Taint) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{160} } +func (*Taint) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{163} } func (m *Toleration) Reset() { *m = Toleration{} } func (*Toleration) ProtoMessage() {} -func (*Toleration) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{161} } +func (*Toleration) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{164} } func (m *Volume) Reset() { *m = Volume{} } func (*Volume) ProtoMessage() {} -func (*Volume) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{162} } +func (*Volume) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{165} } func (m *VolumeMount) Reset() { *m = VolumeMount{} } func (*VolumeMount) ProtoMessage() {} -func (*VolumeMount) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{163} } +func (*VolumeMount) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{166} } func (m *VolumeProjection) Reset() { *m = VolumeProjection{} } func (*VolumeProjection) ProtoMessage() {} -func (*VolumeProjection) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{164} } +func (*VolumeProjection) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{167} } func (m *VolumeSource) Reset() { *m = VolumeSource{} } func (*VolumeSource) ProtoMessage() {} -func (*VolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{165} } +func (*VolumeSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{168} } func (m *VsphereVirtualDiskVolumeSource) Reset() { *m = VsphereVirtualDiskVolumeSource{} } func (*VsphereVirtualDiskVolumeSource) ProtoMessage() {} func (*VsphereVirtualDiskVolumeSource) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{166} + return fileDescriptorGenerated, []int{169} } func (m *WeightedPodAffinityTerm) Reset() { *m = WeightedPodAffinityTerm{} } func (*WeightedPodAffinityTerm) ProtoMessage() {} func (*WeightedPodAffinityTerm) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{167} + return fileDescriptorGenerated, []int{170} } func init() { @@ -998,6 +1018,7 @@ func init() { proto.RegisterType((*LoadBalancerIngress)(nil), "k8s.io.kubernetes.pkg.api.v1.LoadBalancerIngress") proto.RegisterType((*LoadBalancerStatus)(nil), "k8s.io.kubernetes.pkg.api.v1.LoadBalancerStatus") proto.RegisterType((*LocalObjectReference)(nil), "k8s.io.kubernetes.pkg.api.v1.LocalObjectReference") + proto.RegisterType((*LocalVolumeSource)(nil), "k8s.io.kubernetes.pkg.api.v1.LocalVolumeSource") proto.RegisterType((*NFSVolumeSource)(nil), "k8s.io.kubernetes.pkg.api.v1.NFSVolumeSource") proto.RegisterType((*Namespace)(nil), "k8s.io.kubernetes.pkg.api.v1.Namespace") proto.RegisterType((*NamespaceList)(nil), "k8s.io.kubernetes.pkg.api.v1.NamespaceList") @@ -1088,6 +1109,8 @@ func init() { proto.RegisterType((*ServiceProxyOptions)(nil), "k8s.io.kubernetes.pkg.api.v1.ServiceProxyOptions") proto.RegisterType((*ServiceSpec)(nil), "k8s.io.kubernetes.pkg.api.v1.ServiceSpec") proto.RegisterType((*ServiceStatus)(nil), "k8s.io.kubernetes.pkg.api.v1.ServiceStatus") + proto.RegisterType((*StorageOSPersistentVolumeSource)(nil), "k8s.io.kubernetes.pkg.api.v1.StorageOSPersistentVolumeSource") + proto.RegisterType((*StorageOSVolumeSource)(nil), "k8s.io.kubernetes.pkg.api.v1.StorageOSVolumeSource") proto.RegisterType((*Sysctl)(nil), "k8s.io.kubernetes.pkg.api.v1.Sysctl") proto.RegisterType((*TCPSocketAction)(nil), "k8s.io.kubernetes.pkg.api.v1.TCPSocketAction") proto.RegisterType((*Taint)(nil), "k8s.io.kubernetes.pkg.api.v1.Taint") @@ -1641,10 +1664,15 @@ func (m *ConfigMap) MarshalTo(dAtA []byte) (int, error) { } i += n9 if len(m.Data) > 0 { + keysForData := make([]string, 0, len(m.Data)) for k := range m.Data { + keysForData = append(keysForData, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForData) + for _, k := range keysForData { dAtA[i] = 0x12 i++ - v := m.Data[k] + v := m.Data[string(k)] mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v))) i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) dAtA[i] = 0xa @@ -2563,6 +2591,14 @@ func (m *EmptyDirVolumeSource) MarshalTo(dAtA []byte) (int, error) { i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.Medium))) i += copy(dAtA[i:], m.Medium) + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.SizeLimit.Size())) + n31, err := m.SizeLimit.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n31 return i, nil } @@ -2589,11 +2625,11 @@ func (m *EndpointAddress) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.TargetRef.Size())) - n31, err := m.TargetRef.MarshalTo(dAtA[i:]) + n32, err := m.TargetRef.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n31 + i += n32 } dAtA[i] = 0x1a i++ @@ -2709,11 +2745,11 @@ func (m *Endpoints) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n32, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + n33, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n32 + i += n33 if len(m.Subsets) > 0 { for _, msg := range m.Subsets { dAtA[i] = 0x12 @@ -2747,11 +2783,11 @@ func (m *EndpointsList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n33, err := m.ListMeta.MarshalTo(dAtA[i:]) + n34, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n33 + i += n34 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -2790,21 +2826,21 @@ func (m *EnvFromSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ConfigMapRef.Size())) - n34, err := m.ConfigMapRef.MarshalTo(dAtA[i:]) + n35, err := m.ConfigMapRef.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n34 + i += n35 } if m.SecretRef != nil { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.SecretRef.Size())) - n35, err := m.SecretRef.MarshalTo(dAtA[i:]) + n36, err := m.SecretRef.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n35 + i += n36 } return i, nil } @@ -2836,11 +2872,11 @@ func (m *EnvVar) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ValueFrom.Size())) - n36, err := m.ValueFrom.MarshalTo(dAtA[i:]) + n37, err := m.ValueFrom.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n36 + i += n37 } return i, nil } @@ -2864,42 +2900,42 @@ func (m *EnvVarSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.FieldRef.Size())) - n37, err := m.FieldRef.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n37 - } - if m.ResourceFieldRef != nil { - dAtA[i] = 0x12 - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.ResourceFieldRef.Size())) - n38, err := m.ResourceFieldRef.MarshalTo(dAtA[i:]) + n38, err := m.FieldRef.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n38 } - if m.ConfigMapKeyRef != nil { - dAtA[i] = 0x1a + if m.ResourceFieldRef != nil { + dAtA[i] = 0x12 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.ConfigMapKeyRef.Size())) - n39, err := m.ConfigMapKeyRef.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.ResourceFieldRef.Size())) + n39, err := m.ResourceFieldRef.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n39 } - if m.SecretKeyRef != nil { - dAtA[i] = 0x22 + if m.ConfigMapKeyRef != nil { + dAtA[i] = 0x1a i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.SecretKeyRef.Size())) - n40, err := m.SecretKeyRef.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.ConfigMapKeyRef.Size())) + n40, err := m.ConfigMapKeyRef.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n40 } + if m.SecretKeyRef != nil { + dAtA[i] = 0x22 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.SecretKeyRef.Size())) + n41, err := m.SecretKeyRef.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n41 + } return i, nil } @@ -2921,19 +2957,19 @@ func (m *Event) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n41, err := m.ObjectMeta.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n41 - dAtA[i] = 0x12 - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.InvolvedObject.Size())) - n42, err := m.InvolvedObject.MarshalTo(dAtA[i:]) + n42, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n42 + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.InvolvedObject.Size())) + n43, err := m.InvolvedObject.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n43 dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.Reason))) @@ -2945,27 +2981,27 @@ func (m *Event) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x2a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Source.Size())) - n43, err := m.Source.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n43 - dAtA[i] = 0x32 - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.FirstTimestamp.Size())) - n44, err := m.FirstTimestamp.MarshalTo(dAtA[i:]) + n44, err := m.Source.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n44 - dAtA[i] = 0x3a + dAtA[i] = 0x32 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.LastTimestamp.Size())) - n45, err := m.LastTimestamp.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.FirstTimestamp.Size())) + n45, err := m.FirstTimestamp.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n45 + dAtA[i] = 0x3a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.LastTimestamp.Size())) + n46, err := m.LastTimestamp.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n46 dAtA[i] = 0x40 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Count)) @@ -2994,11 +3030,11 @@ func (m *EventList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n46, err := m.ListMeta.MarshalTo(dAtA[i:]) + n47, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n46 + i += n47 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -3150,11 +3186,11 @@ func (m *FlexVolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.SecretRef.Size())) - n47, err := m.SecretRef.MarshalTo(dAtA[i:]) + n48, err := m.SecretRef.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n47 + i += n48 } dAtA[i] = 0x20 i++ @@ -3165,10 +3201,15 @@ func (m *FlexVolumeSource) MarshalTo(dAtA []byte) (int, error) { } i++ if len(m.Options) > 0 { + keysForOptions := make([]string, 0, len(m.Options)) for k := range m.Options { + keysForOptions = append(keysForOptions, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForOptions) + for _, k := range keysForOptions { dAtA[i] = 0x2a i++ - v := m.Options[k] + v := m.Options[string(k)] mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v))) i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) dAtA[i] = 0xa @@ -3333,11 +3374,11 @@ func (m *HTTPGetAction) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Port.Size())) - n48, err := m.Port.MarshalTo(dAtA[i:]) + n49, err := m.Port.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n48 + i += n49 dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.Host))) @@ -3406,32 +3447,32 @@ func (m *Handler) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Exec.Size())) - n49, err := m.Exec.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n49 - } - if m.HTTPGet != nil { - dAtA[i] = 0x12 - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.HTTPGet.Size())) - n50, err := m.HTTPGet.MarshalTo(dAtA[i:]) + n50, err := m.Exec.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n50 } - if m.TCPSocket != nil { - dAtA[i] = 0x1a + if m.HTTPGet != nil { + dAtA[i] = 0x12 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.TCPSocket.Size())) - n51, err := m.TCPSocket.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.HTTPGet.Size())) + n51, err := m.HTTPGet.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n51 } + if m.TCPSocket != nil { + dAtA[i] = 0x1a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.TCPSocket.Size())) + n52, err := m.TCPSocket.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n52 + } return i, nil } @@ -3563,11 +3604,11 @@ func (m *ISCSIVolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x52 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.SecretRef.Size())) - n52, err := m.SecretRef.MarshalTo(dAtA[i:]) + n53, err := m.SecretRef.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n52 + i += n53 } dAtA[i] = 0x58 i++ @@ -3630,21 +3671,21 @@ func (m *Lifecycle) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.PostStart.Size())) - n53, err := m.PostStart.MarshalTo(dAtA[i:]) + n54, err := m.PostStart.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n53 + i += n54 } if m.PreStop != nil { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.PreStop.Size())) - n54, err := m.PreStop.MarshalTo(dAtA[i:]) + n55, err := m.PreStop.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n54 + i += n55 } return i, nil } @@ -3667,19 +3708,19 @@ func (m *LimitRange) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n55, err := m.ObjectMeta.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n55 - dAtA[i] = 0x12 - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) - n56, err := m.Spec.MarshalTo(dAtA[i:]) + n56, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n56 + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) + n57, err := m.Spec.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n57 return i, nil } @@ -3703,36 +3744,15 @@ func (m *LimitRangeItem) MarshalTo(dAtA []byte) (int, error) { i = encodeVarintGenerated(dAtA, i, uint64(len(m.Type))) i += copy(dAtA[i:], m.Type) if len(m.Max) > 0 { + keysForMax := make([]string, 0, len(m.Max)) for k := range m.Max { - dAtA[i] = 0x12 - i++ - v := m.Max[k] - msgSize := 0 - if (&v) != nil { - msgSize = (&v).Size() - msgSize += 1 + sovGenerated(uint64(msgSize)) - } - mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + msgSize - i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) - dAtA[i] = 0xa - i++ - i = encodeVarintGenerated(dAtA, i, uint64(len(k))) - i += copy(dAtA[i:], k) - dAtA[i] = 0x12 - i++ - i = encodeVarintGenerated(dAtA, i, uint64((&v).Size())) - n57, err := (&v).MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n57 + keysForMax = append(keysForMax, string(k)) } - } - if len(m.Min) > 0 { - for k := range m.Min { - dAtA[i] = 0x1a + github_com_gogo_protobuf_sortkeys.Strings(keysForMax) + for _, k := range keysForMax { + dAtA[i] = 0x12 i++ - v := m.Min[k] + v := m.Max[ResourceName(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -3754,11 +3774,16 @@ func (m *LimitRangeItem) MarshalTo(dAtA []byte) (int, error) { i += n58 } } - if len(m.Default) > 0 { - for k := range m.Default { - dAtA[i] = 0x22 + if len(m.Min) > 0 { + keysForMin := make([]string, 0, len(m.Min)) + for k := range m.Min { + keysForMin = append(keysForMin, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForMin) + for _, k := range keysForMin { + dAtA[i] = 0x1a i++ - v := m.Default[k] + v := m.Min[ResourceName(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -3780,11 +3805,16 @@ func (m *LimitRangeItem) MarshalTo(dAtA []byte) (int, error) { i += n59 } } - if len(m.DefaultRequest) > 0 { - for k := range m.DefaultRequest { - dAtA[i] = 0x2a + if len(m.Default) > 0 { + keysForDefault := make([]string, 0, len(m.Default)) + for k := range m.Default { + keysForDefault = append(keysForDefault, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForDefault) + for _, k := range keysForDefault { + dAtA[i] = 0x22 i++ - v := m.DefaultRequest[k] + v := m.Default[ResourceName(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -3806,11 +3836,16 @@ func (m *LimitRangeItem) MarshalTo(dAtA []byte) (int, error) { i += n60 } } - if len(m.MaxLimitRequestRatio) > 0 { - for k := range m.MaxLimitRequestRatio { - dAtA[i] = 0x32 + if len(m.DefaultRequest) > 0 { + keysForDefaultRequest := make([]string, 0, len(m.DefaultRequest)) + for k := range m.DefaultRequest { + keysForDefaultRequest = append(keysForDefaultRequest, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForDefaultRequest) + for _, k := range keysForDefaultRequest { + dAtA[i] = 0x2a i++ - v := m.MaxLimitRequestRatio[k] + v := m.DefaultRequest[ResourceName(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -3832,6 +3867,37 @@ func (m *LimitRangeItem) MarshalTo(dAtA []byte) (int, error) { i += n61 } } + if len(m.MaxLimitRequestRatio) > 0 { + keysForMaxLimitRequestRatio := make([]string, 0, len(m.MaxLimitRequestRatio)) + for k := range m.MaxLimitRequestRatio { + keysForMaxLimitRequestRatio = append(keysForMaxLimitRequestRatio, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForMaxLimitRequestRatio) + for _, k := range keysForMaxLimitRequestRatio { + dAtA[i] = 0x32 + i++ + v := m.MaxLimitRequestRatio[ResourceName(k)] + msgSize := 0 + if (&v) != nil { + msgSize = (&v).Size() + msgSize += 1 + sovGenerated(uint64(msgSize)) + } + mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + msgSize + i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(k))) + i += copy(dAtA[i:], k) + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64((&v).Size())) + n62, err := (&v).MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n62 + } + } return i, nil } @@ -3853,11 +3919,11 @@ func (m *LimitRangeList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n62, err := m.ListMeta.MarshalTo(dAtA[i:]) + n63, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n62 + i += n63 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -3921,11 +3987,11 @@ func (m *List) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n63, err := m.ListMeta.MarshalTo(dAtA[i:]) + n64, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n63 + i += n64 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -4070,6 +4136,28 @@ func (m *LocalObjectReference) MarshalTo(dAtA []byte) (int, error) { return i, nil } +func (m *LocalVolumeSource) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *LocalVolumeSource) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.Path))) + i += copy(dAtA[i:], m.Path) + return i, nil +} + func (m *NFSVolumeSource) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -4122,27 +4210,27 @@ func (m *Namespace) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n64, err := m.ObjectMeta.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n64 - dAtA[i] = 0x12 - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) - n65, err := m.Spec.MarshalTo(dAtA[i:]) + n65, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n65 - dAtA[i] = 0x1a + dAtA[i] = 0x12 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) - n66, err := m.Status.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) + n66, err := m.Spec.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n66 + dAtA[i] = 0x1a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) + n67, err := m.Status.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n67 return i, nil } @@ -4164,11 +4252,11 @@ func (m *NamespaceList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n67, err := m.ListMeta.MarshalTo(dAtA[i:]) + n68, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n67 + i += n68 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -4257,27 +4345,27 @@ func (m *Node) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n68, err := m.ObjectMeta.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n68 - dAtA[i] = 0x12 - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) - n69, err := m.Spec.MarshalTo(dAtA[i:]) + n69, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n69 - dAtA[i] = 0x1a + dAtA[i] = 0x12 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) - n70, err := m.Status.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) + n70, err := m.Spec.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n70 + dAtA[i] = 0x1a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) + n71, err := m.Status.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n71 return i, nil } @@ -4326,11 +4414,11 @@ func (m *NodeAffinity) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.RequiredDuringSchedulingIgnoredDuringExecution.Size())) - n71, err := m.RequiredDuringSchedulingIgnoredDuringExecution.MarshalTo(dAtA[i:]) + n72, err := m.RequiredDuringSchedulingIgnoredDuringExecution.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n71 + i += n72 } if len(m.PreferredDuringSchedulingIgnoredDuringExecution) > 0 { for _, msg := range m.PreferredDuringSchedulingIgnoredDuringExecution { @@ -4373,19 +4461,19 @@ func (m *NodeCondition) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.LastHeartbeatTime.Size())) - n72, err := m.LastHeartbeatTime.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n72 - dAtA[i] = 0x22 - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.LastTransitionTime.Size())) - n73, err := m.LastTransitionTime.MarshalTo(dAtA[i:]) + n73, err := m.LastHeartbeatTime.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n73 + dAtA[i] = 0x22 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.LastTransitionTime.Size())) + n74, err := m.LastTransitionTime.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n74 dAtA[i] = 0x2a i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.Reason))) @@ -4415,11 +4503,11 @@ func (m *NodeDaemonEndpoints) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.KubeletEndpoint.Size())) - n74, err := m.KubeletEndpoint.MarshalTo(dAtA[i:]) + n75, err := m.KubeletEndpoint.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n74 + i += n75 return i, nil } @@ -4441,11 +4529,11 @@ func (m *NodeList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n75, err := m.ListMeta.MarshalTo(dAtA[i:]) + n76, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n75 + i += n76 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -4499,10 +4587,15 @@ func (m *NodeResources) MarshalTo(dAtA []byte) (int, error) { var l int _ = l if len(m.Capacity) > 0 { + keysForCapacity := make([]string, 0, len(m.Capacity)) for k := range m.Capacity { + keysForCapacity = append(keysForCapacity, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForCapacity) + for _, k := range keysForCapacity { dAtA[i] = 0xa i++ - v := m.Capacity[k] + v := m.Capacity[ResourceName(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -4517,11 +4610,11 @@ func (m *NodeResources) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64((&v).Size())) - n76, err := (&v).MarshalTo(dAtA[i:]) + n77, err := (&v).MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n76 + i += n77 } } return i, nil @@ -4694,36 +4787,15 @@ func (m *NodeStatus) MarshalTo(dAtA []byte) (int, error) { var l int _ = l if len(m.Capacity) > 0 { + keysForCapacity := make([]string, 0, len(m.Capacity)) for k := range m.Capacity { - dAtA[i] = 0xa - i++ - v := m.Capacity[k] - msgSize := 0 - if (&v) != nil { - msgSize = (&v).Size() - msgSize += 1 + sovGenerated(uint64(msgSize)) - } - mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + msgSize - i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) - dAtA[i] = 0xa - i++ - i = encodeVarintGenerated(dAtA, i, uint64(len(k))) - i += copy(dAtA[i:], k) - dAtA[i] = 0x12 - i++ - i = encodeVarintGenerated(dAtA, i, uint64((&v).Size())) - n77, err := (&v).MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n77 + keysForCapacity = append(keysForCapacity, string(k)) } - } - if len(m.Allocatable) > 0 { - for k := range m.Allocatable { - dAtA[i] = 0x12 + github_com_gogo_protobuf_sortkeys.Strings(keysForCapacity) + for _, k := range keysForCapacity { + dAtA[i] = 0xa i++ - v := m.Allocatable[k] + v := m.Capacity[ResourceName(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -4745,6 +4817,37 @@ func (m *NodeStatus) MarshalTo(dAtA []byte) (int, error) { i += n78 } } + if len(m.Allocatable) > 0 { + keysForAllocatable := make([]string, 0, len(m.Allocatable)) + for k := range m.Allocatable { + keysForAllocatable = append(keysForAllocatable, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForAllocatable) + for _, k := range keysForAllocatable { + dAtA[i] = 0x12 + i++ + v := m.Allocatable[ResourceName(k)] + msgSize := 0 + if (&v) != nil { + msgSize = (&v).Size() + msgSize += 1 + sovGenerated(uint64(msgSize)) + } + mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + msgSize + i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(k))) + i += copy(dAtA[i:], k) + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64((&v).Size())) + n79, err := (&v).MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n79 + } + } dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.Phase))) @@ -4776,19 +4879,19 @@ func (m *NodeStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x32 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.DaemonEndpoints.Size())) - n79, err := m.DaemonEndpoints.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n79 - dAtA[i] = 0x3a - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.NodeInfo.Size())) - n80, err := m.NodeInfo.MarshalTo(dAtA[i:]) + n80, err := m.DaemonEndpoints.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n80 + dAtA[i] = 0x3a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.NodeInfo.Size())) + n81, err := m.NodeInfo.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n81 if len(m.Images) > 0 { for _, msg := range m.Images { dAtA[i] = 0x42 @@ -4960,20 +5063,20 @@ func (m *ObjectMeta) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x42 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.CreationTimestamp.Size())) - n81, err := m.CreationTimestamp.MarshalTo(dAtA[i:]) + n82, err := m.CreationTimestamp.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n81 + i += n82 if m.DeletionTimestamp != nil { dAtA[i] = 0x4a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.DeletionTimestamp.Size())) - n82, err := m.DeletionTimestamp.MarshalTo(dAtA[i:]) + n83, err := m.DeletionTimestamp.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n82 + i += n83 } if m.DeletionGracePeriodSeconds != nil { dAtA[i] = 0x50 @@ -4981,10 +5084,15 @@ func (m *ObjectMeta) MarshalTo(dAtA []byte) (int, error) { i = encodeVarintGenerated(dAtA, i, uint64(*m.DeletionGracePeriodSeconds)) } if len(m.Labels) > 0 { + keysForLabels := make([]string, 0, len(m.Labels)) for k := range m.Labels { + keysForLabels = append(keysForLabels, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) + for _, k := range keysForLabels { dAtA[i] = 0x5a i++ - v := m.Labels[k] + v := m.Labels[string(k)] mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v))) i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) dAtA[i] = 0xa @@ -4998,10 +5106,15 @@ func (m *ObjectMeta) MarshalTo(dAtA []byte) (int, error) { } } if len(m.Annotations) > 0 { + keysForAnnotations := make([]string, 0, len(m.Annotations)) for k := range m.Annotations { + keysForAnnotations = append(keysForAnnotations, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForAnnotations) + for _, k := range keysForAnnotations { dAtA[i] = 0x62 i++ - v := m.Annotations[k] + v := m.Annotations[string(k)] mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v))) i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) dAtA[i] = 0xa @@ -5051,11 +5164,11 @@ func (m *ObjectMeta) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Initializers.Size())) - n83, err := m.Initializers.MarshalTo(dAtA[i:]) + n84, err := m.Initializers.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n83 + i += n84 } return i, nil } @@ -5124,27 +5237,27 @@ func (m *PersistentVolume) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n84, err := m.ObjectMeta.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n84 - dAtA[i] = 0x12 - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) - n85, err := m.Spec.MarshalTo(dAtA[i:]) + n85, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n85 - dAtA[i] = 0x1a + dAtA[i] = 0x12 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) - n86, err := m.Status.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) + n86, err := m.Spec.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n86 + dAtA[i] = 0x1a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) + n87, err := m.Status.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n87 return i, nil } @@ -5166,27 +5279,27 @@ func (m *PersistentVolumeClaim) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n87, err := m.ObjectMeta.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n87 - dAtA[i] = 0x12 - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) - n88, err := m.Spec.MarshalTo(dAtA[i:]) + n88, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n88 - dAtA[i] = 0x1a + dAtA[i] = 0x12 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) - n89, err := m.Status.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) + n89, err := m.Spec.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n89 + dAtA[i] = 0x1a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) + n90, err := m.Status.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n90 return i, nil } @@ -5208,11 +5321,11 @@ func (m *PersistentVolumeClaimList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n90, err := m.ListMeta.MarshalTo(dAtA[i:]) + n91, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n90 + i += n91 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -5261,11 +5374,11 @@ func (m *PersistentVolumeClaimSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Resources.Size())) - n91, err := m.Resources.MarshalTo(dAtA[i:]) + n92, err := m.Resources.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n91 + i += n92 dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.VolumeName))) @@ -5274,11 +5387,11 @@ func (m *PersistentVolumeClaimSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x22 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Selector.Size())) - n92, err := m.Selector.MarshalTo(dAtA[i:]) + n93, err := m.Selector.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n92 + i += n93 } if m.StorageClassName != nil { dAtA[i] = 0x2a @@ -5324,10 +5437,15 @@ func (m *PersistentVolumeClaimStatus) MarshalTo(dAtA []byte) (int, error) { } } if len(m.Capacity) > 0 { + keysForCapacity := make([]string, 0, len(m.Capacity)) for k := range m.Capacity { + keysForCapacity = append(keysForCapacity, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForCapacity) + for _, k := range keysForCapacity { dAtA[i] = 0x1a i++ - v := m.Capacity[k] + v := m.Capacity[ResourceName(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -5342,11 +5460,11 @@ func (m *PersistentVolumeClaimStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64((&v).Size())) - n93, err := (&v).MarshalTo(dAtA[i:]) + n94, err := (&v).MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n93 + i += n94 } } return i, nil @@ -5400,11 +5518,11 @@ func (m *PersistentVolumeList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n94, err := m.ListMeta.MarshalTo(dAtA[i:]) + n95, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n94 + i += n95 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -5439,163 +5557,163 @@ func (m *PersistentVolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.GCEPersistentDisk.Size())) - n95, err := m.GCEPersistentDisk.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n95 - } - if m.AWSElasticBlockStore != nil { - dAtA[i] = 0x12 - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.AWSElasticBlockStore.Size())) - n96, err := m.AWSElasticBlockStore.MarshalTo(dAtA[i:]) + n96, err := m.GCEPersistentDisk.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n96 } - if m.HostPath != nil { - dAtA[i] = 0x1a + if m.AWSElasticBlockStore != nil { + dAtA[i] = 0x12 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.HostPath.Size())) - n97, err := m.HostPath.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.AWSElasticBlockStore.Size())) + n97, err := m.AWSElasticBlockStore.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n97 } - if m.Glusterfs != nil { - dAtA[i] = 0x22 + if m.HostPath != nil { + dAtA[i] = 0x1a i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Glusterfs.Size())) - n98, err := m.Glusterfs.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.HostPath.Size())) + n98, err := m.HostPath.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n98 } - if m.NFS != nil { - dAtA[i] = 0x2a + if m.Glusterfs != nil { + dAtA[i] = 0x22 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.NFS.Size())) - n99, err := m.NFS.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.Glusterfs.Size())) + n99, err := m.Glusterfs.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n99 } - if m.RBD != nil { - dAtA[i] = 0x32 + if m.NFS != nil { + dAtA[i] = 0x2a i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.RBD.Size())) - n100, err := m.RBD.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.NFS.Size())) + n100, err := m.NFS.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n100 } - if m.ISCSI != nil { - dAtA[i] = 0x3a + if m.RBD != nil { + dAtA[i] = 0x32 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.ISCSI.Size())) - n101, err := m.ISCSI.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.RBD.Size())) + n101, err := m.RBD.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n101 } - if m.Cinder != nil { - dAtA[i] = 0x42 + if m.ISCSI != nil { + dAtA[i] = 0x3a i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Cinder.Size())) - n102, err := m.Cinder.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.ISCSI.Size())) + n102, err := m.ISCSI.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n102 } - if m.CephFS != nil { - dAtA[i] = 0x4a + if m.Cinder != nil { + dAtA[i] = 0x42 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.CephFS.Size())) - n103, err := m.CephFS.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.Cinder.Size())) + n103, err := m.Cinder.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n103 } - if m.FC != nil { - dAtA[i] = 0x52 + if m.CephFS != nil { + dAtA[i] = 0x4a i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.FC.Size())) - n104, err := m.FC.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.CephFS.Size())) + n104, err := m.CephFS.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n104 } - if m.Flocker != nil { - dAtA[i] = 0x5a + if m.FC != nil { + dAtA[i] = 0x52 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Flocker.Size())) - n105, err := m.Flocker.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.FC.Size())) + n105, err := m.FC.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n105 } - if m.FlexVolume != nil { - dAtA[i] = 0x62 + if m.Flocker != nil { + dAtA[i] = 0x5a i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.FlexVolume.Size())) - n106, err := m.FlexVolume.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.Flocker.Size())) + n106, err := m.Flocker.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n106 } - if m.AzureFile != nil { - dAtA[i] = 0x6a + if m.FlexVolume != nil { + dAtA[i] = 0x62 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.AzureFile.Size())) - n107, err := m.AzureFile.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.FlexVolume.Size())) + n107, err := m.FlexVolume.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n107 } - if m.VsphereVolume != nil { - dAtA[i] = 0x72 + if m.AzureFile != nil { + dAtA[i] = 0x6a i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.VsphereVolume.Size())) - n108, err := m.VsphereVolume.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.AzureFile.Size())) + n108, err := m.AzureFile.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n108 } - if m.Quobyte != nil { - dAtA[i] = 0x7a + if m.VsphereVolume != nil { + dAtA[i] = 0x72 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Quobyte.Size())) - n109, err := m.Quobyte.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.VsphereVolume.Size())) + n109, err := m.VsphereVolume.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n109 } + if m.Quobyte != nil { + dAtA[i] = 0x7a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Quobyte.Size())) + n110, err := m.Quobyte.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n110 + } if m.AzureDisk != nil { dAtA[i] = 0x82 i++ dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.AzureDisk.Size())) - n110, err := m.AzureDisk.MarshalTo(dAtA[i:]) + n111, err := m.AzureDisk.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n110 + i += n111 } if m.PhotonPersistentDisk != nil { dAtA[i] = 0x8a @@ -5603,11 +5721,11 @@ func (m *PersistentVolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.PhotonPersistentDisk.Size())) - n111, err := m.PhotonPersistentDisk.MarshalTo(dAtA[i:]) + n112, err := m.PhotonPersistentDisk.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n111 + i += n112 } if m.PortworxVolume != nil { dAtA[i] = 0x92 @@ -5615,11 +5733,11 @@ func (m *PersistentVolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.PortworxVolume.Size())) - n112, err := m.PortworxVolume.MarshalTo(dAtA[i:]) + n113, err := m.PortworxVolume.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n112 + i += n113 } if m.ScaleIO != nil { dAtA[i] = 0x9a @@ -5627,11 +5745,35 @@ func (m *PersistentVolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ScaleIO.Size())) - n113, err := m.ScaleIO.MarshalTo(dAtA[i:]) + n114, err := m.ScaleIO.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n113 + i += n114 + } + if m.Local != nil { + dAtA[i] = 0xa2 + i++ + dAtA[i] = 0x1 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Local.Size())) + n115, err := m.Local.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n115 + } + if m.StorageOS != nil { + dAtA[i] = 0xaa + i++ + dAtA[i] = 0x1 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.StorageOS.Size())) + n116, err := m.StorageOS.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n116 } return i, nil } @@ -5652,10 +5794,15 @@ func (m *PersistentVolumeSpec) MarshalTo(dAtA []byte) (int, error) { var l int _ = l if len(m.Capacity) > 0 { + keysForCapacity := make([]string, 0, len(m.Capacity)) for k := range m.Capacity { + keysForCapacity = append(keysForCapacity, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForCapacity) + for _, k := range keysForCapacity { dAtA[i] = 0xa i++ - v := m.Capacity[k] + v := m.Capacity[ResourceName(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -5670,21 +5817,21 @@ func (m *PersistentVolumeSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64((&v).Size())) - n114, err := (&v).MarshalTo(dAtA[i:]) + n117, err := (&v).MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n114 + i += n117 } } dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.PersistentVolumeSource.Size())) - n115, err := m.PersistentVolumeSource.MarshalTo(dAtA[i:]) + n118, err := m.PersistentVolumeSource.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n115 + i += n118 if len(m.AccessModes) > 0 { for _, s := range m.AccessModes { dAtA[i] = 0x1a @@ -5704,11 +5851,11 @@ func (m *PersistentVolumeSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x22 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ClaimRef.Size())) - n116, err := m.ClaimRef.MarshalTo(dAtA[i:]) + n119, err := m.ClaimRef.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n116 + i += n119 } dAtA[i] = 0x2a i++ @@ -5795,27 +5942,27 @@ func (m *Pod) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n117, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + n120, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n117 + i += n120 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) - n118, err := m.Spec.MarshalTo(dAtA[i:]) + n121, err := m.Spec.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n118 + i += n121 dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) - n119, err := m.Status.MarshalTo(dAtA[i:]) + n122, err := m.Status.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n119 + i += n122 return i, nil } @@ -5880,11 +6027,11 @@ func (m *PodAffinityTerm) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.LabelSelector.Size())) - n120, err := m.LabelSelector.MarshalTo(dAtA[i:]) + n123, err := m.LabelSelector.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n120 + i += n123 } if len(m.Namespaces) > 0 { for _, s := range m.Namespaces { @@ -6030,19 +6177,19 @@ func (m *PodCondition) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.LastProbeTime.Size())) - n121, err := m.LastProbeTime.MarshalTo(dAtA[i:]) + n124, err := m.LastProbeTime.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n121 + i += n124 dAtA[i] = 0x22 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.LastTransitionTime.Size())) - n122, err := m.LastTransitionTime.MarshalTo(dAtA[i:]) + n125, err := m.LastTransitionTime.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n122 + i += n125 dAtA[i] = 0x2a i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.Reason))) @@ -6141,11 +6288,11 @@ func (m *PodList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n123, err := m.ListMeta.MarshalTo(dAtA[i:]) + n126, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n123 + i += n126 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -6205,11 +6352,11 @@ func (m *PodLogOptions) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x2a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.SinceTime.Size())) - n124, err := m.SinceTime.MarshalTo(dAtA[i:]) + n127, err := m.SinceTime.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n124 + i += n127 } dAtA[i] = 0x30 i++ @@ -6298,11 +6445,11 @@ func (m *PodSecurityContext) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.SELinuxOptions.Size())) - n125, err := m.SELinuxOptions.MarshalTo(dAtA[i:]) + n128, err := m.SELinuxOptions.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n125 + i += n128 } if m.RunAsUser != nil { dAtA[i] = 0x10 @@ -6353,11 +6500,11 @@ func (m *PodSignature) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.PodController.Size())) - n126, err := m.PodController.MarshalTo(dAtA[i:]) + n129, err := m.PodController.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n126 + i += n129 } return i, nil } @@ -6420,10 +6567,15 @@ func (m *PodSpec) MarshalTo(dAtA []byte) (int, error) { i = encodeVarintGenerated(dAtA, i, uint64(len(m.DNSPolicy))) i += copy(dAtA[i:], m.DNSPolicy) if len(m.NodeSelector) > 0 { + keysForNodeSelector := make([]string, 0, len(m.NodeSelector)) for k := range m.NodeSelector { + keysForNodeSelector = append(keysForNodeSelector, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForNodeSelector) + for _, k := range keysForNodeSelector { dAtA[i] = 0x3a i++ - v := m.NodeSelector[k] + v := m.NodeSelector[string(k)] mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v))) i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) dAtA[i] = 0xa @@ -6476,11 +6628,11 @@ func (m *PodSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x72 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.SecurityContext.Size())) - n127, err := m.SecurityContext.MarshalTo(dAtA[i:]) + n130, err := m.SecurityContext.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n127 + i += n130 } if len(m.ImagePullSecrets) > 0 { for _, msg := range m.ImagePullSecrets { @@ -6512,11 +6664,11 @@ func (m *PodSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Affinity.Size())) - n128, err := m.Affinity.MarshalTo(dAtA[i:]) + n131, err := m.Affinity.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n128 + i += n131 } dAtA[i] = 0x9a i++ @@ -6632,11 +6784,11 @@ func (m *PodStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x3a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.StartTime.Size())) - n129, err := m.StartTime.MarshalTo(dAtA[i:]) + n132, err := m.StartTime.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n129 + i += n132 } if len(m.ContainerStatuses) > 0 { for _, msg := range m.ContainerStatuses { @@ -6687,19 +6839,19 @@ func (m *PodStatusResult) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n130, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + n133, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n130 + i += n133 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) - n131, err := m.Status.MarshalTo(dAtA[i:]) + n134, err := m.Status.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n131 + i += n134 return i, nil } @@ -6721,19 +6873,19 @@ func (m *PodTemplate) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n132, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + n135, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n132 + i += n135 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Template.Size())) - n133, err := m.Template.MarshalTo(dAtA[i:]) + n136, err := m.Template.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n133 + i += n136 return i, nil } @@ -6755,11 +6907,11 @@ func (m *PodTemplateList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n134, err := m.ListMeta.MarshalTo(dAtA[i:]) + n137, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n134 + i += n137 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -6793,19 +6945,19 @@ func (m *PodTemplateSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n135, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + n138, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n135 + i += n138 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) - n136, err := m.Spec.MarshalTo(dAtA[i:]) + n139, err := m.Spec.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n136 + i += n139 return i, nil } @@ -6885,19 +7037,19 @@ func (m *PreferAvoidPodsEntry) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.PodSignature.Size())) - n137, err := m.PodSignature.MarshalTo(dAtA[i:]) + n140, err := m.PodSignature.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n137 + i += n140 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.EvictionTime.Size())) - n138, err := m.EvictionTime.MarshalTo(dAtA[i:]) + n141, err := m.EvictionTime.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n138 + i += n141 dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.Reason))) @@ -6930,11 +7082,11 @@ func (m *PreferredSchedulingTerm) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Preference.Size())) - n139, err := m.Preference.MarshalTo(dAtA[i:]) + n142, err := m.Preference.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n139 + i += n142 return i, nil } @@ -6956,11 +7108,11 @@ func (m *Probe) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Handler.Size())) - n140, err := m.Handler.MarshalTo(dAtA[i:]) + n143, err := m.Handler.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n140 + i += n143 dAtA[i] = 0x10 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.InitialDelaySeconds)) @@ -7110,11 +7262,11 @@ func (m *RBDVolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x3a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.SecretRef.Size())) - n141, err := m.SecretRef.MarshalTo(dAtA[i:]) + n144, err := m.SecretRef.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n141 + i += n144 } dAtA[i] = 0x40 i++ @@ -7145,11 +7297,11 @@ func (m *RangeAllocation) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n142, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + n145, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n142 + i += n145 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.Range))) @@ -7181,27 +7333,27 @@ func (m *ReplicationController) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n143, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + n146, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n143 + i += n146 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) - n144, err := m.Spec.MarshalTo(dAtA[i:]) + n147, err := m.Spec.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n144 + i += n147 dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) - n145, err := m.Status.MarshalTo(dAtA[i:]) + n148, err := m.Status.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n145 + i += n148 return i, nil } @@ -7231,11 +7383,11 @@ func (m *ReplicationControllerCondition) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.LastTransitionTime.Size())) - n146, err := m.LastTransitionTime.MarshalTo(dAtA[i:]) + n149, err := m.LastTransitionTime.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n146 + i += n149 dAtA[i] = 0x22 i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.Reason))) @@ -7265,11 +7417,11 @@ func (m *ReplicationControllerList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n147, err := m.ListMeta.MarshalTo(dAtA[i:]) + n150, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n147 + i += n150 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -7306,10 +7458,15 @@ func (m *ReplicationControllerSpec) MarshalTo(dAtA []byte) (int, error) { i = encodeVarintGenerated(dAtA, i, uint64(*m.Replicas)) } if len(m.Selector) > 0 { + keysForSelector := make([]string, 0, len(m.Selector)) for k := range m.Selector { + keysForSelector = append(keysForSelector, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForSelector) + for _, k := range keysForSelector { dAtA[i] = 0x12 i++ - v := m.Selector[k] + v := m.Selector[string(k)] mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v))) i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) dAtA[i] = 0xa @@ -7326,11 +7483,11 @@ func (m *ReplicationControllerSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Template.Size())) - n148, err := m.Template.MarshalTo(dAtA[i:]) + n151, err := m.Template.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n148 + i += n151 } dAtA[i] = 0x20 i++ @@ -7409,11 +7566,11 @@ func (m *ResourceFieldSelector) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Divisor.Size())) - n149, err := m.Divisor.MarshalTo(dAtA[i:]) + n152, err := m.Divisor.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n149 + i += n152 return i, nil } @@ -7435,27 +7592,27 @@ func (m *ResourceQuota) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n150, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + n153, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n150 + i += n153 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) - n151, err := m.Spec.MarshalTo(dAtA[i:]) + n154, err := m.Spec.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n151 + i += n154 dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) - n152, err := m.Status.MarshalTo(dAtA[i:]) + n155, err := m.Status.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n152 + i += n155 return i, nil } @@ -7477,11 +7634,11 @@ func (m *ResourceQuotaList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n153, err := m.ListMeta.MarshalTo(dAtA[i:]) + n156, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n153 + i += n156 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -7513,10 +7670,15 @@ func (m *ResourceQuotaSpec) MarshalTo(dAtA []byte) (int, error) { var l int _ = l if len(m.Hard) > 0 { + keysForHard := make([]string, 0, len(m.Hard)) for k := range m.Hard { + keysForHard = append(keysForHard, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForHard) + for _, k := range keysForHard { dAtA[i] = 0xa i++ - v := m.Hard[k] + v := m.Hard[ResourceName(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -7531,11 +7693,11 @@ func (m *ResourceQuotaSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64((&v).Size())) - n154, err := (&v).MarshalTo(dAtA[i:]) + n157, err := (&v).MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n154 + i += n157 } } if len(m.Scopes) > 0 { @@ -7572,10 +7734,15 @@ func (m *ResourceQuotaStatus) MarshalTo(dAtA []byte) (int, error) { var l int _ = l if len(m.Hard) > 0 { + keysForHard := make([]string, 0, len(m.Hard)) for k := range m.Hard { + keysForHard = append(keysForHard, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForHard) + for _, k := range keysForHard { dAtA[i] = 0xa i++ - v := m.Hard[k] + v := m.Hard[ResourceName(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -7590,18 +7757,23 @@ func (m *ResourceQuotaStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64((&v).Size())) - n155, err := (&v).MarshalTo(dAtA[i:]) + n158, err := (&v).MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n155 + i += n158 } } if len(m.Used) > 0 { + keysForUsed := make([]string, 0, len(m.Used)) for k := range m.Used { + keysForUsed = append(keysForUsed, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForUsed) + for _, k := range keysForUsed { dAtA[i] = 0x12 i++ - v := m.Used[k] + v := m.Used[ResourceName(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -7616,11 +7788,11 @@ func (m *ResourceQuotaStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64((&v).Size())) - n156, err := (&v).MarshalTo(dAtA[i:]) + n159, err := (&v).MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n156 + i += n159 } } return i, nil @@ -7642,10 +7814,15 @@ func (m *ResourceRequirements) MarshalTo(dAtA []byte) (int, error) { var l int _ = l if len(m.Limits) > 0 { + keysForLimits := make([]string, 0, len(m.Limits)) for k := range m.Limits { + keysForLimits = append(keysForLimits, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForLimits) + for _, k := range keysForLimits { dAtA[i] = 0xa i++ - v := m.Limits[k] + v := m.Limits[ResourceName(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -7660,18 +7837,23 @@ func (m *ResourceRequirements) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64((&v).Size())) - n157, err := (&v).MarshalTo(dAtA[i:]) + n160, err := (&v).MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n157 + i += n160 } } if len(m.Requests) > 0 { + keysForRequests := make([]string, 0, len(m.Requests)) for k := range m.Requests { + keysForRequests = append(keysForRequests, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForRequests) + for _, k := range keysForRequests { dAtA[i] = 0x12 i++ - v := m.Requests[k] + v := m.Requests[ResourceName(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -7686,11 +7868,11 @@ func (m *ResourceRequirements) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64((&v).Size())) - n158, err := (&v).MarshalTo(dAtA[i:]) + n161, err := (&v).MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n158 + i += n161 } } return i, nil @@ -7757,11 +7939,11 @@ func (m *ScaleIOVolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.SecretRef.Size())) - n159, err := m.SecretRef.MarshalTo(dAtA[i:]) + n162, err := m.SecretRef.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n159 + i += n162 } dAtA[i] = 0x20 i++ @@ -7820,16 +8002,21 @@ func (m *Secret) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n160, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + n163, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n160 + i += n163 if len(m.Data) > 0 { + keysForData := make([]string, 0, len(m.Data)) for k := range m.Data { + keysForData = append(keysForData, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForData) + for _, k := range keysForData { dAtA[i] = 0x12 i++ - v := m.Data[k] + v := m.Data[string(k)] byteSize := 0 if v != nil { byteSize = 1 + len(v) + sovGenerated(uint64(len(v))) @@ -7853,10 +8040,15 @@ func (m *Secret) MarshalTo(dAtA []byte) (int, error) { i = encodeVarintGenerated(dAtA, i, uint64(len(m.Type))) i += copy(dAtA[i:], m.Type) if len(m.StringData) > 0 { + keysForStringData := make([]string, 0, len(m.StringData)) for k := range m.StringData { + keysForStringData = append(keysForStringData, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForStringData) + for _, k := range keysForStringData { dAtA[i] = 0x22 i++ - v := m.StringData[k] + v := m.StringData[string(k)] mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v))) i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) dAtA[i] = 0xa @@ -7890,11 +8082,11 @@ func (m *SecretEnvSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.LocalObjectReference.Size())) - n161, err := m.LocalObjectReference.MarshalTo(dAtA[i:]) + n164, err := m.LocalObjectReference.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n161 + i += n164 if m.Optional != nil { dAtA[i] = 0x10 i++ @@ -7926,11 +8118,11 @@ func (m *SecretKeySelector) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.LocalObjectReference.Size())) - n162, err := m.LocalObjectReference.MarshalTo(dAtA[i:]) + n165, err := m.LocalObjectReference.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n162 + i += n165 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.Key))) @@ -7966,11 +8158,11 @@ func (m *SecretList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n163, err := m.ListMeta.MarshalTo(dAtA[i:]) + n166, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n163 + i += n166 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -8004,11 +8196,11 @@ func (m *SecretProjection) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.LocalObjectReference.Size())) - n164, err := m.LocalObjectReference.MarshalTo(dAtA[i:]) + n167, err := m.LocalObjectReference.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n164 + i += n167 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -8102,11 +8294,11 @@ func (m *SecurityContext) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Capabilities.Size())) - n165, err := m.Capabilities.MarshalTo(dAtA[i:]) + n168, err := m.Capabilities.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n165 + i += n168 } if m.Privileged != nil { dAtA[i] = 0x10 @@ -8122,11 +8314,11 @@ func (m *SecurityContext) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.SELinuxOptions.Size())) - n166, err := m.SELinuxOptions.MarshalTo(dAtA[i:]) + n169, err := m.SELinuxOptions.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n166 + i += n169 } if m.RunAsUser != nil { dAtA[i] = 0x20 @@ -8174,11 +8366,11 @@ func (m *SerializedReference) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Reference.Size())) - n167, err := m.Reference.MarshalTo(dAtA[i:]) + n170, err := m.Reference.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n167 + i += n170 return i, nil } @@ -8200,27 +8392,27 @@ func (m *Service) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n168, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + n171, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n168 + i += n171 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) - n169, err := m.Spec.MarshalTo(dAtA[i:]) + n172, err := m.Spec.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n169 + i += n172 dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) - n170, err := m.Status.MarshalTo(dAtA[i:]) + n173, err := m.Status.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n170 + i += n173 return i, nil } @@ -8242,11 +8434,11 @@ func (m *ServiceAccount) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n171, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + n174, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n171 + i += n174 if len(m.Secrets) > 0 { for _, msg := range m.Secrets { dAtA[i] = 0x12 @@ -8302,11 +8494,11 @@ func (m *ServiceAccountList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n172, err := m.ListMeta.MarshalTo(dAtA[i:]) + n175, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n172 + i += n175 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -8340,11 +8532,11 @@ func (m *ServiceList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n173, err := m.ListMeta.MarshalTo(dAtA[i:]) + n176, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n173 + i += n176 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -8389,11 +8581,11 @@ func (m *ServicePort) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x22 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.TargetPort.Size())) - n174, err := m.TargetPort.MarshalTo(dAtA[i:]) + n177, err := m.TargetPort.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n174 + i += n177 dAtA[i] = 0x28 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.NodePort)) @@ -8450,10 +8642,15 @@ func (m *ServiceSpec) MarshalTo(dAtA []byte) (int, error) { } } if len(m.Selector) > 0 { + keysForSelector := make([]string, 0, len(m.Selector)) for k := range m.Selector { + keysForSelector = append(keysForSelector, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForSelector) + for _, k := range keysForSelector { dAtA[i] = 0x12 i++ - v := m.Selector[k] + v := m.Selector[string(k)] mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v))) i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) dAtA[i] = 0xa @@ -8544,11 +8741,107 @@ func (m *ServiceStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.LoadBalancer.Size())) - n175, err := m.LoadBalancer.MarshalTo(dAtA[i:]) + n178, err := m.LoadBalancer.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n175 + i += n178 + return i, nil +} + +func (m *StorageOSPersistentVolumeSource) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *StorageOSPersistentVolumeSource) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.VolumeName))) + i += copy(dAtA[i:], m.VolumeName) + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.VolumeNamespace))) + i += copy(dAtA[i:], m.VolumeNamespace) + dAtA[i] = 0x1a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.FSType))) + i += copy(dAtA[i:], m.FSType) + dAtA[i] = 0x20 + i++ + if m.ReadOnly { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i++ + if m.SecretRef != nil { + dAtA[i] = 0x2a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.SecretRef.Size())) + n179, err := m.SecretRef.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n179 + } + return i, nil +} + +func (m *StorageOSVolumeSource) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *StorageOSVolumeSource) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.VolumeName))) + i += copy(dAtA[i:], m.VolumeName) + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.VolumeNamespace))) + i += copy(dAtA[i:], m.VolumeNamespace) + dAtA[i] = 0x1a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.FSType))) + i += copy(dAtA[i:], m.FSType) + dAtA[i] = 0x20 + i++ + if m.ReadOnly { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i++ + if m.SecretRef != nil { + dAtA[i] = 0x2a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.SecretRef.Size())) + n180, err := m.SecretRef.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n180 + } return i, nil } @@ -8596,11 +8889,11 @@ func (m *TCPSocketAction) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Port.Size())) - n176, err := m.Port.MarshalTo(dAtA[i:]) + n181, err := m.Port.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n176 + i += n181 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.Host))) @@ -8638,11 +8931,11 @@ func (m *Taint) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x22 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.TimeAdded.Size())) - n177, err := m.TimeAdded.MarshalTo(dAtA[i:]) + n182, err := m.TimeAdded.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n177 + i += n182 return i, nil } @@ -8707,11 +9000,11 @@ func (m *Volume) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.VolumeSource.Size())) - n178, err := m.VolumeSource.MarshalTo(dAtA[i:]) + n183, err := m.VolumeSource.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n178 + i += n183 return i, nil } @@ -8772,31 +9065,31 @@ func (m *VolumeProjection) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Secret.Size())) - n179, err := m.Secret.MarshalTo(dAtA[i:]) + n184, err := m.Secret.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n179 + i += n184 } if m.DownwardAPI != nil { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.DownwardAPI.Size())) - n180, err := m.DownwardAPI.MarshalTo(dAtA[i:]) + n185, err := m.DownwardAPI.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n180 + i += n185 } if m.ConfigMap != nil { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ConfigMap.Size())) - n181, err := m.ConfigMap.MarshalTo(dAtA[i:]) + n186, err := m.ConfigMap.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n181 + i += n186 } return i, nil } @@ -8820,163 +9113,163 @@ func (m *VolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.HostPath.Size())) - n182, err := m.HostPath.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n182 - } - if m.EmptyDir != nil { - dAtA[i] = 0x12 - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.EmptyDir.Size())) - n183, err := m.EmptyDir.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n183 - } - if m.GCEPersistentDisk != nil { - dAtA[i] = 0x1a - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.GCEPersistentDisk.Size())) - n184, err := m.GCEPersistentDisk.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n184 - } - if m.AWSElasticBlockStore != nil { - dAtA[i] = 0x22 - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.AWSElasticBlockStore.Size())) - n185, err := m.AWSElasticBlockStore.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n185 - } - if m.GitRepo != nil { - dAtA[i] = 0x2a - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.GitRepo.Size())) - n186, err := m.GitRepo.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n186 - } - if m.Secret != nil { - dAtA[i] = 0x32 - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Secret.Size())) - n187, err := m.Secret.MarshalTo(dAtA[i:]) + n187, err := m.HostPath.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n187 } - if m.NFS != nil { - dAtA[i] = 0x3a + if m.EmptyDir != nil { + dAtA[i] = 0x12 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.NFS.Size())) - n188, err := m.NFS.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.EmptyDir.Size())) + n188, err := m.EmptyDir.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n188 } - if m.ISCSI != nil { - dAtA[i] = 0x42 + if m.GCEPersistentDisk != nil { + dAtA[i] = 0x1a i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.ISCSI.Size())) - n189, err := m.ISCSI.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.GCEPersistentDisk.Size())) + n189, err := m.GCEPersistentDisk.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n189 } - if m.Glusterfs != nil { - dAtA[i] = 0x4a + if m.AWSElasticBlockStore != nil { + dAtA[i] = 0x22 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Glusterfs.Size())) - n190, err := m.Glusterfs.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.AWSElasticBlockStore.Size())) + n190, err := m.AWSElasticBlockStore.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n190 } - if m.PersistentVolumeClaim != nil { - dAtA[i] = 0x52 + if m.GitRepo != nil { + dAtA[i] = 0x2a i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.PersistentVolumeClaim.Size())) - n191, err := m.PersistentVolumeClaim.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.GitRepo.Size())) + n191, err := m.GitRepo.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n191 } - if m.RBD != nil { - dAtA[i] = 0x5a + if m.Secret != nil { + dAtA[i] = 0x32 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.RBD.Size())) - n192, err := m.RBD.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.Secret.Size())) + n192, err := m.Secret.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n192 } - if m.FlexVolume != nil { - dAtA[i] = 0x62 + if m.NFS != nil { + dAtA[i] = 0x3a i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.FlexVolume.Size())) - n193, err := m.FlexVolume.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.NFS.Size())) + n193, err := m.NFS.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n193 } - if m.Cinder != nil { - dAtA[i] = 0x6a + if m.ISCSI != nil { + dAtA[i] = 0x42 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Cinder.Size())) - n194, err := m.Cinder.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.ISCSI.Size())) + n194, err := m.ISCSI.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n194 } - if m.CephFS != nil { - dAtA[i] = 0x72 + if m.Glusterfs != nil { + dAtA[i] = 0x4a i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.CephFS.Size())) - n195, err := m.CephFS.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.Glusterfs.Size())) + n195, err := m.Glusterfs.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n195 } - if m.Flocker != nil { - dAtA[i] = 0x7a + if m.PersistentVolumeClaim != nil { + dAtA[i] = 0x52 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Flocker.Size())) - n196, err := m.Flocker.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.PersistentVolumeClaim.Size())) + n196, err := m.PersistentVolumeClaim.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n196 } + if m.RBD != nil { + dAtA[i] = 0x5a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.RBD.Size())) + n197, err := m.RBD.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n197 + } + if m.FlexVolume != nil { + dAtA[i] = 0x62 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.FlexVolume.Size())) + n198, err := m.FlexVolume.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n198 + } + if m.Cinder != nil { + dAtA[i] = 0x6a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Cinder.Size())) + n199, err := m.Cinder.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n199 + } + if m.CephFS != nil { + dAtA[i] = 0x72 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.CephFS.Size())) + n200, err := m.CephFS.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n200 + } + if m.Flocker != nil { + dAtA[i] = 0x7a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Flocker.Size())) + n201, err := m.Flocker.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n201 + } if m.DownwardAPI != nil { dAtA[i] = 0x82 i++ dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.DownwardAPI.Size())) - n197, err := m.DownwardAPI.MarshalTo(dAtA[i:]) + n202, err := m.DownwardAPI.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n197 + i += n202 } if m.FC != nil { dAtA[i] = 0x8a @@ -8984,11 +9277,11 @@ func (m *VolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.FC.Size())) - n198, err := m.FC.MarshalTo(dAtA[i:]) + n203, err := m.FC.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n198 + i += n203 } if m.AzureFile != nil { dAtA[i] = 0x92 @@ -8996,11 +9289,11 @@ func (m *VolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.AzureFile.Size())) - n199, err := m.AzureFile.MarshalTo(dAtA[i:]) + n204, err := m.AzureFile.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n199 + i += n204 } if m.ConfigMap != nil { dAtA[i] = 0x9a @@ -9008,11 +9301,11 @@ func (m *VolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ConfigMap.Size())) - n200, err := m.ConfigMap.MarshalTo(dAtA[i:]) + n205, err := m.ConfigMap.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n200 + i += n205 } if m.VsphereVolume != nil { dAtA[i] = 0xa2 @@ -9020,11 +9313,11 @@ func (m *VolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.VsphereVolume.Size())) - n201, err := m.VsphereVolume.MarshalTo(dAtA[i:]) + n206, err := m.VsphereVolume.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n201 + i += n206 } if m.Quobyte != nil { dAtA[i] = 0xaa @@ -9032,11 +9325,11 @@ func (m *VolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Quobyte.Size())) - n202, err := m.Quobyte.MarshalTo(dAtA[i:]) + n207, err := m.Quobyte.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n202 + i += n207 } if m.AzureDisk != nil { dAtA[i] = 0xb2 @@ -9044,11 +9337,11 @@ func (m *VolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.AzureDisk.Size())) - n203, err := m.AzureDisk.MarshalTo(dAtA[i:]) + n208, err := m.AzureDisk.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n203 + i += n208 } if m.PhotonPersistentDisk != nil { dAtA[i] = 0xba @@ -9056,11 +9349,11 @@ func (m *VolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.PhotonPersistentDisk.Size())) - n204, err := m.PhotonPersistentDisk.MarshalTo(dAtA[i:]) + n209, err := m.PhotonPersistentDisk.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n204 + i += n209 } if m.PortworxVolume != nil { dAtA[i] = 0xc2 @@ -9068,11 +9361,11 @@ func (m *VolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.PortworxVolume.Size())) - n205, err := m.PortworxVolume.MarshalTo(dAtA[i:]) + n210, err := m.PortworxVolume.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n205 + i += n210 } if m.ScaleIO != nil { dAtA[i] = 0xca @@ -9080,11 +9373,11 @@ func (m *VolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ScaleIO.Size())) - n206, err := m.ScaleIO.MarshalTo(dAtA[i:]) + n211, err := m.ScaleIO.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n206 + i += n211 } if m.Projected != nil { dAtA[i] = 0xd2 @@ -9092,11 +9385,23 @@ func (m *VolumeSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Projected.Size())) - n207, err := m.Projected.MarshalTo(dAtA[i:]) + n212, err := m.Projected.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n207 + i += n212 + } + if m.StorageOS != nil { + dAtA[i] = 0xda + i++ + dAtA[i] = 0x1 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.StorageOS.Size())) + n213, err := m.StorageOS.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n213 } return i, nil } @@ -9124,6 +9429,14 @@ func (m *VsphereVirtualDiskVolumeSource) MarshalTo(dAtA []byte) (int, error) { i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.FSType))) i += copy(dAtA[i:], m.FSType) + dAtA[i] = 0x1a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.StoragePolicyName))) + i += copy(dAtA[i:], m.StoragePolicyName) + dAtA[i] = 0x22 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.StoragePolicyID))) + i += copy(dAtA[i:], m.StoragePolicyID) return i, nil } @@ -9148,11 +9461,11 @@ func (m *WeightedPodAffinityTerm) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.PodAffinityTerm.Size())) - n208, err := m.PodAffinityTerm.MarshalTo(dAtA[i:]) + n214, err := m.PodAffinityTerm.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n208 + i += n214 return i, nil } @@ -9720,6 +10033,8 @@ func (m *EmptyDirVolumeSource) Size() (n int) { _ = l l = len(m.Medium) n += 1 + l + sovGenerated(uint64(l)) + l = m.SizeLimit.Size() + n += 1 + l + sovGenerated(uint64(l)) return n } @@ -10276,6 +10591,14 @@ func (m *LocalObjectReference) Size() (n int) { return n } +func (m *LocalVolumeSource) Size() (n int) { + var l int + _ = l + l = len(m.Path) + n += 1 + l + sovGenerated(uint64(l)) + return n +} + func (m *NFSVolumeSource) Size() (n int) { var l int _ = l @@ -10858,6 +11181,14 @@ func (m *PersistentVolumeSource) Size() (n int) { l = m.ScaleIO.Size() n += 2 + l + sovGenerated(uint64(l)) } + if m.Local != nil { + l = m.Local.Size() + n += 2 + l + sovGenerated(uint64(l)) + } + if m.StorageOS != nil { + l = m.StorageOS.Size() + n += 2 + l + sovGenerated(uint64(l)) + } return n } @@ -11922,6 +12253,40 @@ func (m *ServiceStatus) Size() (n int) { return n } +func (m *StorageOSPersistentVolumeSource) Size() (n int) { + var l int + _ = l + l = len(m.VolumeName) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.VolumeNamespace) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.FSType) + n += 1 + l + sovGenerated(uint64(l)) + n += 2 + if m.SecretRef != nil { + l = m.SecretRef.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + return n +} + +func (m *StorageOSVolumeSource) Size() (n int) { + var l int + _ = l + l = len(m.VolumeName) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.VolumeNamespace) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.FSType) + n += 1 + l + sovGenerated(uint64(l)) + n += 2 + if m.SecretRef != nil { + l = m.SecretRef.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + return n +} + func (m *Sysctl) Size() (n int) { var l int _ = l @@ -12121,6 +12486,10 @@ func (m *VolumeSource) Size() (n int) { l = m.Projected.Size() n += 2 + l + sovGenerated(uint64(l)) } + if m.StorageOS != nil { + l = m.StorageOS.Size() + n += 2 + l + sovGenerated(uint64(l)) + } return n } @@ -12131,6 +12500,10 @@ func (m *VsphereVirtualDiskVolumeSource) Size() (n int) { n += 1 + l + sovGenerated(uint64(l)) l = len(m.FSType) n += 1 + l + sovGenerated(uint64(l)) + l = len(m.StoragePolicyName) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.StoragePolicyID) + n += 1 + l + sovGenerated(uint64(l)) return n } @@ -12576,6 +12949,7 @@ func (this *EmptyDirVolumeSource) String() string { } s := strings.Join([]string{`&EmptyDirVolumeSource{`, `Medium:` + fmt.Sprintf("%v", this.Medium) + `,`, + `SizeLimit:` + strings.Replace(strings.Replace(this.SizeLimit.String(), "Quantity", "k8s_io_apimachinery_pkg_api_resource.Quantity", 1), `&`, ``, 1) + `,`, `}`, }, "") return s @@ -13065,6 +13439,16 @@ func (this *LocalObjectReference) String() string { }, "") return s } +func (this *LocalVolumeSource) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&LocalVolumeSource{`, + `Path:` + fmt.Sprintf("%v", this.Path) + `,`, + `}`, + }, "") + return s +} func (this *NFSVolumeSource) String() string { if this == nil { return "nil" @@ -13513,6 +13897,8 @@ func (this *PersistentVolumeSource) String() string { `PhotonPersistentDisk:` + strings.Replace(fmt.Sprintf("%v", this.PhotonPersistentDisk), "PhotonPersistentDiskVolumeSource", "PhotonPersistentDiskVolumeSource", 1) + `,`, `PortworxVolume:` + strings.Replace(fmt.Sprintf("%v", this.PortworxVolume), "PortworxVolumeSource", "PortworxVolumeSource", 1) + `,`, `ScaleIO:` + strings.Replace(fmt.Sprintf("%v", this.ScaleIO), "ScaleIOVolumeSource", "ScaleIOVolumeSource", 1) + `,`, + `Local:` + strings.Replace(fmt.Sprintf("%v", this.Local), "LocalVolumeSource", "LocalVolumeSource", 1) + `,`, + `StorageOS:` + strings.Replace(fmt.Sprintf("%v", this.StorageOS), "StorageOSPersistentVolumeSource", "StorageOSPersistentVolumeSource", 1) + `,`, `}`, }, "") return s @@ -14400,6 +14786,34 @@ func (this *ServiceStatus) String() string { }, "") return s } +func (this *StorageOSPersistentVolumeSource) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&StorageOSPersistentVolumeSource{`, + `VolumeName:` + fmt.Sprintf("%v", this.VolumeName) + `,`, + `VolumeNamespace:` + fmt.Sprintf("%v", this.VolumeNamespace) + `,`, + `FSType:` + fmt.Sprintf("%v", this.FSType) + `,`, + `ReadOnly:` + fmt.Sprintf("%v", this.ReadOnly) + `,`, + `SecretRef:` + strings.Replace(fmt.Sprintf("%v", this.SecretRef), "ObjectReference", "ObjectReference", 1) + `,`, + `}`, + }, "") + return s +} +func (this *StorageOSVolumeSource) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&StorageOSVolumeSource{`, + `VolumeName:` + fmt.Sprintf("%v", this.VolumeName) + `,`, + `VolumeNamespace:` + fmt.Sprintf("%v", this.VolumeNamespace) + `,`, + `FSType:` + fmt.Sprintf("%v", this.FSType) + `,`, + `ReadOnly:` + fmt.Sprintf("%v", this.ReadOnly) + `,`, + `SecretRef:` + strings.Replace(fmt.Sprintf("%v", this.SecretRef), "LocalObjectReference", "LocalObjectReference", 1) + `,`, + `}`, + }, "") + return s +} func (this *Sysctl) String() string { if this == nil { return "nil" @@ -14516,6 +14930,7 @@ func (this *VolumeSource) String() string { `PortworxVolume:` + strings.Replace(fmt.Sprintf("%v", this.PortworxVolume), "PortworxVolumeSource", "PortworxVolumeSource", 1) + `,`, `ScaleIO:` + strings.Replace(fmt.Sprintf("%v", this.ScaleIO), "ScaleIOVolumeSource", "ScaleIOVolumeSource", 1) + `,`, `Projected:` + strings.Replace(fmt.Sprintf("%v", this.Projected), "ProjectedVolumeSource", "ProjectedVolumeSource", 1) + `,`, + `StorageOS:` + strings.Replace(fmt.Sprintf("%v", this.StorageOS), "StorageOSVolumeSource", "StorageOSVolumeSource", 1) + `,`, `}`, }, "") return s @@ -14527,6 +14942,8 @@ func (this *VsphereVirtualDiskVolumeSource) String() string { s := strings.Join([]string{`&VsphereVirtualDiskVolumeSource{`, `VolumePath:` + fmt.Sprintf("%v", this.VolumePath) + `,`, `FSType:` + fmt.Sprintf("%v", this.FSType) + `,`, + `StoragePolicyName:` + fmt.Sprintf("%v", this.StoragePolicyName) + `,`, + `StoragePolicyID:` + fmt.Sprintf("%v", this.StoragePolicyID) + `,`, `}`, }, "") return s @@ -19523,6 +19940,36 @@ func (m *EmptyDirVolumeSource) Unmarshal(dAtA []byte) error { } m.Medium = StorageMedium(dAtA[iNdEx:postIndex]) iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SizeLimit", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.SizeLimit.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipGenerated(dAtA[iNdEx:]) @@ -24979,6 +25426,85 @@ func (m *LocalObjectReference) Unmarshal(dAtA []byte) error { } return nil } +func (m *LocalVolumeSource) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: LocalVolumeSource: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: LocalVolumeSource: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Path", 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.Path = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func (m *NFSVolumeSource) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 @@ -30634,6 +31160,72 @@ func (m *PersistentVolumeSource) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 20: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Local", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Local == nil { + m.Local = &LocalVolumeSource{} + } + if err := m.Local.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 21: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field StorageOS", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.StorageOS == nil { + m.StorageOS = &StorageOSPersistentVolumeSource{} + } + if err := m.StorageOS.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipGenerated(dAtA[iNdEx:]) @@ -41118,6 +41710,386 @@ func (m *ServiceStatus) Unmarshal(dAtA []byte) error { } return nil } +func (m *StorageOSPersistentVolumeSource) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: StorageOSPersistentVolumeSource: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: StorageOSPersistentVolumeSource: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field VolumeName", 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.VolumeName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field VolumeNamespace", 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.VolumeNamespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field FSType", 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.FSType = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field ReadOnly", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + m.ReadOnly = bool(v != 0) + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SecretRef", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SecretRef == nil { + m.SecretRef = &ObjectReference{} + } + if err := m.SecretRef.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *StorageOSVolumeSource) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: StorageOSVolumeSource: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: StorageOSVolumeSource: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field VolumeName", 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.VolumeName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field VolumeNamespace", 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.VolumeNamespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field FSType", 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.FSType = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field ReadOnly", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + m.ReadOnly = bool(v != 0) + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SecretRef", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.SecretRef == nil { + m.SecretRef = &LocalObjectReference{} + } + if err := m.SecretRef.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func (m *Sysctl) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 @@ -42990,6 +43962,39 @@ func (m *VolumeSource) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 27: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field StorageOS", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.StorageOS == nil { + m.StorageOS = &StorageOSVolumeSource{} + } + if err := m.StorageOS.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipGenerated(dAtA[iNdEx:]) @@ -43098,6 +44103,64 @@ func (m *VsphereVirtualDiskVolumeSource) Unmarshal(dAtA []byte) error { } m.FSType = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field StoragePolicyName", 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.StoragePolicyName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field StoragePolicyID", 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.StoragePolicyID = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipGenerated(dAtA[iNdEx:]) @@ -43328,711 +44391,722 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 11285 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0xbd, 0x7d, 0x8c, 0x24, 0xc7, - 0x75, 0x18, 0xae, 0x9e, 0xd9, 0xaf, 0x79, 0xfb, 0x5d, 0xb7, 0x77, 0x5c, 0xae, 0xc8, 0xdb, 0x63, - 0x53, 0xa4, 0x8f, 0xe4, 0x71, 0x4f, 0x77, 0x24, 0xc5, 0x93, 0xa8, 0x1f, 0xad, 0xdd, 0x9d, 0xdd, - 0xbb, 0xd5, 0x7d, 0x0d, 0x6b, 0xf6, 0xee, 0x28, 0x8a, 0x3f, 0x91, 0x7d, 0xd3, 0xb5, 0xb3, 0xcd, - 0x9b, 0xed, 0x1e, 0x76, 0xf7, 0xec, 0xdd, 0x4a, 0x11, 0x60, 0x2b, 0x82, 0xe4, 0x00, 0x4a, 0xa2, - 0xc0, 0x11, 0x10, 0x38, 0x01, 0x14, 0x18, 0x88, 0xa3, 0x7c, 0x3a, 0x8a, 0xa0, 0x0f, 0xc3, 0x72, - 0x82, 0x38, 0x96, 0x23, 0x03, 0x89, 0x63, 0xc0, 0x88, 0xed, 0xc0, 0xf0, 0xda, 0x5a, 0x21, 0xfe, - 0x23, 0x40, 0x82, 0x20, 0xf9, 0x6f, 0xf3, 0x81, 0xa0, 0x3e, 0xbb, 0xaa, 0xa7, 0x67, 0xbb, 0x67, - 0x79, 0xbb, 0xa6, 0x84, 0xfc, 0x37, 0x53, 0xef, 0xd5, 0xab, 0x8f, 0xae, 0x7a, 0xf5, 0xde, 0xab, - 0xf7, 0x5e, 0xc1, 0xb9, 0x7b, 0x97, 0xa2, 0x05, 0x2f, 0x38, 0x7f, 0xaf, 0x73, 0x97, 0x84, 0x3e, - 0x89, 0x49, 0x74, 0xbe, 0x7d, 0xaf, 0x79, 0xde, 0x69, 0x7b, 0xe7, 0xb7, 0x2f, 0x9c, 0x6f, 0x12, - 0x9f, 0x84, 0x4e, 0x4c, 0xdc, 0x85, 0x76, 0x18, 0xc4, 0x01, 0x7a, 0x8c, 0x63, 0x2f, 0x24, 0xd8, - 0x0b, 0xed, 0x7b, 0xcd, 0x05, 0xa7, 0xed, 0x2d, 0x6c, 0x5f, 0x98, 0x7b, 0xbe, 0xe9, 0xc5, 0x9b, - 0x9d, 0xbb, 0x0b, 0x8d, 0x60, 0xeb, 0x7c, 0x33, 0x68, 0x06, 0xe7, 0x59, 0xa5, 0xbb, 0x9d, 0x0d, - 0xf6, 0x8f, 0xfd, 0x61, 0xbf, 0x38, 0xb1, 0xb9, 0x17, 0x45, 0xd3, 0x4e, 0xdb, 0xdb, 0x72, 0x1a, - 0x9b, 0x9e, 0x4f, 0xc2, 0x1d, 0xd5, 0x78, 0x48, 0xa2, 0xa0, 0x13, 0x36, 0x48, 0xba, 0x0b, 0x07, - 0xd6, 0x8a, 0xce, 0x6f, 0x91, 0xd8, 0xc9, 0xe8, 0xf8, 0xdc, 0xf9, 0x5e, 0xb5, 0xc2, 0x8e, 0x1f, - 0x7b, 0x5b, 0xdd, 0xcd, 0x7c, 0x24, 0xaf, 0x42, 0xd4, 0xd8, 0x24, 0x5b, 0x4e, 0x57, 0xbd, 0x17, - 0x7a, 0xd5, 0xeb, 0xc4, 0x5e, 0xeb, 0xbc, 0xe7, 0xc7, 0x51, 0x1c, 0x1e, 0x34, 0xa6, 0x88, 0x84, - 0xdb, 0x24, 0x4c, 0x06, 0x44, 0x1e, 0x38, 0x5b, 0xed, 0x16, 0xc9, 0x18, 0x93, 0xfd, 0x87, 0x16, - 0x9c, 0x59, 0xbc, 0x53, 0x5f, 0x69, 0x39, 0x51, 0xec, 0x35, 0x96, 0x5a, 0x41, 0xe3, 0x5e, 0x3d, - 0x0e, 0x42, 0x72, 0x3b, 0x68, 0x75, 0xb6, 0x48, 0x9d, 0x4d, 0x1f, 0x3a, 0x07, 0x23, 0xdb, 0xec, - 0xff, 0x5a, 0x75, 0xd6, 0x3a, 0x63, 0x9d, 0xad, 0x2c, 0x4d, 0xfd, 0x70, 0x77, 0xfe, 0x03, 0x7b, - 0xbb, 0xf3, 0x23, 0xb7, 0x45, 0x39, 0x56, 0x18, 0xe8, 0x69, 0x18, 0xda, 0x88, 0xd6, 0x77, 0xda, - 0x64, 0xb6, 0xc4, 0x70, 0x27, 0x04, 0xee, 0xd0, 0x6a, 0x9d, 0x96, 0x62, 0x01, 0x45, 0xe7, 0xa1, - 0xd2, 0x76, 0xc2, 0xd8, 0x8b, 0xbd, 0xc0, 0x9f, 0x2d, 0x9f, 0xb1, 0xce, 0x0e, 0x2e, 0x4d, 0x0b, - 0xd4, 0x4a, 0x4d, 0x02, 0x70, 0x82, 0x43, 0xbb, 0x11, 0x12, 0xc7, 0xbd, 0xe9, 0xb7, 0x76, 0x66, - 0x07, 0xce, 0x58, 0x67, 0x47, 0x92, 0x6e, 0x60, 0x51, 0x8e, 0x15, 0x86, 0xfd, 0xbd, 0x12, 0x8c, - 0x2c, 0x6e, 0x6c, 0x78, 0xbe, 0x17, 0xef, 0xa0, 0xb7, 0x61, 0xcc, 0x0f, 0x5c, 0x22, 0xff, 0xb3, - 0x51, 0x8c, 0x5e, 0x7c, 0x76, 0xe1, 0xa0, 0xa5, 0xb8, 0x70, 0x43, 0xab, 0xb1, 0x34, 0xb5, 0xb7, - 0x3b, 0x3f, 0xa6, 0x97, 0x60, 0x83, 0x22, 0x7a, 0x13, 0x46, 0xdb, 0x81, 0xab, 0x1a, 0x28, 0xb1, - 0x06, 0x9e, 0x39, 0xb8, 0x81, 0x5a, 0x52, 0x61, 0x69, 0x72, 0x6f, 0x77, 0x7e, 0x54, 0x2b, 0xc0, - 0x3a, 0x39, 0xd4, 0x82, 0x49, 0xfa, 0xd7, 0x8f, 0x3d, 0xd5, 0x42, 0x99, 0xb5, 0xf0, 0x7c, 0x7e, - 0x0b, 0x5a, 0xa5, 0xa5, 0x13, 0x7b, 0xbb, 0xf3, 0x93, 0xa9, 0x42, 0x9c, 0x26, 0x6d, 0x7f, 0x16, - 0x26, 0x16, 0xe3, 0xd8, 0x69, 0x6c, 0x12, 0x97, 0x7f, 0x5f, 0xf4, 0x22, 0x0c, 0xf8, 0xce, 0x16, - 0x11, 0x5f, 0xff, 0x8c, 0x98, 0xf6, 0x81, 0x1b, 0xce, 0x16, 0xd9, 0xdf, 0x9d, 0x9f, 0xba, 0xe5, - 0x7b, 0xef, 0x76, 0xc4, 0x9a, 0xa1, 0x65, 0x98, 0x61, 0xa3, 0x8b, 0x00, 0x2e, 0xd9, 0xf6, 0x1a, - 0xa4, 0xe6, 0xc4, 0x9b, 0x62, 0x35, 0x20, 0x51, 0x17, 0xaa, 0x0a, 0x82, 0x35, 0x2c, 0xfb, 0x0b, - 0x16, 0x54, 0x16, 0xb7, 0x03, 0xcf, 0xad, 0x05, 0x6e, 0x84, 0x3a, 0x30, 0xd9, 0x0e, 0xc9, 0x06, - 0x09, 0x55, 0xd1, 0xac, 0x75, 0xa6, 0x7c, 0x76, 0xf4, 0xe2, 0xc5, 0x9c, 0x71, 0x9b, 0x95, 0x56, - 0xfc, 0x38, 0xdc, 0x59, 0x7a, 0x44, 0x34, 0x3d, 0x99, 0x82, 0xe2, 0x74, 0x1b, 0xf6, 0x6f, 0x95, - 0xe0, 0xe4, 0xe2, 0x67, 0x3b, 0x21, 0xa9, 0x7a, 0xd1, 0xbd, 0xf4, 0x56, 0x70, 0xbd, 0xe8, 0xde, - 0x8d, 0x64, 0x32, 0xd4, 0x1a, 0xac, 0x8a, 0x72, 0xac, 0x30, 0xd0, 0xf3, 0x30, 0x4c, 0x7f, 0xdf, - 0xc2, 0x6b, 0x62, 0xf4, 0x27, 0x04, 0xf2, 0x68, 0xd5, 0x89, 0x9d, 0x2a, 0x07, 0x61, 0x89, 0x83, - 0xae, 0xc3, 0x68, 0x83, 0xed, 0xf7, 0xe6, 0xf5, 0xc0, 0x25, 0xec, 0x0b, 0x57, 0x96, 0x9e, 0xa3, - 0xe8, 0xcb, 0x49, 0xf1, 0xfe, 0xee, 0xfc, 0x2c, 0xef, 0x9b, 0x20, 0xa1, 0xc1, 0xb0, 0x5e, 0x1f, - 0xd9, 0x6a, 0x23, 0x0e, 0x30, 0x4a, 0x90, 0xb1, 0x09, 0xcf, 0x6a, 0x7b, 0x6a, 0x90, 0xed, 0xa9, - 0xb1, 0xec, 0xfd, 0x84, 0x2e, 0xc0, 0xc0, 0x3d, 0xcf, 0x77, 0x67, 0x87, 0x18, 0xad, 0xc7, 0xe9, - 0xe7, 0xbf, 0xea, 0xf9, 0xee, 0xfe, 0xee, 0xfc, 0xb4, 0xd1, 0x1d, 0x5a, 0x88, 0x19, 0xaa, 0xfd, - 0x0f, 0x2d, 0x31, 0x8d, 0xab, 0x5e, 0xcb, 0xe4, 0x28, 0x17, 0x01, 0x22, 0xd2, 0x08, 0x49, 0xac, - 0x4d, 0xa4, 0x5a, 0x19, 0x75, 0x05, 0xc1, 0x1a, 0x16, 0xe5, 0x17, 0xd1, 0xa6, 0x13, 0xb2, 0x05, - 0x26, 0xa6, 0x53, 0xf1, 0x8b, 0xba, 0x04, 0xe0, 0x04, 0xc7, 0xe0, 0x17, 0xe5, 0x5c, 0x7e, 0xf1, - 0x9b, 0x16, 0x0c, 0x2f, 0x79, 0xbe, 0xeb, 0xf9, 0x4d, 0xf4, 0x36, 0x8c, 0xd0, 0x43, 0xc0, 0x75, - 0x62, 0x47, 0xb0, 0x8a, 0x0f, 0xcb, 0xf5, 0xa6, 0xf3, 0x64, 0xb9, 0xe2, 0xa2, 0x05, 0x8a, 0x4d, - 0xd7, 0xdd, 0xcd, 0xbb, 0xef, 0x90, 0x46, 0x7c, 0x9d, 0xc4, 0x4e, 0x32, 0x9c, 0xa4, 0x0c, 0x2b, - 0xaa, 0xe8, 0x16, 0x0c, 0xc5, 0x4e, 0xd8, 0x24, 0xb1, 0xe0, 0x14, 0x39, 0xfb, 0x98, 0xd3, 0xc0, - 0x74, 0x95, 0x12, 0xbf, 0x41, 0x12, 0x9e, 0xba, 0xce, 0x88, 0x60, 0x41, 0xcc, 0x6e, 0xc0, 0xd8, - 0xb2, 0xd3, 0x76, 0xee, 0x7a, 0x2d, 0x2f, 0xf6, 0x48, 0x84, 0x7e, 0x06, 0xca, 0x8e, 0xeb, 0xb2, - 0x3d, 0x53, 0x59, 0x3a, 0xb9, 0xb7, 0x3b, 0x5f, 0x5e, 0x74, 0xe9, 0x27, 0x03, 0x85, 0xb5, 0x83, - 0x29, 0x06, 0x7a, 0x16, 0x06, 0xdc, 0x30, 0x68, 0xcf, 0x96, 0x18, 0xe6, 0x29, 0xfa, 0x75, 0xab, - 0x61, 0xd0, 0x4e, 0xa1, 0x32, 0x1c, 0xfb, 0x07, 0x25, 0x40, 0xcb, 0xa4, 0xbd, 0xb9, 0x5a, 0x37, - 0xbe, 0xe9, 0x59, 0x18, 0xd9, 0x0a, 0x7c, 0x2f, 0x0e, 0xc2, 0x48, 0x34, 0xc8, 0x96, 0xd2, 0x75, - 0x51, 0x86, 0x15, 0x14, 0x9d, 0x81, 0x81, 0x76, 0xc2, 0x11, 0xc6, 0x24, 0x37, 0x61, 0xbc, 0x80, - 0x41, 0x28, 0x46, 0x27, 0x22, 0xa1, 0xd8, 0x02, 0x0a, 0xe3, 0x56, 0x44, 0x42, 0xcc, 0x20, 0xc9, - 0x0a, 0xa2, 0x6b, 0x4b, 0x2c, 0xf0, 0xd4, 0x0a, 0xa2, 0x10, 0xac, 0x61, 0xa1, 0xb7, 0xa0, 0xc2, - 0xff, 0x61, 0xb2, 0xc1, 0x56, 0x7b, 0x2e, 0x1f, 0xb9, 0x16, 0x34, 0x9c, 0x56, 0x7a, 0xf2, 0xc7, - 0xd9, 0x8a, 0x93, 0x84, 0x70, 0x42, 0xd3, 0x58, 0x71, 0x43, 0xb9, 0x2b, 0xee, 0x6f, 0x59, 0x80, - 0x96, 0x3d, 0xdf, 0x25, 0xe1, 0x31, 0x9c, 0xb6, 0xfd, 0x6d, 0x86, 0x3f, 0xa6, 0x5d, 0x0b, 0xb6, - 0xda, 0x81, 0x4f, 0xfc, 0x78, 0x39, 0xf0, 0x5d, 0x7e, 0x02, 0x7f, 0x0c, 0x06, 0x62, 0xda, 0x14, - 0xef, 0xd6, 0xd3, 0xf2, 0xb3, 0xd0, 0x06, 0xf6, 0x77, 0xe7, 0x4f, 0x75, 0xd7, 0x60, 0x5d, 0x60, - 0x75, 0xd0, 0x47, 0x61, 0x28, 0x8a, 0x9d, 0xb8, 0x13, 0x89, 0x8e, 0x3e, 0x21, 0x3b, 0x5a, 0x67, - 0xa5, 0xfb, 0xbb, 0xf3, 0x93, 0xaa, 0x1a, 0x2f, 0xc2, 0xa2, 0x02, 0x7a, 0x06, 0x86, 0xb7, 0x48, - 0x14, 0x39, 0x4d, 0xc9, 0x13, 0x27, 0x45, 0xdd, 0xe1, 0xeb, 0xbc, 0x18, 0x4b, 0x38, 0x7a, 0x12, - 0x06, 0x49, 0x18, 0x06, 0xa1, 0x58, 0x11, 0xe3, 0x02, 0x71, 0x70, 0x85, 0x16, 0x62, 0x0e, 0xb3, - 0xff, 0xa3, 0x05, 0x93, 0xaa, 0xaf, 0xbc, 0xad, 0x63, 0xd8, 0xf2, 0x2e, 0x40, 0x43, 0x0e, 0x30, - 0x62, 0x1b, 0x4d, 0x6b, 0x23, 0x7b, 0xf9, 0x75, 0x4f, 0x68, 0xd2, 0x86, 0x2a, 0x8a, 0xb0, 0x46, - 0xd7, 0xfe, 0x37, 0x16, 0x9c, 0x48, 0x8d, 0xed, 0x9a, 0x17, 0xc5, 0xe8, 0xcd, 0xae, 0xf1, 0x2d, - 0x14, 0x1b, 0x1f, 0xad, 0xcd, 0x46, 0xa7, 0xd6, 0x8b, 0x2c, 0xd1, 0xc6, 0x86, 0x61, 0xd0, 0x8b, - 0xc9, 0x96, 0x1c, 0xd6, 0xf3, 0x05, 0x87, 0xc5, 0xfb, 0x97, 0x7c, 0xa5, 0x35, 0x4a, 0x03, 0x73, - 0x52, 0xf6, 0xff, 0xb4, 0xa0, 0xb2, 0x1c, 0xf8, 0x1b, 0x5e, 0xf3, 0xba, 0xd3, 0x3e, 0x86, 0xef, - 0x53, 0x87, 0x01, 0x46, 0x9d, 0x0f, 0xe1, 0x42, 0xde, 0x10, 0x44, 0xc7, 0x16, 0xe8, 0xb9, 0xc7, - 0xe5, 0x0b, 0xc5, 0xa6, 0x68, 0x11, 0x66, 0xc4, 0xe6, 0x5e, 0x86, 0x8a, 0x42, 0x40, 0x53, 0x50, - 0xbe, 0x47, 0xb8, 0xf0, 0x59, 0xc1, 0xf4, 0x27, 0x9a, 0x81, 0xc1, 0x6d, 0xa7, 0xd5, 0x11, 0x9b, - 0x17, 0xf3, 0x3f, 0x1f, 0x2b, 0x5d, 0xb2, 0xec, 0x1f, 0xb0, 0x1d, 0x28, 0x1a, 0x59, 0xf1, 0xb7, - 0x05, 0x73, 0xf8, 0xa2, 0x05, 0x33, 0xad, 0x0c, 0xa6, 0x24, 0xe6, 0xe4, 0x30, 0xec, 0xec, 0x31, - 0xd1, 0xed, 0x99, 0x2c, 0x28, 0xce, 0x6c, 0x8d, 0xf2, 0xfa, 0xa0, 0x4d, 0x17, 0x9c, 0xd3, 0x62, - 0x5d, 0x17, 0x62, 0xc3, 0x4d, 0x51, 0x86, 0x15, 0xd4, 0xfe, 0x73, 0x0b, 0x66, 0xd4, 0x38, 0xae, - 0x92, 0x9d, 0x3a, 0x69, 0x91, 0x46, 0x1c, 0x84, 0xef, 0x97, 0x91, 0x3c, 0xce, 0xbf, 0x09, 0xe7, - 0x49, 0xa3, 0x82, 0x40, 0xf9, 0x2a, 0xd9, 0xe1, 0x1f, 0x48, 0x1f, 0x68, 0xf9, 0xc0, 0x81, 0xfe, - 0xba, 0x05, 0xe3, 0x6a, 0xa0, 0xc7, 0xb0, 0xe5, 0xae, 0x99, 0x5b, 0xee, 0x67, 0x0a, 0xae, 0xd7, - 0x1e, 0x9b, 0xed, 0x6f, 0x96, 0x28, 0xdb, 0x10, 0x38, 0xb5, 0x30, 0xa0, 0x93, 0x44, 0x39, 0xfe, - 0xfb, 0xe4, 0x2b, 0xf5, 0x37, 0xd8, 0xab, 0x64, 0x67, 0x3d, 0xa0, 0xd2, 0x44, 0xf6, 0x60, 0x8d, - 0x8f, 0x3a, 0x70, 0xe0, 0x47, 0xfd, 0x9d, 0x12, 0x9c, 0x54, 0xd3, 0x62, 0x9c, 0xd2, 0x3f, 0x95, - 0x13, 0x73, 0x01, 0x46, 0x5d, 0xb2, 0xe1, 0x74, 0x5a, 0xb1, 0x52, 0x40, 0x06, 0xb9, 0x66, 0x5a, - 0x4d, 0x8a, 0xb1, 0x8e, 0xd3, 0xc7, 0x5c, 0x7e, 0x7d, 0x94, 0xf1, 0xf3, 0xd8, 0xa1, 0xab, 0x9e, - 0x4a, 0x78, 0x9a, 0x46, 0x39, 0xa6, 0x6b, 0x94, 0x42, 0x7b, 0x7c, 0x12, 0x06, 0xbd, 0x2d, 0x7a, - 0xe6, 0x97, 0xcc, 0xa3, 0x7c, 0x8d, 0x16, 0x62, 0x0e, 0x43, 0x4f, 0xc1, 0x70, 0x23, 0xd8, 0xda, - 0x72, 0x7c, 0x77, 0xb6, 0xcc, 0x64, 0xce, 0x51, 0x2a, 0x16, 0x2c, 0xf3, 0x22, 0x2c, 0x61, 0xe8, - 0x31, 0x18, 0x70, 0xc2, 0x66, 0x34, 0x3b, 0xc0, 0x70, 0x46, 0x68, 0x4b, 0x8b, 0x61, 0x33, 0xc2, - 0xac, 0x94, 0xca, 0x92, 0xf7, 0x83, 0xf0, 0x9e, 0xe7, 0x37, 0xab, 0x5e, 0xc8, 0x04, 0x43, 0x4d, - 0x96, 0xbc, 0xa3, 0x20, 0x58, 0xc3, 0x42, 0x35, 0x18, 0x6c, 0x07, 0x61, 0x1c, 0xcd, 0x0e, 0xb1, - 0x89, 0x7f, 0x2e, 0x77, 0xfb, 0xf1, 0x71, 0xd7, 0x82, 0x30, 0x4e, 0x86, 0x42, 0xff, 0x45, 0x98, - 0x13, 0x42, 0xcb, 0x50, 0x26, 0xfe, 0xf6, 0xec, 0x30, 0xa3, 0xf7, 0xa1, 0x83, 0xe9, 0xad, 0xf8, - 0xdb, 0xb7, 0x9d, 0x30, 0xe1, 0x57, 0x2b, 0xfe, 0x36, 0xa6, 0xb5, 0x51, 0x03, 0x2a, 0xd2, 0xea, - 0x15, 0xcd, 0x8e, 0x14, 0x59, 0x8a, 0x58, 0xa0, 0x63, 0xf2, 0x6e, 0xc7, 0x0b, 0xc9, 0x16, 0xf1, - 0xe3, 0x28, 0x51, 0xac, 0x24, 0x34, 0xc2, 0x09, 0x5d, 0xd4, 0x80, 0x31, 0x2e, 0x7f, 0x5e, 0x0f, - 0x3a, 0x7e, 0x1c, 0xcd, 0x56, 0x58, 0x97, 0x73, 0x8c, 0x1d, 0xb7, 0x93, 0x1a, 0x4b, 0x33, 0x82, - 0xfc, 0x98, 0x56, 0x18, 0x61, 0x83, 0x28, 0x7a, 0x13, 0xc6, 0x5b, 0xde, 0x36, 0xf1, 0x49, 0x14, - 0xd5, 0xc2, 0xe0, 0x2e, 0x99, 0x05, 0x36, 0x9a, 0x27, 0xf3, 0x14, 0xff, 0xe0, 0x2e, 0x59, 0x9a, - 0xde, 0xdb, 0x9d, 0x1f, 0xbf, 0xa6, 0xd7, 0xc6, 0x26, 0x31, 0xf4, 0x16, 0x4c, 0x50, 0x61, 0xd7, - 0x4b, 0xc8, 0x8f, 0x16, 0x27, 0x8f, 0xf6, 0x76, 0xe7, 0x27, 0xb0, 0x51, 0x1d, 0xa7, 0xc8, 0xa1, - 0x75, 0xa8, 0xb4, 0xbc, 0x0d, 0xd2, 0xd8, 0x69, 0xb4, 0xc8, 0xec, 0x18, 0xa3, 0x9d, 0xb3, 0x39, - 0xaf, 0x49, 0x74, 0xae, 0x60, 0xa8, 0xbf, 0x38, 0x21, 0x84, 0x6e, 0xc3, 0xa9, 0x98, 0x84, 0x5b, - 0x9e, 0xef, 0xd0, 0x4d, 0x25, 0xa4, 0x5f, 0x66, 0x5d, 0x19, 0x67, 0xab, 0xf6, 0xb4, 0x98, 0xd8, - 0x53, 0xeb, 0x99, 0x58, 0xb8, 0x47, 0x6d, 0x74, 0x13, 0x26, 0xd9, 0x7e, 0xaa, 0x75, 0x5a, 0xad, - 0x5a, 0xd0, 0xf2, 0x1a, 0x3b, 0xb3, 0x13, 0x8c, 0xe0, 0x53, 0xd2, 0x66, 0xb2, 0x66, 0x82, 0xa9, - 0x62, 0x98, 0xfc, 0xc3, 0xe9, 0xda, 0xa8, 0x05, 0x93, 0x11, 0x69, 0x74, 0x42, 0x2f, 0xde, 0xa1, - 0x6b, 0x9f, 0x3c, 0x88, 0x67, 0x27, 0x8b, 0x28, 0xba, 0x75, 0xb3, 0x12, 0x37, 0x58, 0xa5, 0x0a, - 0x71, 0x9a, 0x34, 0x65, 0x15, 0x51, 0xec, 0x7a, 0xfe, 0xec, 0x14, 0xe3, 0x40, 0x6a, 0x7f, 0xd5, - 0x69, 0x21, 0xe6, 0x30, 0x66, 0x3f, 0xa0, 0x3f, 0x6e, 0x52, 0x2e, 0x3d, 0xcd, 0x10, 0x13, 0xfb, - 0x81, 0x04, 0xe0, 0x04, 0x87, 0x8a, 0x06, 0x71, 0xbc, 0x33, 0x8b, 0x18, 0xaa, 0xda, 0x6a, 0xeb, - 0xeb, 0x9f, 0xc2, 0xb4, 0x1c, 0xdd, 0x86, 0x61, 0xe2, 0x6f, 0xaf, 0x86, 0xc1, 0xd6, 0xec, 0x89, - 0x22, 0x3c, 0x60, 0x85, 0x23, 0xf3, 0xf3, 0x23, 0x51, 0x61, 0x44, 0x31, 0x96, 0xc4, 0xd0, 0x03, - 0x98, 0xcd, 0xf8, 0x4a, 0xfc, 0xa3, 0xcc, 0xb0, 0x8f, 0xf2, 0x71, 0x51, 0x77, 0x76, 0xbd, 0x07, - 0xde, 0xfe, 0x01, 0x30, 0xdc, 0x93, 0xba, 0x7d, 0x17, 0x26, 0x14, 0xa3, 0x62, 0xdf, 0x1b, 0xcd, - 0xc3, 0x20, 0xe5, 0xc5, 0x52, 0xa1, 0xaf, 0xd0, 0x49, 0xa5, 0x2c, 0x3a, 0xc2, 0xbc, 0x9c, 0x4d, - 0xaa, 0xf7, 0x59, 0xb2, 0xb4, 0x13, 0x13, 0xae, 0xd8, 0x95, 0xb5, 0x49, 0x95, 0x00, 0x9c, 0xe0, - 0xd8, 0xff, 0x87, 0x8b, 0x49, 0x09, 0x37, 0x2c, 0x70, 0x12, 0x9c, 0x83, 0x91, 0xcd, 0x20, 0x8a, - 0x29, 0x36, 0x6b, 0x63, 0x30, 0x11, 0x8c, 0xae, 0x88, 0x72, 0xac, 0x30, 0xd0, 0x2b, 0x30, 0xde, - 0xd0, 0x1b, 0x10, 0xc7, 0xd8, 0x49, 0x51, 0xc5, 0x6c, 0x1d, 0x9b, 0xb8, 0xe8, 0x12, 0x8c, 0x30, - 0xc3, 0x78, 0x23, 0x68, 0x09, 0x15, 0x52, 0x9e, 0xca, 0x23, 0x35, 0x51, 0xbe, 0xaf, 0xfd, 0xc6, - 0x0a, 0x9b, 0x2a, 0xe2, 0xb4, 0x0b, 0x6b, 0x35, 0x71, 0x80, 0x28, 0x45, 0xfc, 0x0a, 0x2b, 0xc5, - 0x02, 0x6a, 0xff, 0xb3, 0x92, 0x36, 0xcb, 0x54, 0x01, 0x22, 0xe8, 0x0d, 0x18, 0xbe, 0xef, 0x78, - 0xb1, 0xe7, 0x37, 0x85, 0xf4, 0xf0, 0x42, 0xc1, 0xd3, 0x84, 0x55, 0xbf, 0xc3, 0xab, 0xf2, 0x93, - 0x4f, 0xfc, 0xc1, 0x92, 0x20, 0xa5, 0x1d, 0x76, 0x7c, 0x9f, 0xd2, 0x2e, 0xf5, 0x4f, 0x1b, 0xf3, - 0xaa, 0x9c, 0xb6, 0xf8, 0x83, 0x25, 0x41, 0xb4, 0x01, 0x20, 0xd7, 0x12, 0x71, 0x85, 0x41, 0xfa, - 0x23, 0xfd, 0x90, 0x5f, 0x57, 0xb5, 0x97, 0x26, 0xe8, 0x59, 0x9b, 0xfc, 0xc7, 0x1a, 0x65, 0x3b, - 0x66, 0x42, 0x58, 0x77, 0xb7, 0xd0, 0xa7, 0xe9, 0x96, 0x76, 0xc2, 0x98, 0xb8, 0x8b, 0x71, 0xda, - 0xa6, 0x7f, 0xb0, 0x88, 0xbd, 0xee, 0x6d, 0x11, 0x7d, 0xfb, 0x0b, 0x22, 0x38, 0xa1, 0x67, 0x7f, - 0xb7, 0x0c, 0xb3, 0xbd, 0xba, 0x4b, 0x97, 0x24, 0x79, 0xe0, 0xc5, 0xcb, 0x54, 0x4c, 0xb2, 0xcc, - 0x25, 0xb9, 0x22, 0xca, 0xb1, 0xc2, 0xa0, 0x6b, 0x23, 0xf2, 0x9a, 0x52, 0x59, 0x1a, 0x4c, 0xd6, - 0x46, 0x9d, 0x95, 0x62, 0x01, 0xa5, 0x78, 0x21, 0x71, 0x22, 0x71, 0x1f, 0xa2, 0xad, 0x21, 0xcc, - 0x4a, 0xb1, 0x80, 0xea, 0x06, 0x91, 0x81, 0x1c, 0x83, 0x88, 0x31, 0x45, 0x83, 0x0f, 0x77, 0x8a, - 0xd0, 0x67, 0x00, 0x36, 0x3c, 0xdf, 0x8b, 0x36, 0x19, 0xf5, 0xa1, 0xbe, 0xa9, 0x2b, 0x21, 0x6b, - 0x55, 0x51, 0xc1, 0x1a, 0x45, 0xf4, 0x12, 0x8c, 0xaa, 0xed, 0xb9, 0x56, 0x9d, 0x1d, 0x36, 0x6d, - 0xe8, 0x09, 0xaf, 0xaa, 0x62, 0x1d, 0xcf, 0x7e, 0x27, 0xbd, 0x5e, 0xc4, 0xae, 0xd0, 0xe6, 0xd7, - 0x2a, 0x3a, 0xbf, 0xa5, 0x83, 0xe7, 0xd7, 0xfe, 0x83, 0x32, 0x4c, 0x1a, 0x8d, 0x75, 0xa2, 0x02, - 0x1c, 0xed, 0x35, 0x7a, 0x60, 0x39, 0x31, 0x11, 0x7b, 0xf2, 0x5c, 0x3f, 0x9b, 0x46, 0x3f, 0xde, - 0xe8, 0x5e, 0xe0, 0x94, 0xd0, 0x26, 0x54, 0x5a, 0x4e, 0xc4, 0x4c, 0x2a, 0x44, 0xec, 0xc5, 0xfe, - 0xc8, 0x26, 0xea, 0x87, 0x13, 0xc5, 0xda, 0xe9, 0xc1, 0x5b, 0x49, 0x88, 0xd3, 0xd3, 0x96, 0x0a, - 0x3b, 0xf2, 0x12, 0x4e, 0x75, 0x87, 0x4a, 0x44, 0x3b, 0x98, 0xc3, 0xd0, 0x25, 0x18, 0x0b, 0x09, - 0x5b, 0x29, 0xcb, 0x54, 0x9e, 0x63, 0x4b, 0x6f, 0x30, 0x11, 0xfc, 0xb0, 0x06, 0xc3, 0x06, 0x66, - 0x22, 0xf7, 0x0f, 0x1d, 0x20, 0xf7, 0x3f, 0x03, 0xc3, 0xec, 0x87, 0x5a, 0x15, 0xea, 0x0b, 0xad, - 0xf1, 0x62, 0x2c, 0xe1, 0xe9, 0x45, 0x34, 0x52, 0x70, 0x11, 0x3d, 0x0b, 0x13, 0x55, 0x87, 0x6c, - 0x05, 0xfe, 0x8a, 0xef, 0xb6, 0x03, 0xcf, 0x8f, 0xd1, 0x2c, 0x0c, 0xb0, 0xf3, 0x84, 0xef, 0xf7, - 0x01, 0x4a, 0x01, 0x0f, 0x50, 0xd9, 0xdd, 0xfe, 0xe3, 0x12, 0x8c, 0x57, 0x49, 0x8b, 0xc4, 0x84, - 0xeb, 0x3d, 0x11, 0x5a, 0x05, 0xd4, 0x0c, 0x9d, 0x06, 0xa9, 0x91, 0xd0, 0x0b, 0xdc, 0x3a, 0x69, - 0x04, 0x3e, 0xbb, 0xbb, 0xa2, 0x07, 0xe4, 0xa9, 0xbd, 0xdd, 0x79, 0x74, 0xb9, 0x0b, 0x8a, 0x33, - 0x6a, 0x20, 0x17, 0xc6, 0xdb, 0x21, 0x31, 0xec, 0x86, 0x56, 0xbe, 0xa8, 0x51, 0xd3, 0xab, 0x70, - 0x69, 0xd8, 0x28, 0xc2, 0x26, 0x51, 0xf4, 0x09, 0x98, 0x0a, 0xc2, 0xf6, 0xa6, 0xe3, 0x57, 0x49, - 0x9b, 0xf8, 0x2e, 0x55, 0x01, 0x84, 0xb5, 0x63, 0x66, 0x6f, 0x77, 0x7e, 0xea, 0x66, 0x0a, 0x86, - 0xbb, 0xb0, 0xd1, 0x1b, 0x30, 0xdd, 0x0e, 0x83, 0xb6, 0xd3, 0x64, 0x4b, 0x46, 0x48, 0x2b, 0x9c, - 0x37, 0x9d, 0xdb, 0xdb, 0x9d, 0x9f, 0xae, 0xa5, 0x81, 0xfb, 0xbb, 0xf3, 0x27, 0xd8, 0x94, 0xd1, - 0x92, 0x04, 0x88, 0xbb, 0xc9, 0xd8, 0xef, 0xc2, 0xc9, 0x6a, 0x70, 0xdf, 0xbf, 0xef, 0x84, 0xee, - 0x62, 0x6d, 0x4d, 0x33, 0x4e, 0xbc, 0x2e, 0x95, 0x5f, 0x7e, 0x27, 0x98, 0x73, 0xb2, 0x69, 0x34, - 0xb8, 0xda, 0xb1, 0xea, 0xb5, 0x48, 0x0f, 0x73, 0xc8, 0x3f, 0x2a, 0x19, 0x6d, 0x26, 0xf8, 0xea, - 0xee, 0xc2, 0xea, 0x79, 0x77, 0xf1, 0x69, 0x18, 0xd9, 0xf0, 0x48, 0xcb, 0xc5, 0x64, 0x43, 0x7c, - 0xad, 0x0b, 0x45, 0x2e, 0x77, 0x56, 0x69, 0x1d, 0x69, 0x1d, 0xe3, 0x4a, 0xf4, 0xaa, 0x20, 0x83, - 0x15, 0x41, 0xd4, 0x81, 0x29, 0xa9, 0x87, 0x49, 0xa8, 0xd8, 0xec, 0x2f, 0x14, 0x53, 0xf3, 0xcc, - 0x66, 0xd8, 0xe7, 0xc5, 0x29, 0x82, 0xb8, 0xab, 0x09, 0xaa, 0x3f, 0x6f, 0xd1, 0xa3, 0x6e, 0x80, - 0x2d, 0x7d, 0xa6, 0x3f, 0x33, 0x53, 0x00, 0x2b, 0xb5, 0x7f, 0xc5, 0x82, 0x47, 0xba, 0x66, 0x4b, - 0xd8, 0x49, 0x8e, 0xec, 0x1b, 0xa5, 0x8d, 0x15, 0xa5, 0x7c, 0x63, 0x85, 0x7d, 0x13, 0x66, 0x56, - 0xb6, 0xda, 0xf1, 0x4e, 0xd5, 0x33, 0xaf, 0x5c, 0x5e, 0x86, 0xa1, 0x2d, 0xe2, 0x7a, 0x9d, 0x2d, - 0xf1, 0x59, 0xe7, 0xe5, 0xb9, 0x70, 0x9d, 0x95, 0xee, 0xef, 0xce, 0x8f, 0xd7, 0xe3, 0x20, 0x74, - 0x9a, 0x84, 0x17, 0x60, 0x81, 0x6e, 0xff, 0xc8, 0x82, 0x49, 0xc9, 0x1f, 0x16, 0x5d, 0x37, 0x24, - 0x51, 0x84, 0xe6, 0xa0, 0xe4, 0xb5, 0x05, 0x21, 0x10, 0x84, 0x4a, 0x6b, 0x35, 0x5c, 0xf2, 0xda, - 0xe8, 0x0d, 0xa8, 0xf0, 0x9b, 0xba, 0x64, 0x71, 0xf4, 0x79, 0xf3, 0xc7, 0x74, 0xc3, 0x75, 0x49, - 0x03, 0x27, 0xe4, 0xa4, 0x94, 0xcc, 0x4e, 0x9e, 0xb2, 0x79, 0x6f, 0x74, 0x45, 0x94, 0x63, 0x85, - 0x81, 0xce, 0xc2, 0x88, 0x1f, 0xb8, 0xfc, 0x32, 0x95, 0xef, 0x53, 0xb6, 0xe4, 0x6e, 0x88, 0x32, - 0xac, 0xa0, 0xf6, 0x57, 0x2c, 0x18, 0x93, 0x63, 0x2c, 0x28, 0xb0, 0xd3, 0x4d, 0x92, 0x08, 0xeb, - 0xc9, 0x26, 0xa1, 0x02, 0x37, 0x83, 0x18, 0x72, 0x76, 0xb9, 0x1f, 0x39, 0xdb, 0xfe, 0xb5, 0x12, - 0x4c, 0xc8, 0xee, 0xd4, 0x3b, 0x77, 0x23, 0x42, 0xc5, 0x90, 0x8a, 0xc3, 0x27, 0x9f, 0xc8, 0x75, - 0xf6, 0x7c, 0x9e, 0x2e, 0x66, 0x7c, 0xb3, 0x44, 0xcc, 0x59, 0x94, 0x74, 0x70, 0x42, 0x12, 0x6d, - 0xc3, 0xb4, 0x1f, 0xc4, 0xec, 0x78, 0x53, 0xf0, 0x62, 0x37, 0x1d, 0xe9, 0x76, 0x1e, 0x15, 0xed, - 0x4c, 0xdf, 0x48, 0xd3, 0xc3, 0xdd, 0x4d, 0xa0, 0x9b, 0xd2, 0xc6, 0x54, 0x66, 0x6d, 0x3d, 0x5b, - 0xac, 0xad, 0xde, 0x26, 0x26, 0xfb, 0xb7, 0x2d, 0xa8, 0x48, 0xb4, 0xe3, 0xb8, 0xf2, 0xba, 0x03, - 0xc3, 0x11, 0xfb, 0x44, 0x72, 0xba, 0xce, 0x15, 0x1b, 0x02, 0xff, 0xae, 0xc9, 0x99, 0xce, 0xff, - 0x47, 0x58, 0x52, 0x63, 0xc6, 0x76, 0x35, 0x90, 0xf7, 0x9d, 0xb1, 0x5d, 0xf5, 0xac, 0xf7, 0xcd, - 0xd6, 0xb8, 0x61, 0x0d, 0xa0, 0x82, 0x69, 0x3b, 0x24, 0x1b, 0xde, 0x83, 0xb4, 0x60, 0x5a, 0x63, - 0xa5, 0x58, 0x40, 0xd1, 0x06, 0x8c, 0x35, 0xa4, 0x39, 0x3a, 0x61, 0x21, 0x1f, 0x2e, 0x68, 0xfb, - 0x57, 0xd7, 0x48, 0xdc, 0x9b, 0x69, 0x59, 0xa3, 0x84, 0x0d, 0xba, 0x94, 0x4f, 0x25, 0x37, 0xe5, - 0xe5, 0x82, 0x86, 0x9b, 0x90, 0xc4, 0x49, 0x0b, 0x3d, 0x2f, 0xc9, 0xed, 0x6f, 0x58, 0x30, 0xc4, - 0xed, 0x97, 0xc5, 0x8c, 0xc0, 0xda, 0x05, 0x59, 0x32, 0x9f, 0xb7, 0x69, 0xa1, 0xb8, 0x2f, 0x43, - 0x77, 0xa0, 0xc2, 0x7e, 0x30, 0x5b, 0x4c, 0xb9, 0x88, 0x6b, 0x17, 0x6f, 0x5f, 0xef, 0xea, 0x6d, - 0x49, 0x00, 0x27, 0xb4, 0xec, 0xef, 0x97, 0x29, 0xeb, 0x4b, 0x50, 0x8d, 0xb3, 0xdd, 0x3a, 0x8e, - 0xb3, 0xbd, 0x74, 0xf4, 0x67, 0xfb, 0xbb, 0x30, 0xd9, 0xd0, 0x2e, 0xe8, 0x92, 0x2f, 0x7e, 0xb1, - 0xe0, 0xb2, 0xd2, 0x6e, 0xf5, 0xb8, 0xbd, 0x6e, 0xd9, 0x24, 0x87, 0xd3, 0xf4, 0x11, 0x81, 0x31, - 0xbe, 0x1e, 0x44, 0x7b, 0x03, 0xac, 0xbd, 0xf3, 0x45, 0x56, 0x98, 0xde, 0x18, 0x5b, 0xc5, 0x75, - 0x8d, 0x10, 0x36, 0xc8, 0xda, 0xbf, 0x34, 0x08, 0x83, 0x2b, 0xdb, 0xc4, 0x8f, 0x8f, 0x81, 0xd5, - 0x6d, 0xc1, 0x84, 0xe7, 0x6f, 0x07, 0xad, 0x6d, 0xe2, 0x72, 0xf8, 0xe1, 0x8e, 0xf7, 0x53, 0xa2, - 0x91, 0x89, 0x35, 0x83, 0x18, 0x4e, 0x11, 0x3f, 0x0a, 0x4b, 0xc1, 0x6b, 0x30, 0xc4, 0x57, 0x86, - 0x30, 0x13, 0xe4, 0xd8, 0xf3, 0xd9, 0xc4, 0x8a, 0x1d, 0x94, 0xd8, 0x33, 0xf8, 0x55, 0x82, 0x20, - 0x84, 0xde, 0x81, 0x89, 0x0d, 0x2f, 0x8c, 0x62, 0xaa, 0xec, 0x47, 0xb1, 0xb3, 0xd5, 0x3e, 0x84, - 0x8d, 0x40, 0xcd, 0xc8, 0xaa, 0x41, 0x09, 0xa7, 0x28, 0xa3, 0x26, 0x8c, 0x53, 0x15, 0x35, 0x69, - 0x6a, 0xb8, 0xef, 0xa6, 0x94, 0x89, 0xf0, 0x9a, 0x4e, 0x08, 0x9b, 0x74, 0x29, 0x4b, 0x6a, 0x30, - 0x95, 0x76, 0x84, 0x49, 0x37, 0x8a, 0x25, 0x71, 0x5d, 0x96, 0xc3, 0x28, 0x67, 0x63, 0x9e, 0x32, - 0x15, 0x93, 0xb3, 0x25, 0xfe, 0x30, 0xf6, 0xb7, 0xe8, 0x59, 0x4c, 0xe7, 0xf0, 0x18, 0x8e, 0xaf, - 0x2b, 0xe6, 0xf1, 0xf5, 0x64, 0x81, 0x2f, 0xdb, 0xe3, 0xe8, 0x7a, 0x1b, 0x46, 0xb5, 0x0f, 0x8f, - 0xce, 0x43, 0xa5, 0x21, 0x9d, 0x39, 0x04, 0x17, 0x57, 0xa2, 0x94, 0xf2, 0xf2, 0xc0, 0x09, 0x0e, - 0x9d, 0x17, 0x2a, 0x82, 0xa6, 0x5d, 0xbf, 0xa8, 0x80, 0x8a, 0x19, 0xc4, 0x7e, 0x01, 0x60, 0xe5, - 0x01, 0x69, 0x2c, 0x72, 0x15, 0x4f, 0xbb, 0xdf, 0xb3, 0x7a, 0xdf, 0xef, 0xd9, 0xdf, 0xb4, 0x60, - 0x62, 0x75, 0xd9, 0x90, 0xe9, 0x17, 0x00, 0xb8, 0x6c, 0x7c, 0xe7, 0xce, 0x0d, 0x69, 0xbf, 0xe6, - 0x46, 0x46, 0x55, 0x8a, 0x35, 0x0c, 0xf4, 0x28, 0x94, 0x5b, 0x1d, 0x5f, 0x88, 0xac, 0xc3, 0x7b, - 0xbb, 0xf3, 0xe5, 0x6b, 0x1d, 0x1f, 0xd3, 0x32, 0xcd, 0xc7, 0xaa, 0x5c, 0xd8, 0xc7, 0x2a, 0xdf, - 0x41, 0xf9, 0x6b, 0x65, 0x98, 0x5a, 0x6d, 0x91, 0x07, 0x46, 0xaf, 0x9f, 0x86, 0x21, 0x37, 0xf4, - 0xb6, 0x49, 0x98, 0x16, 0x04, 0xaa, 0xac, 0x14, 0x0b, 0x68, 0x61, 0xb7, 0xaf, 0xb7, 0xba, 0x0f, - 0xf2, 0xa3, 0x73, 0x79, 0xcb, 0x1d, 0x33, 0xda, 0x80, 0x61, 0x7e, 0x1f, 0x1c, 0xcd, 0x0e, 0xb2, - 0xa5, 0xf8, 0xca, 0xc1, 0x9d, 0x49, 0xcf, 0xcf, 0x82, 0xb0, 0xaf, 0x70, 0x87, 0x1b, 0xc5, 0xcb, - 0x44, 0x29, 0x96, 0xc4, 0xe7, 0x3e, 0x06, 0x63, 0x3a, 0x66, 0x5f, 0x9e, 0x37, 0x7f, 0xd9, 0x82, - 0x13, 0xab, 0xad, 0xa0, 0x71, 0x2f, 0xe5, 0x97, 0xf7, 0x12, 0x8c, 0xd2, 0xcd, 0x14, 0x19, 0x4e, - 0xab, 0x86, 0x43, 0xaf, 0x00, 0x61, 0x1d, 0x4f, 0xab, 0x76, 0xeb, 0xd6, 0x5a, 0x35, 0xcb, 0x0f, - 0x58, 0x80, 0xb0, 0x8e, 0x67, 0xff, 0xae, 0x05, 0x8f, 0x5f, 0x5e, 0x5e, 0xa9, 0x91, 0x30, 0xf2, - 0xa2, 0x98, 0xf8, 0x71, 0x97, 0x2b, 0x32, 0x95, 0x19, 0x5d, 0xad, 0x2b, 0x89, 0xcc, 0x58, 0x65, - 0xbd, 0x10, 0xd0, 0xf7, 0x8b, 0x3f, 0xfe, 0x37, 0x2c, 0x38, 0x71, 0xd9, 0x8b, 0x31, 0x69, 0x07, - 0x69, 0x57, 0xe0, 0x90, 0xb4, 0x83, 0xc8, 0x8b, 0x83, 0x70, 0x27, 0xed, 0x0a, 0x8c, 0x15, 0x04, - 0x6b, 0x58, 0xbc, 0xe5, 0x6d, 0x2f, 0xa2, 0x3d, 0x2d, 0x99, 0xaa, 0x2e, 0x16, 0xe5, 0x58, 0x61, - 0xd0, 0x81, 0xb9, 0x5e, 0xc8, 0x44, 0x86, 0x1d, 0xb1, 0x83, 0xd5, 0xc0, 0xaa, 0x12, 0x80, 0x13, - 0x1c, 0xfb, 0xef, 0x58, 0x70, 0xf2, 0x72, 0xab, 0x13, 0xc5, 0x24, 0xdc, 0x88, 0x8c, 0xce, 0xbe, - 0x00, 0x15, 0x22, 0x85, 0x7b, 0xd1, 0x57, 0x75, 0x68, 0x28, 0xa9, 0x9f, 0xfb, 0x21, 0x2b, 0xbc, - 0x02, 0xee, 0xae, 0xfd, 0x39, 0x67, 0xfe, 0x46, 0x09, 0xc6, 0xaf, 0xac, 0xaf, 0xd7, 0x2e, 0x93, - 0x58, 0x70, 0xc9, 0x7c, 0xa3, 0x14, 0xd6, 0x34, 0xf2, 0x83, 0x84, 0x9f, 0x4e, 0xec, 0xb5, 0x16, - 0x78, 0x84, 0xc9, 0xc2, 0x9a, 0x1f, 0xdf, 0x0c, 0xeb, 0x71, 0xe8, 0xf9, 0xcd, 0x4c, 0x1d, 0x5e, - 0xf2, 0xf2, 0x72, 0x2f, 0x5e, 0x8e, 0x5e, 0x80, 0x21, 0x16, 0xe2, 0x22, 0x85, 0x8f, 0x0f, 0x2a, - 0x39, 0x81, 0x95, 0xee, 0xef, 0xce, 0x57, 0x6e, 0xe1, 0x35, 0xfe, 0x07, 0x0b, 0x54, 0xf4, 0x16, - 0x8c, 0x6e, 0xc6, 0x71, 0xfb, 0x0a, 0x71, 0x5c, 0x12, 0x4a, 0x3e, 0x71, 0xf6, 0x60, 0x3e, 0x41, - 0xa7, 0x83, 0x57, 0x48, 0xb6, 0x56, 0x52, 0x16, 0x61, 0x9d, 0xa2, 0x5d, 0x07, 0x48, 0x60, 0x0f, - 0x49, 0x07, 0xb1, 0x7f, 0xbe, 0x04, 0xc3, 0x57, 0x1c, 0xdf, 0x6d, 0x91, 0x10, 0xad, 0xc2, 0x00, - 0x79, 0x40, 0x1a, 0xe2, 0x20, 0xcf, 0xe9, 0x7a, 0x72, 0xd8, 0x71, 0xbb, 0x1a, 0xfd, 0x8f, 0x59, - 0x7d, 0x84, 0x61, 0x98, 0xf6, 0xfb, 0xb2, 0xf2, 0x12, 0x7f, 0x2e, 0x7f, 0x16, 0xd4, 0xa2, 0xe0, - 0x27, 0xa5, 0x28, 0xc2, 0x92, 0x10, 0xb3, 0x40, 0x35, 0xda, 0x75, 0xca, 0xde, 0xe2, 0x62, 0x9a, - 0xdd, 0xfa, 0x72, 0x8d, 0xa3, 0x0b, 0xba, 0xdc, 0x02, 0x25, 0x0b, 0x71, 0x42, 0xce, 0x5e, 0x87, - 0x0a, 0xfd, 0xf8, 0x8b, 0x2d, 0xcf, 0x39, 0xd8, 0x0c, 0xf6, 0x1c, 0x54, 0xa4, 0x21, 0x2a, 0x12, - 0x2e, 0xe7, 0x8c, 0xaa, 0xb4, 0x53, 0x45, 0x38, 0x81, 0xdb, 0x97, 0x60, 0x86, 0xdd, 0xf2, 0x3a, - 0xf1, 0xa6, 0xb1, 0x17, 0x73, 0x17, 0xbd, 0xfd, 0xed, 0x01, 0x98, 0x5e, 0xab, 0x2f, 0xd7, 0x4d, - 0x8b, 0xe4, 0x25, 0x18, 0xe3, 0xc7, 0x3e, 0x5d, 0xca, 0x4e, 0x4b, 0xd4, 0x57, 0x37, 0x13, 0xeb, - 0x1a, 0x0c, 0x1b, 0x98, 0xe8, 0x71, 0x28, 0x7b, 0xef, 0xfa, 0x69, 0x5f, 0xc1, 0xb5, 0xd7, 0x6e, - 0x60, 0x5a, 0x4e, 0xc1, 0x54, 0x82, 0xe0, 0xac, 0x53, 0x81, 0x95, 0x14, 0xf1, 0x2a, 0x4c, 0x78, - 0x51, 0x23, 0xf2, 0xd6, 0x7c, 0xca, 0x57, 0x9c, 0x86, 0xdc, 0x14, 0x89, 0xc8, 0x4f, 0xbb, 0xaa, - 0xa0, 0x38, 0x85, 0xad, 0xf1, 0xf1, 0xc1, 0xc2, 0x52, 0x48, 0xae, 0x13, 0x3a, 0x15, 0xb0, 0xda, - 0x6c, 0x74, 0x11, 0xf3, 0x3c, 0x12, 0x02, 0x16, 0x1f, 0x70, 0x84, 0x25, 0x0c, 0x5d, 0x86, 0xe9, - 0xc6, 0xa6, 0xd3, 0x5e, 0xec, 0xc4, 0x9b, 0x55, 0x2f, 0x6a, 0x04, 0xdb, 0x24, 0xdc, 0x61, 0x02, - 0xf0, 0x48, 0x62, 0xd3, 0x52, 0x80, 0xe5, 0x2b, 0x8b, 0x35, 0x8a, 0x89, 0xbb, 0xeb, 0x98, 0x02, - 0x09, 0x1c, 0x81, 0x40, 0xb2, 0x08, 0x93, 0xb2, 0xd5, 0x3a, 0x89, 0xd8, 0x11, 0x31, 0xca, 0xfa, - 0xa9, 0xc2, 0x7f, 0x44, 0xb1, 0xea, 0x65, 0x1a, 0xdf, 0x7e, 0x07, 0x2a, 0xca, 0x53, 0x4e, 0x3a, - 0x88, 0x5a, 0x3d, 0x1c, 0x44, 0xf3, 0x99, 0xbb, 0xb4, 0x9d, 0x97, 0x33, 0x6d, 0xe7, 0xff, 0xc4, - 0x82, 0xc4, 0xd5, 0x07, 0x61, 0xa8, 0xb4, 0x03, 0x76, 0xcf, 0x16, 0xca, 0x0b, 0xed, 0xa7, 0x72, - 0xf6, 0x3c, 0xe7, 0x39, 0x7c, 0x42, 0x6a, 0xb2, 0x2e, 0x4e, 0xc8, 0xa0, 0x6b, 0x30, 0xdc, 0x0e, - 0x49, 0x3d, 0x66, 0xd1, 0x1d, 0x7d, 0x50, 0xe4, 0x0b, 0x81, 0xd7, 0xc4, 0x92, 0x84, 0xfd, 0x2f, - 0x2c, 0x80, 0x6b, 0xde, 0x96, 0x17, 0x63, 0xc7, 0x6f, 0x92, 0x63, 0x50, 0xac, 0x6f, 0xc0, 0x40, - 0xd4, 0x26, 0x8d, 0x62, 0x37, 0xa5, 0x49, 0xcf, 0xea, 0x6d, 0xd2, 0x48, 0x3e, 0x07, 0xfd, 0x87, - 0x19, 0x1d, 0xfb, 0x7b, 0x00, 0x13, 0x09, 0x1a, 0x55, 0x6e, 0xd0, 0xf3, 0x46, 0x58, 0xc3, 0xa3, - 0xa9, 0xb0, 0x86, 0x0a, 0xc3, 0xd6, 0x22, 0x19, 0x62, 0x28, 0x6f, 0x39, 0x0f, 0x84, 0x2e, 0xf5, - 0x52, 0xd1, 0x0e, 0xd1, 0x96, 0x16, 0xae, 0x3b, 0x0f, 0xb8, 0xe8, 0xfa, 0x9c, 0x5c, 0x48, 0xd7, - 0x9d, 0x07, 0xfb, 0xfc, 0x3e, 0x94, 0x71, 0x27, 0xaa, 0xbc, 0x7d, 0xe1, 0x4f, 0x93, 0xff, 0xec, - 0x18, 0xa2, 0xcd, 0xb1, 0x56, 0x3d, 0x5f, 0x98, 0x82, 0xfb, 0x6c, 0xd5, 0xf3, 0xd3, 0xad, 0x7a, - 0x7e, 0x81, 0x56, 0x3d, 0xe6, 0xff, 0x3b, 0x2c, 0x6e, 0x50, 0x98, 0xf3, 0xe4, 0xe8, 0xc5, 0x8f, - 0xf6, 0xd5, 0xb4, 0xb8, 0x8a, 0xe1, 0xcd, 0x9f, 0x97, 0xf2, 0xba, 0x28, 0xcd, 0xed, 0x82, 0x6c, - 0x1a, 0xfd, 0x5d, 0x0b, 0x26, 0xc4, 0x6f, 0x4c, 0xde, 0xed, 0x90, 0x28, 0x16, 0x72, 0xc1, 0x27, - 0x0e, 0xd3, 0x1b, 0x41, 0x82, 0x77, 0xea, 0x23, 0x92, 0xfd, 0x9a, 0xc0, 0xdc, 0xbe, 0xa5, 0xfa, - 0x83, 0xbe, 0x67, 0xc1, 0xcc, 0x96, 0xf3, 0x80, 0xb7, 0xc8, 0xcb, 0xb0, 0x13, 0x7b, 0x81, 0x70, - 0x10, 0x5d, 0xed, 0x77, 0x9d, 0x74, 0x11, 0xe2, 0xdd, 0x95, 0xbe, 0x5f, 0x33, 0x59, 0x28, 0xb9, - 0x9d, 0xce, 0xec, 0xe1, 0xdc, 0x06, 0x8c, 0xc8, 0x85, 0x99, 0xa1, 0x29, 0x55, 0x75, 0xf1, 0x27, - 0xc7, 0x2e, 0xb1, 0x20, 0xad, 0x8b, 0x0b, 0xaf, 0x75, 0x1c, 0x3f, 0xf6, 0xe2, 0x1d, 0x4d, 0xb3, - 0x62, 0xed, 0x88, 0xa5, 0x78, 0xa4, 0xed, 0xbc, 0x03, 0x63, 0xfa, 0xba, 0x3b, 0xd2, 0xb6, 0xde, - 0x85, 0x13, 0x19, 0xab, 0xea, 0x48, 0x9b, 0xbc, 0x0f, 0x8f, 0xf6, 0x5c, 0x1f, 0x47, 0xd9, 0xb0, - 0xfd, 0x1b, 0x96, 0xce, 0x3a, 0x8f, 0xc1, 0x6e, 0x75, 0xdd, 0xb4, 0x5b, 0x9d, 0x2d, 0xba, 0x87, - 0x7a, 0x18, 0xaf, 0x36, 0xf4, 0xee, 0xd3, 0x23, 0x01, 0xad, 0xc3, 0x50, 0x8b, 0x96, 0xc8, 0x6b, - 0xc3, 0x73, 0xfd, 0xec, 0xd2, 0x44, 0x02, 0x63, 0xe5, 0x11, 0x16, 0xb4, 0xec, 0xef, 0x59, 0x30, - 0xf0, 0x17, 0x18, 0x74, 0xd5, 0x45, 0x5a, 0xa4, 0x1b, 0x58, 0xc0, 0xce, 0xfd, 0x95, 0x07, 0x31, - 0xf1, 0x23, 0x26, 0xc6, 0x67, 0x4e, 0xd1, 0xff, 0x2e, 0xc1, 0x28, 0x6d, 0x4a, 0xfa, 0xb1, 0xbc, - 0x02, 0xe3, 0x2d, 0xe7, 0x2e, 0x69, 0x49, 0x9b, 0x7b, 0x5a, 0xe9, 0xbd, 0xa6, 0x03, 0xb1, 0x89, - 0x4b, 0x2b, 0x6f, 0xe8, 0x57, 0x12, 0x42, 0x48, 0x52, 0x95, 0x8d, 0xfb, 0x0a, 0x6c, 0xe2, 0x52, - 0xad, 0xeb, 0xbe, 0x13, 0x37, 0x36, 0x85, 0x42, 0xac, 0xba, 0x7b, 0x87, 0x16, 0x62, 0x0e, 0xa3, - 0xc2, 0x9e, 0x5c, 0xb1, 0xb7, 0x49, 0xc8, 0x84, 0x3d, 0x2e, 0x54, 0x2b, 0x61, 0x0f, 0x9b, 0x60, - 0x9c, 0xc6, 0x47, 0x1f, 0x83, 0x09, 0x3a, 0x39, 0x41, 0x27, 0x96, 0x5e, 0x3a, 0x83, 0xcc, 0x4b, - 0x87, 0x39, 0x79, 0xaf, 0x1b, 0x10, 0x9c, 0xc2, 0x44, 0x35, 0x98, 0xf1, 0xfc, 0x46, 0xab, 0xe3, - 0x92, 0x5b, 0xbe, 0xe7, 0x7b, 0xb1, 0xe7, 0xb4, 0xbc, 0xcf, 0x12, 0x57, 0x88, 0xdd, 0xca, 0xa1, - 0x6a, 0x2d, 0x03, 0x07, 0x67, 0xd6, 0xb4, 0xdf, 0x82, 0x13, 0xd7, 0x02, 0xc7, 0x5d, 0x72, 0x5a, - 0x8e, 0xdf, 0x20, 0xe1, 0x9a, 0xdf, 0xcc, 0xf5, 0x29, 0xd0, 0xef, 0xfd, 0x4b, 0x79, 0xf7, 0xfe, - 0x76, 0x08, 0x48, 0x6f, 0x40, 0x78, 0xac, 0xbd, 0x09, 0xc3, 0x1e, 0x6f, 0x4a, 0x6c, 0x84, 0x0b, - 0x79, 0x32, 0x79, 0x57, 0x1f, 0x35, 0x0f, 0x2c, 0x5e, 0x80, 0x25, 0x49, 0xaa, 0xc1, 0x65, 0x09, - 0xf1, 0xf9, 0xaa, 0xb7, 0xfd, 0x57, 0x2c, 0x98, 0xbc, 0x91, 0x8a, 0x33, 0x7e, 0x1a, 0x86, 0x78, - 0x82, 0x8b, 0xb4, 0xdd, 0xab, 0xce, 0x4a, 0xb1, 0x80, 0x3e, 0x74, 0xb3, 0xcb, 0x2f, 0x96, 0xa0, - 0xc2, 0x7c, 0x9f, 0xdb, 0x54, 0x1b, 0x3b, 0x7a, 0xc1, 0xf7, 0xba, 0x21, 0xf8, 0xe6, 0xa8, 0xfe, - 0xaa, 0x63, 0xbd, 0xe4, 0x5e, 0x74, 0x4b, 0xc5, 0xdf, 0x16, 0xd2, 0xfa, 0x13, 0x82, 0x3c, 0x46, - 0x73, 0xc2, 0x0c, 0xd7, 0x95, 0xb1, 0xb9, 0xec, 0x26, 0x5e, 0xe1, 0xbe, 0xef, 0x6e, 0xe2, 0x55, - 0xcf, 0x7a, 0xb0, 0xbb, 0x9a, 0xd6, 0x79, 0x76, 0x20, 0xfc, 0x2c, 0xf3, 0x68, 0x65, 0x9b, 0x51, - 0x85, 0xb1, 0xcf, 0x0b, 0x0f, 0x55, 0x51, 0xba, 0xcf, 0x38, 0x97, 0xf8, 0xc7, 0xb3, 0x14, 0x24, - 0x55, 0xec, 0x2b, 0x30, 0x99, 0x9a, 0x3a, 0xf4, 0x12, 0x0c, 0xb6, 0x37, 0x9d, 0x88, 0xa4, 0x9c, - 0x8b, 0x06, 0x6b, 0xb4, 0x70, 0x7f, 0x77, 0x7e, 0x42, 0x55, 0x60, 0x25, 0x98, 0x63, 0xdb, 0x5f, - 0x2c, 0xc1, 0xc0, 0x8d, 0xc0, 0x3d, 0x8e, 0xa5, 0x76, 0xc5, 0x58, 0x6a, 0x4f, 0xe7, 0xa7, 0x45, - 0xe9, 0xb9, 0xca, 0x6a, 0xa9, 0x55, 0x76, 0xb6, 0x00, 0xad, 0x83, 0x17, 0xd8, 0x16, 0x8c, 0xb2, - 0xb4, 0x2b, 0xc2, 0xbb, 0xea, 0x05, 0x43, 0x57, 0x9b, 0x4f, 0xe9, 0x6a, 0x93, 0x1a, 0xaa, 0xa6, - 0xb1, 0x3d, 0x03, 0xc3, 0xc2, 0x9b, 0x27, 0xed, 0xcf, 0x2b, 0x70, 0xb1, 0x84, 0xdb, 0xff, 0xbc, - 0x0c, 0x46, 0x9a, 0x17, 0xf4, 0xdb, 0x16, 0x2c, 0x84, 0x3c, 0x36, 0xca, 0xad, 0x76, 0x42, 0xcf, - 0x6f, 0xd6, 0x1b, 0x9b, 0xc4, 0xed, 0xb4, 0x3c, 0xbf, 0xb9, 0xd6, 0xf4, 0x03, 0x55, 0xbc, 0xf2, - 0x80, 0x34, 0x3a, 0xcc, 0x78, 0x5e, 0x38, 0xbb, 0x8c, 0xba, 0xc9, 0xbe, 0xb8, 0xb7, 0x3b, 0xbf, - 0x80, 0xfb, 0x6a, 0x05, 0xf7, 0xd9, 0x2b, 0xf4, 0x47, 0x16, 0x9c, 0xe7, 0x89, 0x4e, 0x8a, 0x8f, - 0xa4, 0x90, 0x8e, 0x5b, 0x93, 0x44, 0x13, 0x72, 0xeb, 0x24, 0xdc, 0x5a, 0x7a, 0x59, 0x4c, 0xf2, - 0xf9, 0x5a, 0x7f, 0xad, 0xe2, 0x7e, 0xbb, 0x69, 0xff, 0xab, 0x32, 0x8c, 0xd3, 0xf9, 0x4c, 0x32, - 0x15, 0xbc, 0x64, 0x2c, 0x93, 0x27, 0x52, 0xcb, 0x64, 0xda, 0x40, 0x7e, 0x38, 0x49, 0x0a, 0x22, - 0x98, 0x6e, 0x39, 0x51, 0x7c, 0x85, 0x38, 0x61, 0x7c, 0x97, 0x38, 0xec, 0xc2, 0x38, 0xed, 0x8c, - 0x52, 0xe0, 0x0e, 0x5a, 0x59, 0xd3, 0xae, 0xa5, 0x89, 0xe1, 0x6e, 0xfa, 0x68, 0x1b, 0x10, 0xbb, - 0x9c, 0x0e, 0x1d, 0x3f, 0xe2, 0x63, 0xf1, 0x84, 0xb1, 0xbd, 0xbf, 0x56, 0xe7, 0x44, 0xab, 0xe8, - 0x5a, 0x17, 0x35, 0x9c, 0xd1, 0x82, 0xe6, 0x7e, 0x30, 0x58, 0xd4, 0xfd, 0x60, 0x28, 0xc7, 0x91, - 0xfe, 0x4b, 0x16, 0x9c, 0xa0, 0x9f, 0xc5, 0x74, 0xba, 0x8e, 0x50, 0x00, 0x93, 0x74, 0xd9, 0xb5, - 0x48, 0x2c, 0xcb, 0xc4, 0xfe, 0xca, 0x91, 0xd5, 0x4d, 0x3a, 0x89, 0x40, 0x78, 0xd5, 0x24, 0x86, - 0xd3, 0xd4, 0xed, 0x6f, 0x5a, 0xc0, 0xdc, 0x20, 0x8f, 0xe1, 0x30, 0xbb, 0x6c, 0x1e, 0x66, 0x76, - 0x3e, 0xc7, 0xe8, 0x71, 0x8e, 0xbd, 0x08, 0x53, 0x14, 0x5a, 0x0b, 0x83, 0x07, 0x3b, 0x52, 0x74, - 0xcf, 0xb7, 0x8f, 0x7f, 0xa9, 0xc4, 0xb7, 0x8d, 0x0a, 0xf2, 0x44, 0x5f, 0xb6, 0x60, 0xa4, 0xe1, - 0xb4, 0x9d, 0x06, 0x4f, 0x92, 0x55, 0xc0, 0xde, 0x63, 0xd4, 0x5f, 0x58, 0x16, 0x75, 0xb9, 0xad, - 0xe2, 0xc3, 0x72, 0xe8, 0xb2, 0x38, 0xd7, 0x3e, 0xa1, 0x1a, 0x9f, 0xbb, 0x07, 0xe3, 0x06, 0xb1, - 0x23, 0x55, 0x6c, 0xbf, 0x6c, 0x71, 0xa6, 0xaf, 0x94, 0x8f, 0xfb, 0x30, 0xed, 0x6b, 0xff, 0x29, - 0x3b, 0x93, 0x92, 0xf1, 0x42, 0x71, 0xb6, 0xce, 0xb8, 0xa0, 0xe6, 0xf2, 0x99, 0x22, 0x88, 0xbb, - 0xdb, 0xb0, 0x7f, 0xd9, 0x82, 0x47, 0x74, 0x44, 0x2d, 0x2a, 0x37, 0xcf, 0x12, 0x5d, 0x85, 0x91, - 0xa0, 0x4d, 0x42, 0x27, 0x51, 0xb4, 0xce, 0xca, 0xf9, 0xbf, 0x29, 0xca, 0xf7, 0x77, 0xe7, 0x67, - 0x74, 0xea, 0xb2, 0x1c, 0xab, 0x9a, 0xc8, 0x86, 0x21, 0x36, 0x2f, 0x91, 0x88, 0xa7, 0x66, 0x49, - 0xa3, 0xd8, 0x4d, 0x57, 0x84, 0x05, 0xc4, 0xfe, 0xeb, 0x16, 0x5f, 0x6e, 0x7a, 0xd7, 0xd1, 0xe7, - 0x60, 0x6a, 0x8b, 0xea, 0x64, 0x2b, 0x0f, 0xda, 0x21, 0xb7, 0xa3, 0xcb, 0x19, 0x7b, 0xa9, 0xf8, - 0x8c, 0x69, 0xc3, 0x5d, 0x9a, 0x15, 0xbd, 0x9f, 0xba, 0x9e, 0x22, 0x8b, 0xbb, 0x1a, 0xb2, 0xff, - 0x7e, 0x89, 0xef, 0x59, 0x26, 0xc3, 0x3d, 0x03, 0xc3, 0xed, 0xc0, 0x5d, 0x5e, 0xab, 0x62, 0x31, - 0x57, 0x8a, 0xe9, 0xd4, 0x78, 0x31, 0x96, 0x70, 0x74, 0x11, 0x80, 0x3c, 0x88, 0x49, 0xe8, 0x3b, - 0x2d, 0x75, 0x37, 0xaf, 0x44, 0xa5, 0x15, 0x05, 0xc1, 0x1a, 0x16, 0xad, 0xd3, 0x0e, 0x83, 0x6d, - 0xcf, 0x65, 0xe1, 0x24, 0x65, 0xb3, 0x4e, 0x4d, 0x41, 0xb0, 0x86, 0x45, 0x35, 0xe1, 0x8e, 0x1f, - 0xf1, 0x63, 0xcc, 0xb9, 0x2b, 0x12, 0x16, 0x8d, 0x24, 0x9a, 0xf0, 0x2d, 0x1d, 0x88, 0x4d, 0x5c, - 0x74, 0x15, 0x86, 0x62, 0x87, 0xdd, 0x38, 0x0f, 0x16, 0x71, 0xdf, 0x59, 0xa7, 0xb8, 0x7a, 0x86, - 0x28, 0x5a, 0x15, 0x0b, 0x12, 0xf6, 0x7f, 0xa8, 0x00, 0x24, 0x52, 0x17, 0xfa, 0x62, 0xf7, 0x86, - 0xff, 0x48, 0x51, 0x91, 0xed, 0xe1, 0xed, 0x76, 0xf4, 0x55, 0x0b, 0x46, 0x9d, 0x56, 0x2b, 0x68, - 0x38, 0x31, 0x9b, 0x9e, 0x52, 0x51, 0xd6, 0x23, 0x7a, 0xb2, 0x98, 0xd4, 0xe5, 0x9d, 0x79, 0x41, - 0xde, 0x02, 0x6b, 0x90, 0xdc, 0xfe, 0xe8, 0x5d, 0x40, 0x1f, 0x96, 0x52, 0x3b, 0xff, 0xc2, 0x73, - 0x69, 0xa9, 0xbd, 0xc2, 0x18, 0xae, 0x26, 0xb0, 0xa3, 0xb7, 0x8c, 0x04, 0x3f, 0x03, 0x45, 0x62, - 0x82, 0x0d, 0x39, 0x24, 0x2f, 0xb7, 0x0f, 0x7a, 0x43, 0xf7, 0x73, 0x1f, 0x2c, 0x12, 0x74, 0xaf, - 0x89, 0xc3, 0x39, 0x3e, 0xee, 0x31, 0x4c, 0xba, 0xe6, 0xc9, 0x2b, 0x7c, 0xf5, 0x2e, 0xe4, 0xb7, - 0x90, 0x3a, 0xb2, 0x93, 0xb3, 0x36, 0x05, 0xc0, 0xe9, 0x26, 0xd0, 0x1b, 0x3c, 0x0a, 0x61, 0xcd, - 0xdf, 0x08, 0x84, 0xbf, 0xde, 0xb9, 0x02, 0xdf, 0x7c, 0x27, 0x8a, 0xc9, 0x16, 0xad, 0x93, 0x1c, - 0xae, 0x37, 0x04, 0x15, 0xac, 0xe8, 0xa1, 0x75, 0x18, 0x62, 0x21, 0x60, 0xd1, 0xec, 0x48, 0x11, - 0xdb, 0x9e, 0x19, 0xf9, 0x9c, 0xec, 0x1f, 0xf6, 0x37, 0xc2, 0x82, 0x16, 0xba, 0x22, 0x73, 0x1f, - 0x44, 0x6b, 0xfe, 0xad, 0x88, 0xb0, 0xdc, 0x07, 0x95, 0xa5, 0x0f, 0x25, 0xc9, 0x0c, 0x78, 0x79, - 0x66, 0x56, 0x44, 0xa3, 0x26, 0x15, 0x6c, 0xc4, 0x7f, 0x99, 0x6c, 0x71, 0x16, 0x8a, 0x74, 0xd4, - 0x4c, 0xcd, 0x98, 0x4c, 0xf6, 0x6d, 0x93, 0x18, 0x4e, 0x53, 0x3f, 0xd6, 0x23, 0x75, 0xce, 0x87, - 0xa9, 0xf4, 0xa6, 0x3c, 0xd2, 0x23, 0xfc, 0xc7, 0x03, 0x30, 0x61, 0x2e, 0x0e, 0x74, 0x1e, 0x2a, - 0x82, 0x88, 0xca, 0xa4, 0xa6, 0xf6, 0xc0, 0x75, 0x09, 0xc0, 0x09, 0x0e, 0xcb, 0x29, 0xc7, 0xaa, - 0x6b, 0x9e, 0x5a, 0x49, 0x4e, 0x39, 0x05, 0xc1, 0x1a, 0x16, 0x95, 0x84, 0xef, 0x06, 0x41, 0xac, - 0x4e, 0x02, 0xb5, 0x6e, 0x96, 0x58, 0x29, 0x16, 0x50, 0x7a, 0x02, 0xdc, 0xa3, 0x1f, 0xb3, 0x65, - 0xda, 0x29, 0xd5, 0x09, 0x70, 0x55, 0x07, 0x62, 0x13, 0x97, 0x9e, 0x68, 0x41, 0xc4, 0x16, 0xa2, - 0x90, 0xb7, 0x13, 0xcf, 0xb7, 0x3a, 0x0f, 0x8b, 0x94, 0x70, 0xf4, 0x29, 0x78, 0x44, 0x45, 0x31, - 0x62, 0x6e, 0xf7, 0x95, 0x2d, 0x0e, 0x19, 0x2a, 0xf3, 0x23, 0xcb, 0xd9, 0x68, 0xb8, 0x57, 0x7d, - 0xf4, 0x2a, 0x4c, 0x08, 0x59, 0x59, 0x52, 0x1c, 0x36, 0x1d, 0x18, 0xae, 0x1a, 0x50, 0x9c, 0xc2, - 0x46, 0x55, 0x98, 0xa2, 0x25, 0x4c, 0x48, 0x95, 0x14, 0x78, 0x34, 0xa6, 0x3a, 0xea, 0xaf, 0xa6, - 0xe0, 0xb8, 0xab, 0x06, 0x5a, 0x84, 0x49, 0x2e, 0xac, 0x50, 0xc5, 0x90, 0x7d, 0x07, 0xe1, 0x64, - 0xab, 0x36, 0xc2, 0x4d, 0x13, 0x8c, 0xd3, 0xf8, 0xe8, 0x12, 0x8c, 0x39, 0x61, 0x63, 0xd3, 0x8b, - 0x49, 0x23, 0xee, 0x84, 0x3c, 0xb3, 0x88, 0xe6, 0x01, 0xb2, 0xa8, 0xc1, 0xb0, 0x81, 0x69, 0x7f, - 0x16, 0x4e, 0x64, 0x78, 0xf4, 0xd3, 0x85, 0xe3, 0xb4, 0x3d, 0x39, 0xa6, 0x94, 0x0f, 0xdb, 0x62, - 0x6d, 0x4d, 0x8e, 0x46, 0xc3, 0xa2, 0xab, 0x93, 0x19, 0xbc, 0xb5, 0xdc, 0xa8, 0x6a, 0x75, 0xae, - 0x4a, 0x00, 0x4e, 0x70, 0xec, 0x3f, 0x01, 0xd0, 0xac, 0x37, 0x05, 0xfc, 0x96, 0x2e, 0xc1, 0x98, - 0x4c, 0xf7, 0xab, 0xe5, 0xcc, 0x54, 0xc3, 0xbc, 0xac, 0xc1, 0xb0, 0x81, 0x49, 0xfb, 0xe6, 0x4b, - 0x9b, 0x54, 0xda, 0x63, 0x4e, 0x19, 0xab, 0x70, 0x82, 0x83, 0xce, 0xc1, 0x48, 0x44, 0x5a, 0x1b, - 0xd7, 0x3c, 0xff, 0x9e, 0x58, 0xd8, 0x8a, 0x33, 0xd7, 0x45, 0x39, 0x56, 0x18, 0x68, 0x09, 0xca, - 0x1d, 0xcf, 0x15, 0x4b, 0x59, 0x8a, 0x0d, 0xe5, 0x5b, 0x6b, 0xd5, 0xfd, 0xdd, 0xf9, 0x27, 0x7a, - 0xe5, 0x3e, 0xa6, 0xfa, 0x79, 0xb4, 0x40, 0xb7, 0x1f, 0xad, 0x9c, 0x65, 0xf9, 0x1f, 0xea, 0xd3, - 0xf2, 0x7f, 0x11, 0x40, 0x8c, 0x5a, 0xae, 0xe5, 0x72, 0xf2, 0xd5, 0x2e, 0x2b, 0x08, 0xd6, 0xb0, - 0xa8, 0x96, 0xdf, 0x08, 0x89, 0x23, 0x15, 0x61, 0xee, 0x69, 0x3e, 0x72, 0x78, 0x2d, 0x7f, 0x39, - 0x4d, 0x0c, 0x77, 0xd3, 0x47, 0x01, 0x4c, 0xbb, 0x22, 0x54, 0x36, 0x69, 0xb4, 0xd2, 0xbf, 0x7b, - 0x3b, 0x73, 0xd2, 0x49, 0x13, 0xc2, 0xdd, 0xb4, 0xd1, 0x67, 0x60, 0x4e, 0x16, 0x76, 0xc7, 0x29, - 0xb3, 0xed, 0x52, 0x5e, 0x3a, 0xbd, 0xb7, 0x3b, 0x3f, 0x57, 0xed, 0x89, 0x85, 0x0f, 0xa0, 0x80, - 0xde, 0x84, 0x21, 0x76, 0x53, 0x14, 0xcd, 0x8e, 0xb2, 0x13, 0xef, 0xc5, 0x22, 0x41, 0x12, 0x74, - 0xd5, 0x2f, 0xb0, 0xfb, 0x26, 0xe1, 0xfe, 0x9b, 0x5c, 0xbf, 0xb1, 0x42, 0x2c, 0x68, 0xa2, 0x36, - 0x8c, 0x3a, 0xbe, 0x1f, 0xc4, 0x0e, 0x17, 0xc4, 0xc6, 0x8a, 0xc8, 0x92, 0x5a, 0x13, 0x8b, 0x49, - 0x5d, 0xde, 0x8e, 0xf2, 0x28, 0xd4, 0x20, 0x58, 0x6f, 0x02, 0xdd, 0x87, 0xc9, 0xe0, 0x3e, 0x65, - 0x98, 0xf2, 0x6a, 0x23, 0x9a, 0x1d, 0x37, 0x07, 0x96, 0x63, 0xa8, 0x35, 0x2a, 0x6b, 0x9c, 0xcc, - 0x24, 0x8a, 0xd3, 0xad, 0xa0, 0x05, 0xc3, 0x5c, 0x3d, 0x91, 0x38, 0xb9, 0x27, 0xe6, 0x6a, 0xdd, - 0x3a, 0xcd, 0x62, 0xe1, 0xb9, 0x63, 0x2b, 0xe3, 0x08, 0x93, 0xa9, 0x58, 0xf8, 0x04, 0x84, 0x75, - 0x3c, 0xb4, 0x09, 0x63, 0xc9, 0x25, 0x55, 0x18, 0xb1, 0x34, 0x3b, 0x9a, 0xdf, 0xd6, 0xc1, 0x83, - 0x5b, 0xd3, 0x6a, 0xf2, 0x90, 0x1d, 0xbd, 0x04, 0x1b, 0x94, 0xe7, 0x3e, 0x0a, 0xa3, 0xda, 0x27, - 0xee, 0xc7, 0x6f, 0x7b, 0xee, 0x55, 0x98, 0x4a, 0x7f, 0xba, 0xbe, 0xfc, 0xbe, 0xff, 0x7b, 0x09, - 0x26, 0x33, 0x6e, 0xa8, 0x58, 0xd2, 0xe3, 0x14, 0x93, 0x4d, 0x72, 0x1c, 0x9b, 0xac, 0xb2, 0x54, - 0x80, 0x55, 0x4a, 0xbe, 0x5d, 0xee, 0xc9, 0xb7, 0x05, 0x7b, 0x1c, 0x78, 0x2f, 0xec, 0xd1, 0x3c, - 0x91, 0x06, 0x0b, 0x9d, 0x48, 0x0f, 0x81, 0xa5, 0x1a, 0x87, 0xda, 0x70, 0x81, 0x43, 0xed, 0x1b, - 0x25, 0x98, 0x4a, 0x7c, 0xdc, 0x45, 0xb6, 0xf1, 0xa3, 0xbf, 0xf0, 0x58, 0x37, 0x2e, 0x3c, 0xf2, - 0x92, 0x89, 0xa7, 0xfa, 0xd7, 0xf3, 0xf2, 0xe3, 0xcd, 0xd4, 0xe5, 0xc7, 0x8b, 0x7d, 0xd2, 0x3d, - 0xf8, 0x22, 0xe4, 0xbb, 0x25, 0x38, 0x99, 0xae, 0xb2, 0xdc, 0x72, 0xbc, 0xad, 0x63, 0x98, 0xaf, - 0x4f, 0x19, 0xf3, 0xf5, 0x72, 0x7f, 0xe3, 0x62, 0x9d, 0xec, 0x39, 0x69, 0x4e, 0x6a, 0xd2, 0x3e, - 0x7a, 0x18, 0xe2, 0x07, 0xcf, 0xdc, 0xef, 0x5b, 0xf0, 0x68, 0x66, 0xbd, 0x63, 0x30, 0xf1, 0xbe, - 0x6e, 0x9a, 0x78, 0x5f, 0x38, 0xc4, 0xe8, 0x7a, 0xd8, 0x7c, 0x7f, 0xa5, 0xdc, 0x63, 0x54, 0xcc, - 0x08, 0x76, 0x13, 0x46, 0x9d, 0x46, 0x83, 0x44, 0xd1, 0xf5, 0xc0, 0x55, 0xf9, 0xbb, 0x9e, 0x67, - 0xa7, 0x58, 0x52, 0xbc, 0xbf, 0x3b, 0x3f, 0x97, 0x26, 0x91, 0x80, 0xb1, 0x4e, 0xc1, 0xcc, 0x2c, - 0x58, 0x3a, 0xa2, 0xcc, 0x82, 0x17, 0x01, 0xb6, 0x95, 0xbe, 0x9c, 0xb6, 0xad, 0x69, 0x9a, 0xb4, - 0x86, 0x85, 0xfe, 0x7f, 0x26, 0x7b, 0x72, 0x07, 0x93, 0x01, 0x33, 0x5c, 0x36, 0xe7, 0xfb, 0xe9, - 0xce, 0x2a, 0x3c, 0x2a, 0x57, 0xd9, 0x21, 0x15, 0x49, 0xf4, 0x09, 0x98, 0x8a, 0x78, 0xee, 0x87, - 0xe5, 0x96, 0x13, 0xb1, 0xe0, 0x0e, 0xc1, 0x4f, 0x59, 0x80, 0x6d, 0x3d, 0x05, 0xc3, 0x5d, 0xd8, - 0xf6, 0x77, 0xca, 0xf0, 0xc1, 0x03, 0x96, 0x2d, 0x5a, 0x34, 0xef, 0x87, 0x9f, 0x4b, 0x5b, 0x9a, - 0xe6, 0x32, 0x2b, 0x1b, 0xa6, 0xa7, 0xd4, 0xd7, 0x2e, 0xbd, 0xe7, 0xaf, 0xfd, 0x35, 0xdd, 0x2e, - 0xc8, 0x7d, 0x4e, 0x2f, 0x1f, 0x7a, 0x63, 0xfe, 0xa4, 0x5e, 0x0b, 0x7c, 0xc1, 0x82, 0x27, 0x32, - 0x87, 0x65, 0xf8, 0xa3, 0x9c, 0x87, 0x4a, 0x83, 0x16, 0x6a, 0xa1, 0x58, 0x49, 0x0c, 0xa4, 0x04, - 0xe0, 0x04, 0xc7, 0x70, 0x3b, 0x29, 0xe5, 0xba, 0x9d, 0xfc, 0x8e, 0x05, 0x33, 0xe9, 0x4e, 0x1c, - 0x03, 0xdf, 0xaa, 0x9b, 0x7c, 0x6b, 0xa1, 0xbf, 0x8f, 0xdf, 0x83, 0x65, 0xfd, 0xe7, 0x09, 0x38, - 0xd5, 0x75, 0xea, 0xf1, 0x59, 0xfc, 0x39, 0x0b, 0xa6, 0x9b, 0x4c, 0x4f, 0xd0, 0xe2, 0xdd, 0xc4, - 0xb8, 0x72, 0x82, 0x04, 0x0f, 0x0c, 0x93, 0xe3, 0x5a, 0x4f, 0x17, 0x0a, 0xee, 0x6e, 0x0c, 0x7d, - 0xc5, 0x82, 0x19, 0xe7, 0x7e, 0xd4, 0xf5, 0x16, 0x8e, 0x58, 0x48, 0xaf, 0xe6, 0x98, 0xe5, 0x72, - 0x5e, 0xd1, 0x59, 0x9a, 0xdd, 0xdb, 0x9d, 0x9f, 0xc9, 0xc2, 0xc2, 0x99, 0xad, 0xd2, 0xef, 0xbb, - 0x29, 0xe2, 0x5e, 0x8a, 0x45, 0x6e, 0x66, 0x45, 0xc9, 0x70, 0xb6, 0x26, 0x21, 0x58, 0x51, 0x44, - 0x6f, 0x43, 0xa5, 0x29, 0x43, 0xdc, 0xd2, 0x6c, 0xb3, 0xc7, 0x34, 0x67, 0x45, 0xc4, 0xf1, 0xb8, - 0x03, 0x05, 0xc2, 0x09, 0x51, 0x74, 0x05, 0xca, 0xfe, 0x46, 0x24, 0x82, 0xc9, 0xf3, 0xbc, 0x8d, - 0x4c, 0x1f, 0x2f, 0x1e, 0x7f, 0x7b, 0x63, 0xb5, 0x8e, 0x29, 0x09, 0x4a, 0x29, 0xbc, 0xeb, 0x0a, - 0x7b, 0x74, 0x0e, 0x25, 0xbc, 0x54, 0xed, 0xa6, 0x84, 0x97, 0xaa, 0x98, 0x92, 0x40, 0x35, 0x18, - 0x64, 0x51, 0x35, 0xc2, 0xd8, 0x9c, 0x93, 0x71, 0xa0, 0x2b, 0x76, 0x88, 0x27, 0xc0, 0x64, 0xc5, - 0x98, 0x13, 0x42, 0xeb, 0x30, 0xd4, 0x60, 0x6f, 0x38, 0x08, 0x2b, 0x40, 0x5e, 0x2e, 0x8e, 0xae, - 0xf7, 0x1e, 0xf8, 0x0d, 0x1b, 0x2f, 0xc7, 0x82, 0x16, 0xa3, 0x4a, 0xda, 0x9b, 0x1b, 0x91, 0x50, - 0xf3, 0xf3, 0xa8, 0x76, 0xbd, 0xc6, 0x21, 0xa8, 0xb2, 0x72, 0x2c, 0x68, 0xa1, 0x2a, 0x94, 0x36, - 0x1a, 0x22, 0xe8, 0x26, 0xc7, 0xc8, 0x6c, 0x06, 0x53, 0x2f, 0x0d, 0xed, 0xed, 0xce, 0x97, 0x56, - 0x97, 0x71, 0x69, 0xa3, 0x81, 0x5e, 0x87, 0xe1, 0x0d, 0x1e, 0x1e, 0x2b, 0x72, 0xe6, 0x5e, 0xc8, - 0x8b, 0xe1, 0xed, 0x8a, 0xa5, 0xe5, 0xb1, 0x25, 0x02, 0x80, 0x25, 0x39, 0x96, 0x4e, 0x50, 0x05, - 0xfc, 0x8a, 0xa4, 0xb9, 0x0b, 0xfd, 0x05, 0x08, 0x0b, 0xed, 0x57, 0x95, 0x62, 0x8d, 0x22, 0x5d, - 0xf3, 0x8e, 0x7c, 0x8e, 0x86, 0x25, 0xcc, 0xcd, 0x5d, 0xf3, 0x99, 0xaf, 0xd7, 0xf0, 0x35, 0xaf, - 0x40, 0x38, 0x21, 0x8a, 0x3a, 0x30, 0xbe, 0x1d, 0xb5, 0x37, 0x89, 0xdc, 0xfa, 0x2c, 0x8b, 0xee, - 0xe8, 0xc5, 0x8f, 0xe7, 0xa4, 0x46, 0x16, 0x55, 0xbc, 0x30, 0xee, 0x38, 0xad, 0x2e, 0x0e, 0xc6, - 0xf2, 0xb7, 0xdd, 0xd6, 0xc9, 0x62, 0xb3, 0x15, 0xfa, 0x49, 0xde, 0xed, 0x04, 0x77, 0x77, 0x62, - 0x22, 0xb2, 0xec, 0xe6, 0x7c, 0x92, 0xd7, 0x38, 0x72, 0xf7, 0x27, 0x11, 0x00, 0x2c, 0xc9, 0xa9, - 0x29, 0x63, 0xdc, 0x78, 0xaa, 0xf0, 0x94, 0x75, 0x8d, 0x21, 0x99, 0x32, 0xc6, 0x7d, 0x13, 0xa2, - 0x8c, 0xeb, 0xb6, 0x37, 0x83, 0x38, 0xf0, 0x53, 0xbc, 0x7f, 0xba, 0x08, 0xd7, 0xad, 0x65, 0xd4, - 0xec, 0xe6, 0xba, 0x59, 0x58, 0x38, 0xb3, 0x55, 0xe4, 0xc3, 0x44, 0x3b, 0x08, 0xe3, 0xfb, 0x41, - 0x28, 0xd7, 0x21, 0x2a, 0xa4, 0x23, 0x1a, 0x75, 0x44, 0xdb, 0xcc, 0x85, 0xd8, 0x84, 0xe0, 0x14, - 0x75, 0xfa, 0xe9, 0xa2, 0x86, 0xd3, 0x22, 0x6b, 0x37, 0x67, 0x4f, 0x14, 0xf9, 0x74, 0x75, 0x8e, - 0xdc, 0xfd, 0xe9, 0x04, 0x00, 0x4b, 0x72, 0xf6, 0x2f, 0x0f, 0x75, 0x0b, 0x0e, 0x4c, 0x35, 0xf8, - 0x6b, 0xdd, 0x77, 0xbe, 0x9f, 0xe8, 0x5f, 0x03, 0x7e, 0x88, 0xb7, 0xbf, 0x5f, 0xb1, 0xe0, 0x54, - 0x3b, 0x53, 0x2c, 0x10, 0x47, 0x6f, 0xbf, 0x8a, 0x34, 0x9f, 0x16, 0x95, 0x0c, 0x3b, 0x1b, 0x8e, - 0x7b, 0xb4, 0x99, 0x16, 0xa6, 0xcb, 0xef, 0x59, 0x98, 0xbe, 0x03, 0x23, 0x4c, 0xfa, 0x4b, 0x52, - 0xdd, 0xf4, 0x99, 0x15, 0x86, 0x1d, 0xe2, 0xcb, 0x82, 0x04, 0x56, 0xc4, 0xe8, 0xc4, 0x3d, 0x9e, - 0x1e, 0x04, 0x26, 0x0c, 0x2c, 0x52, 0x30, 0x72, 0x4d, 0x65, 0x55, 0xcc, 0xc4, 0xe3, 0xb5, 0x83, - 0x90, 0xf7, 0xf3, 0x10, 0xf0, 0xc1, 0x8d, 0xa1, 0x6a, 0x86, 0xaa, 0x34, 0x64, 0x5e, 0xf0, 0xe4, - 0xab, 0x4b, 0xc7, 0x2b, 0xe2, 0xff, 0x03, 0x2b, 0x43, 0x22, 0xe5, 0x6a, 0xd9, 0xc7, 0x4d, 0xb5, - 0xec, 0xe9, 0xb4, 0x5a, 0xd6, 0x65, 0x8c, 0x31, 0x34, 0xb2, 0xe2, 0x29, 0x64, 0x8b, 0xe6, 0xf2, - 0xb1, 0x5b, 0x70, 0x26, 0x8f, 0xdd, 0x31, 0xa7, 0x2f, 0x57, 0x5d, 0x77, 0x26, 0x4e, 0x5f, 0xee, - 0x5a, 0x15, 0x33, 0x48, 0xd1, 0x74, 0x10, 0xf6, 0xcf, 0x97, 0xa0, 0x5c, 0x0b, 0xdc, 0x63, 0x30, - 0x2e, 0x5d, 0x36, 0x8c, 0x4b, 0x4f, 0xe5, 0xbe, 0x68, 0xd8, 0xd3, 0x94, 0x74, 0x33, 0x65, 0x4a, - 0xfa, 0x99, 0x7c, 0x52, 0x07, 0x1b, 0x8e, 0xbe, 0x57, 0x06, 0xfd, 0x4d, 0x46, 0xf4, 0xef, 0x0e, - 0xe3, 0x0b, 0x5c, 0x2e, 0xf6, 0x4c, 0xa3, 0x68, 0x83, 0xf9, 0x8c, 0xc9, 0x98, 0xc4, 0x9f, 0x58, - 0x97, 0xe0, 0x3b, 0xc4, 0x6b, 0x6e, 0xc6, 0xc4, 0x4d, 0x0f, 0xec, 0xf8, 0x5c, 0x82, 0xff, 0xdc, - 0x82, 0xc9, 0x54, 0xeb, 0xa8, 0x95, 0x15, 0xcc, 0x74, 0x48, 0x73, 0xd1, 0x74, 0x6e, 0xf4, 0xd3, - 0x02, 0x80, 0xb2, 0xfa, 0x4b, 0x93, 0x0c, 0x93, 0x4e, 0xd5, 0xb5, 0x40, 0x84, 0x35, 0x0c, 0xf4, - 0x12, 0x8c, 0xc6, 0x41, 0x3b, 0x68, 0x05, 0xcd, 0x9d, 0xab, 0x44, 0x26, 0x2a, 0x51, 0x77, 0x33, - 0xeb, 0x09, 0x08, 0xeb, 0x78, 0xf6, 0xf7, 0xcb, 0x90, 0x7e, 0xd1, 0xf3, 0xff, 0xad, 0xd3, 0x9f, - 0x9c, 0x75, 0xfa, 0x87, 0x16, 0x4c, 0xd1, 0xd6, 0x99, 0x93, 0x8e, 0x74, 0xdd, 0x55, 0xef, 0x59, - 0x58, 0x07, 0xbc, 0x67, 0xf1, 0x34, 0xe5, 0x76, 0x6e, 0xd0, 0x89, 0x85, 0x11, 0x49, 0x63, 0x62, - 0xb4, 0x14, 0x0b, 0xa8, 0xc0, 0x23, 0x61, 0x28, 0x62, 0x9c, 0x74, 0x3c, 0x12, 0x86, 0x58, 0x40, - 0xe5, 0x73, 0x17, 0x03, 0x3d, 0x9e, 0xbb, 0x60, 0xa9, 0xbe, 0x84, 0x63, 0x88, 0x10, 0x2b, 0xb4, - 0x54, 0x5f, 0xd2, 0x63, 0x24, 0xc1, 0xb1, 0xbf, 0x55, 0x86, 0xb1, 0x5a, 0xe0, 0x26, 0x3e, 0xf9, - 0x2f, 0x1a, 0x3e, 0xf9, 0x67, 0x52, 0x3e, 0xf9, 0x53, 0x3a, 0xee, 0xc3, 0x71, 0xc9, 0x17, 0x29, - 0xe1, 0xd8, 0x83, 0x2c, 0x87, 0x74, 0xc7, 0x37, 0x52, 0xc2, 0x29, 0x42, 0xd8, 0xa4, 0xfb, 0xd3, - 0xe4, 0x86, 0xff, 0xbf, 0x2c, 0x98, 0xa8, 0x05, 0x2e, 0x5d, 0xa0, 0x3f, 0x4d, 0xab, 0x51, 0x4f, - 0x24, 0x37, 0x74, 0x40, 0x22, 0xb9, 0x5f, 0xb5, 0x60, 0xb8, 0x16, 0xb8, 0xc7, 0x60, 0x60, 0x5d, - 0x35, 0x0d, 0xac, 0x4f, 0xe4, 0x72, 0xde, 0x1e, 0x36, 0xd5, 0xef, 0x94, 0x61, 0x9c, 0xf6, 0x38, - 0x68, 0xca, 0xef, 0x65, 0xcc, 0x8d, 0x55, 0x60, 0x6e, 0xa8, 0x48, 0x18, 0xb4, 0x5a, 0xc1, 0xfd, - 0xf4, 0xb7, 0x5b, 0x65, 0xa5, 0x58, 0x40, 0xd1, 0x39, 0x18, 0x69, 0x87, 0x64, 0xdb, 0x0b, 0x3a, - 0x51, 0x3a, 0x5e, 0xb2, 0x26, 0xca, 0xb1, 0xc2, 0x40, 0x2f, 0xc2, 0x58, 0xe4, 0xf9, 0x0d, 0x22, - 0xdd, 0x46, 0x06, 0x98, 0xdb, 0x08, 0xcf, 0xd9, 0xa9, 0x95, 0x63, 0x03, 0x0b, 0xdd, 0x81, 0x0a, - 0xfb, 0xcf, 0x76, 0x50, 0xff, 0xef, 0x55, 0xf0, 0xbc, 0x30, 0x92, 0x00, 0x4e, 0x68, 0xa1, 0x8b, - 0x00, 0xb1, 0x74, 0x70, 0x89, 0x44, 0x84, 0xae, 0x92, 0x4b, 0x95, 0xeb, 0x4b, 0x84, 0x35, 0x2c, - 0xf4, 0x1c, 0x54, 0x62, 0xc7, 0x6b, 0x5d, 0xf3, 0x7c, 0x12, 0x09, 0x07, 0x21, 0x91, 0x7f, 0x5b, - 0x14, 0xe2, 0x04, 0x4e, 0xcf, 0x7b, 0x16, 0xff, 0xcd, 0xdf, 0xc2, 0x19, 0x61, 0xd8, 0xec, 0xbc, - 0xbf, 0xa6, 0x4a, 0xb1, 0x86, 0x61, 0x5f, 0x82, 0x93, 0xb5, 0xc0, 0xad, 0x05, 0x61, 0xbc, 0x1a, - 0x84, 0xf7, 0x9d, 0xd0, 0x95, 0xdf, 0x6f, 0x5e, 0xa6, 0x7d, 0xa6, 0x67, 0xf2, 0x20, 0xb7, 0x39, - 0x1a, 0x69, 0x9c, 0x5f, 0x60, 0x27, 0x7e, 0x9f, 0xc1, 0x1e, 0x7f, 0x50, 0x06, 0x54, 0x63, 0x2e, - 0x38, 0xc6, 0xd3, 0x49, 0x9b, 0x30, 0x11, 0x91, 0x6b, 0x9e, 0xdf, 0x79, 0x20, 0x48, 0x15, 0x8b, - 0xae, 0xa9, 0xaf, 0xe8, 0x75, 0xb8, 0xa5, 0xc3, 0x2c, 0xc3, 0x29, 0xba, 0xf4, 0xcb, 0x86, 0x1d, - 0x7f, 0x31, 0xba, 0x15, 0x91, 0x50, 0x3c, 0x15, 0xf4, 0x51, 0x76, 0x11, 0x28, 0x0b, 0xf7, 0x77, - 0xe7, 0xcf, 0xe6, 0xb8, 0x37, 0xf8, 0xde, 0x03, 0x8a, 0xb9, 0x56, 0xc5, 0x09, 0x2d, 0xba, 0xd0, - 0xd8, 0x9f, 0x1b, 0x81, 0x8f, 0x83, 0x20, 0x96, 0x4b, 0x93, 0x3d, 0x33, 0xa1, 0x95, 0x63, 0x03, - 0x0b, 0x45, 0x80, 0xa2, 0x4e, 0xbb, 0xdd, 0x62, 0xf7, 0x92, 0x4e, 0xeb, 0x72, 0x18, 0x74, 0xda, - 0xdc, 0x6b, 0xbb, 0xbc, 0xb4, 0x4c, 0x79, 0x70, 0xbd, 0x0b, 0xba, 0xbf, 0x3b, 0xff, 0x4c, 0x7e, - 0x07, 0x19, 0xee, 0x5a, 0x15, 0x67, 0x90, 0x47, 0x18, 0x86, 0x37, 0x22, 0xf6, 0x5b, 0x44, 0x99, - 0x5f, 0x62, 0x86, 0xd0, 0x3a, 0x2b, 0xea, 0x8f, 0xbc, 0x24, 0x64, 0x7f, 0x9e, 0x1d, 0xb3, 0xec, - 0x25, 0x99, 0xb8, 0x13, 0x12, 0xb4, 0x05, 0xe3, 0x6d, 0x76, 0x94, 0xc6, 0x61, 0xd0, 0x6a, 0x11, - 0x29, 0xe5, 0x1e, 0xce, 0x15, 0x89, 0xbf, 0x1d, 0xa1, 0x93, 0xc3, 0x26, 0x75, 0xfb, 0xbf, 0x4c, - 0x30, 0x8e, 0x29, 0x2e, 0x9d, 0x87, 0x85, 0xd3, 0xb1, 0x90, 0x27, 0x3f, 0x54, 0xe4, 0x4d, 0xb8, - 0xe4, 0x34, 0x12, 0x2e, 0xcc, 0x58, 0x52, 0x41, 0x9f, 0x66, 0x2e, 0xf5, 0x9c, 0x4d, 0x15, 0x7f, - 0xe9, 0x92, 0xe3, 0x1b, 0xee, 0xf4, 0x82, 0x04, 0xd6, 0xc8, 0xa1, 0x6b, 0x30, 0x2e, 0x1e, 0x1e, - 0x11, 0xc6, 0x92, 0xb2, 0xa1, 0xe8, 0x8f, 0x63, 0x1d, 0xb8, 0x9f, 0x2e, 0xc0, 0x66, 0x65, 0xd4, - 0x84, 0xc7, 0xb5, 0x87, 0xb5, 0x32, 0xdc, 0xe6, 0x38, 0xff, 0x7b, 0x62, 0x6f, 0x77, 0xfe, 0xf1, - 0xf5, 0x83, 0x10, 0xf1, 0xc1, 0x74, 0xd0, 0x4d, 0x38, 0xe9, 0x34, 0x62, 0x6f, 0x9b, 0x54, 0x89, - 0xe3, 0xb6, 0x3c, 0x9f, 0x98, 0x79, 0x0b, 0x1e, 0xdd, 0xdb, 0x9d, 0x3f, 0xb9, 0x98, 0x85, 0x80, - 0xb3, 0xeb, 0xa1, 0x8f, 0x43, 0xc5, 0xf5, 0x23, 0x31, 0x07, 0x43, 0xc6, 0x3b, 0x72, 0x95, 0xea, - 0x8d, 0xba, 0x1a, 0x7f, 0xf2, 0x07, 0x27, 0x15, 0xd0, 0xbb, 0x30, 0xa6, 0x87, 0x31, 0x89, 0xf7, - 0x0b, 0x5f, 0x2e, 0xa4, 0xc5, 0x1b, 0xb1, 0x3f, 0xdc, 0x8e, 0xa8, 0xdc, 0x53, 0x8d, 0xb0, 0x20, - 0xa3, 0x09, 0xf4, 0x49, 0x40, 0x11, 0x09, 0xb7, 0xbd, 0x06, 0x59, 0x6c, 0xb0, 0x74, 0xbb, 0xcc, - 0xd2, 0x34, 0x62, 0xc4, 0x69, 0xa0, 0x7a, 0x17, 0x06, 0xce, 0xa8, 0x85, 0xae, 0x50, 0xfe, 0xa7, - 0x97, 0x0a, 0x6f, 0x62, 0x29, 0x9e, 0xce, 0x56, 0x49, 0x3b, 0x24, 0x0d, 0x27, 0x26, 0xae, 0x49, - 0x11, 0xa7, 0xea, 0xd1, 0xd3, 0x51, 0xbd, 0xa8, 0x00, 0xa6, 0x0f, 0x6c, 0xf7, 0xab, 0x0a, 0x54, - 0xdb, 0xdb, 0x0c, 0xa2, 0xf8, 0x06, 0x89, 0xef, 0x07, 0xe1, 0x3d, 0x91, 0xa2, 0x2c, 0xc9, 0x5d, - 0x98, 0x80, 0xb0, 0x8e, 0x47, 0x25, 0x39, 0x76, 0x85, 0xb7, 0x56, 0x65, 0xf7, 0x23, 0x23, 0xc9, - 0xde, 0xb9, 0xc2, 0x8b, 0xb1, 0x84, 0x4b, 0xd4, 0xb5, 0xda, 0x32, 0xbb, 0xeb, 0x48, 0xa1, 0xae, - 0xd5, 0x96, 0xb1, 0x84, 0xa3, 0xa0, 0xfb, 0xb5, 0xbe, 0x89, 0x22, 0xf7, 0x4e, 0xdd, 0xe7, 0x49, - 0xc1, 0x07, 0xfb, 0x1e, 0xc0, 0x94, 0x7a, 0x31, 0x90, 0x67, 0x71, 0x8b, 0x66, 0x27, 0xd9, 0xc2, - 0x39, 0x4c, 0x32, 0x38, 0x65, 0x5d, 0x5c, 0x4b, 0xd1, 0xc4, 0x5d, 0xad, 0x18, 0xd9, 0x32, 0xa6, - 0x72, 0x5f, 0xc9, 0x38, 0x0f, 0x95, 0xa8, 0x73, 0xd7, 0x0d, 0xb6, 0x1c, 0xcf, 0x67, 0x17, 0x12, - 0x9a, 0x28, 0x55, 0x97, 0x00, 0x9c, 0xe0, 0xa0, 0x1a, 0x8c, 0x38, 0x42, 0x91, 0x14, 0x17, 0x07, - 0x39, 0xd1, 0xf4, 0x52, 0xed, 0xe4, 0x36, 0x5e, 0xf9, 0x0f, 0x2b, 0x2a, 0xe8, 0x15, 0x18, 0x17, - 0xc1, 0x60, 0xc2, 0x69, 0xf3, 0x84, 0x19, 0x38, 0x50, 0xd7, 0x81, 0xd8, 0xc4, 0x45, 0x4d, 0x98, - 0xa0, 0x54, 0x12, 0x06, 0x38, 0x3b, 0xd3, 0x1f, 0x0f, 0xd5, 0xf2, 0x91, 0xeb, 0x64, 0x70, 0x8a, - 0x2c, 0x72, 0xe1, 0x31, 0xa7, 0x13, 0x07, 0x5b, 0x74, 0x27, 0x98, 0xfb, 0x64, 0x3d, 0xb8, 0x47, - 0xfc, 0xd9, 0x93, 0x6c, 0x05, 0x9e, 0xd9, 0xdb, 0x9d, 0x7f, 0x6c, 0xf1, 0x00, 0x3c, 0x7c, 0x20, - 0x15, 0xf4, 0x16, 0x8c, 0xc6, 0x41, 0x4b, 0xf8, 0x62, 0x47, 0xb3, 0xa7, 0x8a, 0x64, 0x05, 0x5a, - 0x57, 0x15, 0x74, 0x63, 0x8a, 0x22, 0x82, 0x75, 0x8a, 0xe8, 0x6d, 0x18, 0xa3, 0xdf, 0xfe, 0xba, - 0xd3, 0x6e, 0x7b, 0x7e, 0x33, 0x9a, 0x7d, 0xa4, 0xc8, 0x6c, 0xa9, 0x9c, 0x97, 0xe6, 0xfe, 0x65, - 0x45, 0x24, 0xc2, 0x06, 0xc5, 0xb9, 0x9f, 0x85, 0xe9, 0x2e, 0xa6, 0xd7, 0x97, 0x9b, 0xea, 0xbf, - 0x1f, 0x84, 0x8a, 0xb2, 0x5c, 0xa2, 0xf3, 0xa6, 0x91, 0xfa, 0xd1, 0xb4, 0x91, 0x7a, 0x84, 0x0a, - 0x8a, 0xba, 0x5d, 0xfa, 0x33, 0x19, 0xaf, 0xd0, 0x3f, 0x9b, 0xbb, 0xcb, 0x8b, 0xc7, 0xa8, 0xf5, - 0xf1, 0x56, 0x7f, 0xa2, 0xbd, 0x0e, 0x1c, 0xa8, 0xbd, 0x16, 0x7c, 0x59, 0x91, 0xea, 0xa9, 0xed, - 0xc0, 0x5d, 0xab, 0xa5, 0x1f, 0x0e, 0xab, 0xd1, 0x42, 0xcc, 0x61, 0x4c, 0xbf, 0xa0, 0xa7, 0x36, - 0xd3, 0x2f, 0x86, 0x0f, 0xa9, 0x5f, 0x48, 0x02, 0x38, 0xa1, 0x85, 0xb6, 0x61, 0xba, 0x61, 0xbe, - 0x03, 0xa7, 0x22, 0xcf, 0x9e, 0xef, 0xe3, 0x1d, 0xb6, 0x8e, 0xf6, 0x48, 0xcc, 0x72, 0x9a, 0x1e, - 0xee, 0x6e, 0x02, 0xbd, 0x02, 0x23, 0xef, 0x06, 0x11, 0xbb, 0x3e, 0x11, 0x47, 0x97, 0x8c, 0xf0, - 0x19, 0x79, 0xed, 0x66, 0x9d, 0x95, 0xef, 0xef, 0xce, 0x8f, 0xd6, 0x02, 0x57, 0xfe, 0xc5, 0xaa, - 0x02, 0xfa, 0x82, 0x05, 0x27, 0x8d, 0x9d, 0xac, 0x7a, 0x0e, 0x87, 0xe9, 0xf9, 0xe3, 0xa2, 0xe5, - 0x93, 0x6b, 0x59, 0x34, 0x71, 0x76, 0x53, 0xf6, 0x6f, 0x71, 0x53, 0xad, 0x30, 0xde, 0x90, 0xa8, - 0xd3, 0x3a, 0x8e, 0x07, 0x1b, 0x6e, 0x1a, 0x76, 0xa5, 0x87, 0x70, 0x59, 0xf0, 0x6f, 0x2d, 0x76, - 0x59, 0xb0, 0x4e, 0xb6, 0xda, 0x2d, 0x27, 0x3e, 0x0e, 0x2f, 0xe6, 0x4f, 0xc3, 0x48, 0x2c, 0x5a, - 0x2b, 0xf6, 0xda, 0x84, 0xd6, 0x3d, 0x76, 0x89, 0xa2, 0x8e, 0x3e, 0x59, 0x8a, 0x15, 0x41, 0xfb, - 0x5f, 0xf2, 0xaf, 0x22, 0x21, 0xc7, 0x60, 0x11, 0xb9, 0x61, 0x5a, 0x44, 0x9e, 0x29, 0x3c, 0x96, - 0x1e, 0x96, 0x91, 0xef, 0x9b, 0x23, 0x60, 0x1a, 0xca, 0x4f, 0xce, 0x6d, 0x96, 0xfd, 0x4b, 0x16, - 0xcc, 0x64, 0xb9, 0x15, 0x50, 0x11, 0x86, 0xeb, 0x47, 0xea, 0x9e, 0x4f, 0xcd, 0xea, 0x6d, 0x51, - 0x8e, 0x15, 0x46, 0xe1, 0xf4, 0xef, 0xfd, 0x25, 0xc3, 0xba, 0x09, 0xe6, 0x8b, 0x82, 0xe8, 0x55, - 0x1e, 0xb4, 0x60, 0xa9, 0x27, 0xff, 0xfa, 0x0b, 0x58, 0xb0, 0xbf, 0x5d, 0x82, 0x19, 0x6e, 0x6c, - 0x5f, 0xdc, 0x0e, 0x3c, 0xb7, 0x16, 0xb8, 0x22, 0x84, 0xc3, 0x85, 0xb1, 0xb6, 0xa6, 0xde, 0x16, - 0x4b, 0xae, 0xa3, 0x2b, 0xc4, 0x89, 0x4a, 0xa1, 0x97, 0x62, 0x83, 0x2a, 0x6d, 0x85, 0x6c, 0x7b, - 0x0d, 0x65, 0xbb, 0x2d, 0xf5, 0x7d, 0x32, 0xa8, 0x56, 0x56, 0x34, 0x3a, 0xd8, 0xa0, 0x7a, 0x04, - 0xaf, 0xb6, 0xd8, 0x7f, 0xcf, 0x82, 0x47, 0x7a, 0x24, 0xe0, 0xa1, 0xcd, 0xdd, 0x67, 0x17, 0x1c, - 0xe2, 0xc9, 0x4a, 0xd5, 0x1c, 0xbf, 0xf6, 0xc0, 0x02, 0x8a, 0xee, 0x02, 0xf0, 0x6b, 0x0b, 0x2a, - 0x4d, 0xa7, 0xef, 0xd4, 0x0b, 0xa6, 0xb9, 0xd0, 0x32, 0x20, 0x48, 0x4a, 0x58, 0xa3, 0x6a, 0x7f, - 0xb3, 0x0c, 0x83, 0xfc, 0x65, 0xf4, 0x1a, 0x0c, 0x6f, 0xf2, 0x14, 0xc3, 0xfd, 0x65, 0x38, 0x4e, - 0xd4, 0x17, 0x5e, 0x80, 0x25, 0x19, 0x74, 0x1d, 0x4e, 0x88, 0x20, 0xa2, 0x2a, 0x69, 0x39, 0x3b, - 0x52, 0x1f, 0xe6, 0x4f, 0x79, 0xc8, 0x9c, 0xf3, 0x27, 0xd6, 0xba, 0x51, 0x70, 0x56, 0x3d, 0xf4, - 0x6a, 0x57, 0x46, 0x40, 0x9e, 0xba, 0x59, 0xc9, 0xc2, 0x39, 0x59, 0x01, 0x5f, 0x81, 0xf1, 0x76, - 0x97, 0xe6, 0xaf, 0x3d, 0x40, 0x6d, 0x6a, 0xfb, 0x26, 0x2e, 0xf3, 0xa1, 0xe8, 0x30, 0xdf, 0x91, - 0xf5, 0xcd, 0x90, 0x44, 0x9b, 0x41, 0xcb, 0x15, 0x6f, 0xa7, 0x26, 0x3e, 0x14, 0x29, 0x38, 0xee, - 0xaa, 0x41, 0xa9, 0x6c, 0x38, 0x5e, 0xab, 0x13, 0x92, 0x84, 0xca, 0x90, 0x49, 0x65, 0x35, 0x05, - 0xc7, 0x5d, 0x35, 0xe8, 0xda, 0x3a, 0x29, 0x9e, 0xdb, 0x94, 0xe1, 0xe6, 0x82, 0x05, 0x7d, 0x0a, - 0x86, 0x65, 0x28, 0x40, 0xa1, 0xac, 0x28, 0xc2, 0x41, 0x42, 0x3d, 0xdd, 0xa9, 0x3d, 0xed, 0x26, - 0x82, 0x00, 0x24, 0xbd, 0xc3, 0x3c, 0xeb, 0xf8, 0x67, 0x16, 0x9c, 0xc8, 0x70, 0x69, 0xe3, 0x2c, - 0xad, 0xe9, 0x45, 0xb1, 0x7a, 0x58, 0x42, 0x63, 0x69, 0xbc, 0x1c, 0x2b, 0x0c, 0xba, 0x5b, 0x38, - 0xd3, 0x4c, 0x33, 0x4a, 0xe1, 0xea, 0x22, 0xa0, 0xfd, 0x31, 0x4a, 0x74, 0x06, 0x06, 0x3a, 0x11, - 0x09, 0xe5, 0x1b, 0x8b, 0x92, 0xcf, 0xdf, 0x8a, 0x48, 0x88, 0x19, 0x84, 0x8a, 0xad, 0x4d, 0x65, - 0x11, 0xd4, 0xc4, 0x56, 0x66, 0xdd, 0xc3, 0x1c, 0x66, 0x7f, 0xad, 0x0c, 0x93, 0x29, 0xd7, 0x56, - 0xda, 0x91, 0xad, 0xc0, 0xf7, 0xe2, 0x40, 0x65, 0xaa, 0xe3, 0xcf, 0xba, 0x91, 0xf6, 0xe6, 0x75, - 0x51, 0x8e, 0x15, 0x06, 0x7a, 0x5a, 0x3e, 0xab, 0x9b, 0x7e, 0x30, 0x63, 0xa9, 0x6a, 0xbc, 0xac, - 0x5b, 0xf4, 0xb1, 0x9b, 0x27, 0x61, 0xa0, 0x1d, 0xa8, 0x57, 0xd2, 0xd5, 0xf7, 0xc4, 0x4b, 0xd5, - 0x5a, 0x10, 0xb4, 0x30, 0x03, 0xa2, 0xa7, 0xc4, 0xe8, 0x53, 0x37, 0x34, 0xd8, 0x71, 0x83, 0x48, - 0x9b, 0x82, 0x67, 0x60, 0xf8, 0x1e, 0xd9, 0x09, 0x3d, 0xbf, 0x99, 0xbe, 0x9f, 0xba, 0xca, 0x8b, - 0xb1, 0x84, 0x9b, 0xf9, 0xe3, 0x87, 0x8f, 0xf8, 0x41, 0x9b, 0x91, 0xdc, 0x73, 0xf0, 0x3b, 0x16, - 0x4c, 0xb2, 0x84, 0xb0, 0x22, 0xd9, 0x81, 0x17, 0xf8, 0xc7, 0x20, 0x63, 0x3c, 0x09, 0x83, 0x21, - 0x6d, 0x34, 0xfd, 0x22, 0x05, 0xeb, 0x09, 0xe6, 0x30, 0xf4, 0x18, 0x0c, 0xb0, 0x2e, 0xd0, 0xcf, - 0x38, 0xc6, 0xf3, 0xce, 0x57, 0x9d, 0xd8, 0xc1, 0xac, 0x94, 0x45, 0x93, 0x61, 0xd2, 0x6e, 0x79, - 0xbc, 0xd3, 0x89, 0x41, 0xf7, 0xfd, 0x16, 0x4d, 0x96, 0xd9, 0xc9, 0x87, 0x15, 0x4d, 0x96, 0x4d, - 0xfc, 0x60, 0x39, 0xff, 0xbf, 0x96, 0xe0, 0x74, 0x66, 0xbd, 0xe4, 0xa6, 0x7b, 0xd5, 0xb8, 0xe9, - 0xbe, 0x98, 0xba, 0xe9, 0xb6, 0x0f, 0xae, 0xfd, 0x70, 0xee, 0xbe, 0xb3, 0xaf, 0xa4, 0xcb, 0xc7, - 0x78, 0x25, 0x3d, 0x50, 0x54, 0xc4, 0x19, 0xcc, 0x11, 0x71, 0x7e, 0xdf, 0x82, 0x47, 0x33, 0xa7, - 0xec, 0x7d, 0x17, 0xbe, 0x97, 0xd9, 0xcb, 0x1e, 0xda, 0xc9, 0x2f, 0x96, 0x7b, 0x8c, 0x8a, 0xe9, - 0x29, 0x67, 0x29, 0x17, 0x62, 0xc0, 0x48, 0x08, 0x6f, 0x63, 0x9c, 0x03, 0xf1, 0x32, 0xac, 0xa0, - 0x28, 0xd2, 0xc2, 0xdf, 0x78, 0x27, 0x57, 0x0e, 0xb9, 0xa1, 0x16, 0x4c, 0x4b, 0xbc, 0x9e, 0xc1, - 0x21, 0x1d, 0x14, 0x77, 0x47, 0xd3, 0x3c, 0xcb, 0x87, 0xd1, 0x3c, 0xc7, 0xb2, 0xb5, 0x4e, 0xb4, - 0x08, 0x93, 0x5b, 0x9e, 0xcf, 0xde, 0xc1, 0x35, 0xa5, 0x27, 0x15, 0x83, 0x7c, 0xdd, 0x04, 0xe3, - 0x34, 0xfe, 0xdc, 0x2b, 0x30, 0x7e, 0x78, 0xeb, 0xda, 0x8f, 0xca, 0xf0, 0xc1, 0x03, 0x98, 0x02, - 0x3f, 0x1d, 0x8c, 0xef, 0xa2, 0x9d, 0x0e, 0x5d, 0xdf, 0xa6, 0x06, 0x33, 0x1b, 0x9d, 0x56, 0x6b, - 0x87, 0xf9, 0x89, 0x11, 0x57, 0x62, 0x08, 0xa1, 0x46, 0xe5, 0x87, 0x5e, 0xcd, 0xc0, 0xc1, 0x99, - 0x35, 0xd1, 0x27, 0x01, 0x05, 0x77, 0x59, 0x82, 0x63, 0x37, 0xc9, 0x50, 0xc1, 0x3e, 0x41, 0x39, - 0xd9, 0xaa, 0x37, 0xbb, 0x30, 0x70, 0x46, 0x2d, 0x2a, 0xa7, 0xb2, 0xb7, 0xfa, 0x55, 0xb7, 0x52, - 0x72, 0x2a, 0xd6, 0x81, 0xd8, 0xc4, 0x45, 0x97, 0x61, 0xda, 0xd9, 0x76, 0x3c, 0x9e, 0xb0, 0x4c, - 0x12, 0xe0, 0x82, 0xaa, 0xb2, 0x5f, 0x2d, 0xa6, 0x11, 0x70, 0x77, 0x1d, 0xd4, 0x36, 0x0c, 0x92, - 0xfc, 0xb1, 0x84, 0x8f, 0x1f, 0x62, 0x05, 0x17, 0x36, 0x51, 0xda, 0x7f, 0x62, 0xd1, 0xa3, 0x2f, - 0xe3, 0xc9, 0x54, 0x3a, 0x23, 0xca, 0xc0, 0xa6, 0x85, 0xf3, 0xa9, 0x19, 0x59, 0xd6, 0x81, 0xd8, - 0xc4, 0xe5, 0x4b, 0x23, 0x4a, 0xdc, 0xd6, 0x0d, 0x69, 0x53, 0x44, 0xc2, 0x2a, 0x0c, 0x2a, 0x41, - 0xbb, 0xde, 0xb6, 0x17, 0x05, 0xa1, 0xd8, 0x40, 0x7d, 0x3a, 0x31, 0x27, 0xfc, 0xb2, 0xca, 0xc9, - 0x60, 0x49, 0xcf, 0xfe, 0x7a, 0x09, 0xc6, 0x65, 0x8b, 0xaf, 0x75, 0x82, 0xd8, 0x39, 0x86, 0x23, - 0xfd, 0x35, 0xe3, 0x48, 0x3f, 0x5f, 0x2c, 0x30, 0x98, 0x75, 0xae, 0xe7, 0x51, 0xfe, 0xa9, 0xd4, - 0x51, 0x7e, 0xa1, 0x1f, 0xa2, 0x07, 0x1f, 0xe1, 0xff, 0xda, 0x82, 0x69, 0x03, 0xff, 0x18, 0x4e, - 0x92, 0x9a, 0x79, 0x92, 0x3c, 0xd7, 0xc7, 0x68, 0x7a, 0x9c, 0x20, 0xdf, 0x2a, 0xa5, 0x46, 0xc1, - 0x4e, 0x8e, 0xcf, 0xc1, 0xc0, 0xa6, 0x13, 0xba, 0xc5, 0xb2, 0x77, 0x76, 0x55, 0x5f, 0xb8, 0xe2, - 0x84, 0x2e, 0xe7, 0xff, 0xe7, 0xd4, 0x83, 0x6e, 0x4e, 0xe8, 0xe6, 0x46, 0x73, 0xb0, 0x46, 0xd1, - 0x25, 0x18, 0x8a, 0x1a, 0x41, 0x5b, 0xf9, 0xbb, 0x9e, 0xe1, 0x8f, 0xbd, 0xd1, 0x92, 0xfd, 0xdd, - 0x79, 0x64, 0x36, 0x47, 0x8b, 0xb1, 0xc0, 0x9f, 0x6b, 0x42, 0x45, 0x35, 0x7d, 0xa4, 0x1e, 0xff, - 0xff, 0xa9, 0x0c, 0x27, 0x32, 0xd6, 0x0a, 0xfa, 0xbc, 0x31, 0x6f, 0xaf, 0xf4, 0xbd, 0xd8, 0xde, - 0xe3, 0xcc, 0x7d, 0x9e, 0x69, 0x4a, 0xae, 0x58, 0x1d, 0x87, 0x68, 0xfe, 0x56, 0x44, 0xd2, 0xcd, - 0xd3, 0xa2, 0xfc, 0xe6, 0x69, 0xb3, 0xc7, 0x36, 0xfd, 0xb4, 0x21, 0xd5, 0xd3, 0x23, 0xfd, 0xce, - 0xbf, 0x30, 0x00, 0x33, 0x59, 0x19, 0x08, 0xd0, 0x97, 0xac, 0xd4, 0xa3, 0x1f, 0xaf, 0xf6, 0x9f, - 0xc6, 0x80, 0xbf, 0x04, 0x22, 0xf2, 0x03, 0x2d, 0x98, 0xcf, 0x80, 0xe4, 0xce, 0xb8, 0x68, 0x9d, - 0xc5, 0x61, 0x85, 0xfc, 0x01, 0x17, 0xc9, 0x15, 0x3e, 0x71, 0x88, 0xae, 0x88, 0x37, 0x60, 0xa2, - 0x54, 0x1c, 0x96, 0x2c, 0xce, 0x8f, 0xc3, 0x92, 0x7d, 0x98, 0xf3, 0x60, 0x54, 0x1b, 0xd7, 0x91, - 0x2e, 0x83, 0x7b, 0xf4, 0x88, 0xd2, 0xfa, 0x7d, 0xa4, 0x4b, 0xe1, 0x6f, 0x5b, 0x90, 0x72, 0x4e, - 0x53, 0x66, 0x19, 0xab, 0xa7, 0x59, 0xe6, 0x0c, 0x0c, 0x84, 0x41, 0x8b, 0xa4, 0x9f, 0x8f, 0xc0, - 0x41, 0x8b, 0x60, 0x06, 0x51, 0x6f, 0x3c, 0x97, 0x7b, 0xbd, 0xf1, 0x4c, 0xf5, 0xf4, 0x16, 0xd9, - 0x26, 0xd2, 0x48, 0xa2, 0xd8, 0xf8, 0x35, 0x5a, 0x88, 0x39, 0xcc, 0xfe, 0xf5, 0x01, 0x38, 0x91, - 0x11, 0xd5, 0x47, 0x35, 0xa4, 0xa6, 0x13, 0x93, 0xfb, 0xce, 0x4e, 0x3a, 0x8d, 0xed, 0x65, 0x5e, - 0x8c, 0x25, 0x9c, 0x39, 0xd5, 0xf2, 0x54, 0x78, 0x29, 0xd3, 0x95, 0xc8, 0x80, 0x27, 0xa0, 0x47, - 0xff, 0x1a, 0xf0, 0x45, 0x80, 0x28, 0x6a, 0xad, 0xf8, 0x54, 0xc2, 0x73, 0x85, 0xf3, 0x6e, 0x92, - 0x41, 0xb1, 0x7e, 0x4d, 0x40, 0xb0, 0x86, 0x85, 0xaa, 0x30, 0xd5, 0x0e, 0x83, 0x98, 0x1b, 0x06, - 0xab, 0xdc, 0xd5, 0x62, 0xd0, 0x8c, 0x1a, 0xab, 0xa5, 0xe0, 0xb8, 0xab, 0x06, 0x7a, 0x09, 0x46, - 0x45, 0x24, 0x59, 0x2d, 0x08, 0x5a, 0xc2, 0x8c, 0xa4, 0xee, 0xe3, 0xeb, 0x09, 0x08, 0xeb, 0x78, - 0x5a, 0x35, 0x66, 0x6d, 0x1c, 0xce, 0xac, 0xc6, 0x2d, 0x8e, 0x1a, 0x5e, 0x2a, 0x4f, 0xc9, 0x48, - 0xa1, 0x3c, 0x25, 0x89, 0x61, 0xad, 0x52, 0xf8, 0x22, 0x06, 0x72, 0x0d, 0x50, 0xbf, 0x5b, 0x86, - 0x21, 0xfe, 0x29, 0x8e, 0x41, 0xca, 0xab, 0x09, 0x93, 0x52, 0xa1, 0x9c, 0x10, 0xbc, 0x57, 0x0b, - 0x55, 0x27, 0x76, 0x38, 0x6b, 0x52, 0x3b, 0x24, 0x31, 0x43, 0xa1, 0x05, 0x63, 0x0f, 0xcd, 0xa5, - 0x2c, 0x25, 0xc0, 0x69, 0x68, 0x3b, 0x6a, 0x13, 0x20, 0x62, 0x2f, 0xd2, 0x52, 0x1a, 0x22, 0xc7, - 0xee, 0x8b, 0x85, 0xfa, 0x51, 0x57, 0xd5, 0x78, 0x6f, 0x92, 0x65, 0xa9, 0x00, 0x58, 0xa3, 0x3d, - 0xf7, 0x32, 0x54, 0x14, 0x72, 0x9e, 0x0a, 0x39, 0xa6, 0xb3, 0xb6, 0xff, 0x0f, 0x26, 0x53, 0x6d, - 0xf5, 0xa5, 0x81, 0xfe, 0xa6, 0x05, 0x93, 0xbc, 0xcb, 0x2b, 0xfe, 0xb6, 0x60, 0x05, 0x5f, 0xb4, - 0x60, 0xa6, 0x95, 0xb1, 0x13, 0xc5, 0x67, 0x3e, 0xcc, 0x1e, 0x56, 0xca, 0x67, 0x16, 0x14, 0x67, - 0xb6, 0x86, 0xce, 0xc2, 0x08, 0x7f, 0x60, 0xdb, 0x69, 0x09, 0x4f, 0xf1, 0x31, 0x9e, 0x5d, 0x9c, - 0x97, 0x61, 0x05, 0xb5, 0x7f, 0x6c, 0xc1, 0x34, 0x1f, 0xc4, 0x55, 0xb2, 0xa3, 0xd4, 0xab, 0xf7, - 0xc9, 0x30, 0x44, 0x1e, 0xf5, 0x52, 0x8f, 0x3c, 0xea, 0xfa, 0x28, 0xcb, 0x07, 0x8e, 0xf2, 0xdb, - 0x16, 0x88, 0x15, 0x7a, 0x0c, 0xfa, 0xc3, 0x9a, 0xa9, 0x3f, 0x7c, 0xa8, 0xc8, 0xa2, 0xef, 0xa1, - 0x38, 0xfc, 0x8d, 0x12, 0x4c, 0x71, 0x84, 0xe4, 0x46, 0xe6, 0xfd, 0xf2, 0x71, 0xfa, 0x7b, 0xdf, - 0x47, 0x3d, 0xd3, 0x9a, 0x3d, 0x52, 0xe3, 0x5b, 0x0e, 0x1c, 0xf8, 0x2d, 0xff, 0x87, 0x05, 0x88, - 0xcf, 0x49, 0xfa, 0x75, 0x72, 0x7e, 0xba, 0x69, 0xe6, 0x80, 0x84, 0x73, 0x28, 0x08, 0xd6, 0xb0, - 0x1e, 0xf2, 0x10, 0x52, 0xf7, 0x61, 0xe5, 0xfc, 0xfb, 0xb0, 0x3e, 0x46, 0xfd, 0xdf, 0xca, 0x90, - 0x76, 0xd6, 0x44, 0x6f, 0xc3, 0x58, 0xc3, 0x69, 0x3b, 0x77, 0xbd, 0x96, 0x17, 0x7b, 0x24, 0x2a, - 0x76, 0xe1, 0xbe, 0xac, 0xd5, 0x10, 0xd7, 0x50, 0x5a, 0x09, 0x36, 0x28, 0xa2, 0x05, 0x80, 0x76, - 0xe8, 0x6d, 0x7b, 0x2d, 0xd2, 0x64, 0x1a, 0x0f, 0x8b, 0x39, 0xe1, 0x77, 0xc7, 0xb2, 0x14, 0x6b, - 0x18, 0x19, 0x31, 0x0a, 0xe5, 0xe3, 0x88, 0x51, 0x18, 0x38, 0xc2, 0x18, 0x85, 0xc1, 0x42, 0x31, - 0x0a, 0x18, 0x4e, 0xc9, 0x83, 0x9e, 0xfe, 0x5f, 0xf5, 0x5a, 0x44, 0xc8, 0x79, 0x3c, 0x7e, 0x65, - 0x6e, 0x6f, 0x77, 0xfe, 0x14, 0xce, 0xc4, 0xc0, 0x3d, 0x6a, 0xda, 0x1d, 0x38, 0x51, 0x27, 0xa1, - 0x7c, 0x85, 0x4e, 0xed, 0xbb, 0xcf, 0x40, 0x25, 0x4c, 0x6d, 0xf9, 0x3e, 0x93, 0x14, 0x68, 0x99, - 0xdd, 0xe4, 0x16, 0x4f, 0x48, 0xda, 0x7f, 0xb5, 0x04, 0xc3, 0xc2, 0xa5, 0xf3, 0x18, 0x04, 0x95, - 0xab, 0x86, 0x39, 0xea, 0x99, 0x3c, 0x5e, 0xc9, 0xba, 0xd5, 0xd3, 0x10, 0x55, 0x4f, 0x19, 0xa2, - 0x9e, 0x2b, 0x46, 0xee, 0x60, 0x13, 0xd4, 0x3f, 0x2e, 0xc3, 0x84, 0xe9, 0xe2, 0x7a, 0x0c, 0xd3, - 0xf2, 0x3a, 0x0c, 0x47, 0xc2, 0xdb, 0xba, 0x54, 0xc4, 0xbf, 0x2f, 0xfd, 0x89, 0x93, 0x5b, 0x7b, - 0xe1, 0x5f, 0x2d, 0xc9, 0x65, 0x3a, 0x74, 0x97, 0x8f, 0xc5, 0xa1, 0x3b, 0xcf, 0xf3, 0x78, 0xe0, - 0x61, 0x78, 0x1e, 0xdb, 0x3f, 0x60, 0xc7, 0x83, 0x5e, 0x7e, 0x0c, 0x47, 0xfe, 0x6b, 0xe6, 0x41, - 0x72, 0xae, 0xd0, 0xba, 0x13, 0xdd, 0xeb, 0x71, 0xf4, 0x7f, 0xd7, 0x82, 0x51, 0x81, 0x78, 0x0c, - 0x03, 0xf8, 0xa4, 0x39, 0x80, 0xa7, 0x0a, 0x0d, 0xa0, 0x47, 0xcf, 0xbf, 0x5e, 0x52, 0x3d, 0xaf, - 0x05, 0x61, 0x5c, 0x28, 0xff, 0xf9, 0x08, 0x55, 0x13, 0x83, 0x46, 0xd0, 0x12, 0xc2, 0xde, 0x63, - 0x49, 0xb8, 0x22, 0x2f, 0xdf, 0xd7, 0x7e, 0x63, 0x85, 0xcd, 0xa2, 0xe9, 0x82, 0x30, 0x16, 0x87, - 0x6d, 0x12, 0x4d, 0x17, 0x84, 0x31, 0x66, 0x10, 0xe4, 0x02, 0xc4, 0x4e, 0xd8, 0x24, 0x31, 0x2d, - 0x13, 0x91, 0xbe, 0xbd, 0x77, 0x6b, 0x27, 0xf6, 0x5a, 0x0b, 0x9e, 0x1f, 0x47, 0x71, 0xb8, 0xb0, - 0xe6, 0xc7, 0x37, 0x43, 0xae, 0x20, 0x68, 0xf1, 0x87, 0x8a, 0x16, 0xd6, 0xe8, 0xca, 0x90, 0x12, - 0xd6, 0xc6, 0xa0, 0x79, 0xdb, 0x74, 0x43, 0x94, 0x63, 0x85, 0x61, 0xbf, 0xcc, 0x38, 0x3b, 0x9b, - 0xa0, 0xfe, 0x42, 0x03, 0x7f, 0x61, 0x58, 0x4d, 0x2d, 0x33, 0x21, 0xdf, 0xd0, 0x03, 0x10, 0x8b, - 0xb2, 0x4f, 0xda, 0x05, 0xdd, 0xe7, 0x3a, 0x89, 0x57, 0x44, 0xa4, 0xeb, 0x8a, 0xf2, 0xe5, 0xc2, - 0x1c, 0xb9, 0x8f, 0x4b, 0x49, 0x96, 0x88, 0x91, 0x65, 0x9f, 0x5b, 0xab, 0xa5, 0xb3, 0xd6, 0x2f, - 0x4b, 0x00, 0x4e, 0x70, 0xd0, 0x79, 0xa1, 0x7c, 0x72, 0xeb, 0xcc, 0x07, 0x53, 0xca, 0xa7, 0x9c, - 0x12, 0x4d, 0xfb, 0xbc, 0x00, 0xa3, 0xea, 0x21, 0xa0, 0x1a, 0x7f, 0x82, 0xa5, 0xc2, 0x65, 0xb1, - 0x95, 0xa4, 0x18, 0xeb, 0x38, 0x68, 0x1d, 0x26, 0x23, 0xfe, 0x4a, 0x91, 0x8c, 0xed, 0x10, 0x46, - 0x86, 0x67, 0xe5, 0x85, 0x66, 0xdd, 0x04, 0xef, 0xb3, 0x22, 0xbe, 0x95, 0x65, 0x34, 0x48, 0x9a, - 0x04, 0x7a, 0x15, 0x26, 0x5a, 0xfa, 0x13, 0xac, 0x35, 0x61, 0x83, 0x50, 0x2e, 0x6a, 0xc6, 0x03, - 0xad, 0x35, 0x9c, 0xc2, 0x46, 0xaf, 0xc3, 0xac, 0x5e, 0x22, 0x12, 0x22, 0x39, 0x7e, 0x93, 0x44, - 0xe2, 0x45, 0x93, 0xc7, 0xf6, 0x76, 0xe7, 0x67, 0xaf, 0xf5, 0xc0, 0xc1, 0x3d, 0x6b, 0xa3, 0x4b, - 0x30, 0x26, 0x87, 0xaf, 0x45, 0x42, 0x25, 0xce, 0x91, 0x1a, 0x0c, 0x1b, 0x98, 0xe8, 0x3e, 0x9c, - 0x94, 0xff, 0xd7, 0x43, 0x67, 0x63, 0xc3, 0x6b, 0x88, 0x90, 0xb4, 0x51, 0x46, 0x62, 0x51, 0xfa, - 0x96, 0xaf, 0x64, 0x21, 0xed, 0xef, 0xce, 0x9f, 0x11, 0xb3, 0x96, 0x09, 0x67, 0x1f, 0x31, 0x9b, - 0x3e, 0xba, 0x0e, 0x27, 0x36, 0x89, 0xd3, 0x8a, 0x37, 0x97, 0x37, 0x49, 0xe3, 0x9e, 0xdc, 0x58, - 0x2c, 0xbe, 0x4a, 0x73, 0x1f, 0xbc, 0xd2, 0x8d, 0x82, 0xb3, 0xea, 0xbd, 0xb7, 0xfb, 0xe7, 0xcf, - 0xd1, 0xca, 0x9a, 0xfc, 0x80, 0xde, 0x81, 0x31, 0x7d, 0xae, 0xd3, 0x82, 0x41, 0xfe, 0xf3, 0xbc, - 0x42, 0x0e, 0x51, 0x5f, 0x40, 0x87, 0x61, 0x83, 0xb6, 0x7d, 0x13, 0x86, 0xea, 0x3b, 0x51, 0x23, - 0x6e, 0x15, 0x60, 0xae, 0x4f, 0x1a, 0x43, 0x48, 0x36, 0x3e, 0x7b, 0x2a, 0x4c, 0x8c, 0xc8, 0xfe, - 0xb2, 0x05, 0x93, 0xeb, 0xcb, 0xb5, 0x7a, 0xd0, 0xb8, 0x47, 0xe2, 0x45, 0xae, 0x67, 0x62, 0xc1, - 0x5b, 0xad, 0x43, 0xf2, 0xcc, 0x2c, 0x6e, 0x7c, 0x06, 0x06, 0x36, 0x83, 0x28, 0x4e, 0xdb, 0x6a, - 0xaf, 0x04, 0x51, 0x8c, 0x19, 0xc4, 0xfe, 0x53, 0x0b, 0x06, 0xd9, 0x4b, 0x58, 0x79, 0xaf, 0xa8, - 0x15, 0x19, 0x17, 0x7a, 0x09, 0x86, 0xc8, 0xc6, 0x06, 0x69, 0xc4, 0x82, 0xcd, 0xc8, 0xb8, 0x87, - 0xa1, 0x15, 0x56, 0x4a, 0x99, 0x07, 0x6b, 0x8c, 0xff, 0xc5, 0x02, 0x19, 0x7d, 0x1a, 0x2a, 0xb1, - 0xb7, 0x45, 0x16, 0x5d, 0x57, 0x18, 0x47, 0xfb, 0x73, 0xc5, 0x51, 0xcc, 0x6c, 0x5d, 0x12, 0xc1, - 0x09, 0x3d, 0xfb, 0xab, 0x25, 0x80, 0x24, 0xae, 0x29, 0x6f, 0x98, 0x4b, 0x5d, 0x8f, 0xc5, 0x3d, - 0x9d, 0xf1, 0x58, 0x1c, 0x4a, 0x08, 0x66, 0x3c, 0x15, 0xa7, 0xa6, 0xaa, 0x5c, 0x68, 0xaa, 0x06, - 0xfa, 0x99, 0xaa, 0x65, 0x98, 0x4e, 0xe2, 0xb2, 0xcc, 0x00, 0x57, 0x96, 0xd0, 0x75, 0x3d, 0x0d, - 0xc4, 0xdd, 0xf8, 0xf6, 0x57, 0x2d, 0x10, 0xce, 0x9b, 0x05, 0x16, 0xb4, 0x2b, 0x1f, 0x76, 0x32, - 0x32, 0xcf, 0x3d, 0x5b, 0xc4, 0xaf, 0x55, 0xe4, 0x9b, 0x53, 0x5b, 0xcc, 0xc8, 0x32, 0x67, 0x50, - 0xb5, 0x7f, 0xcd, 0x82, 0x51, 0x0e, 0xbe, 0xce, 0x64, 0xfe, 0xfc, 0x7e, 0xf5, 0x95, 0x2d, 0x98, - 0xbd, 0x79, 0x44, 0x09, 0xab, 0xac, 0xb1, 0xfa, 0x9b, 0x47, 0x12, 0x80, 0x13, 0x1c, 0xf4, 0x0c, - 0x0c, 0x47, 0x9d, 0xbb, 0x0c, 0x3d, 0xe5, 0xc9, 0x59, 0xe7, 0xc5, 0x58, 0xc2, 0xed, 0x7f, 0x5a, - 0x82, 0xa9, 0xb4, 0x23, 0x2f, 0xc2, 0x30, 0xc4, 0x75, 0x80, 0xb4, 0xf8, 0x78, 0x90, 0x5d, 0x4a, - 0x73, 0x04, 0x06, 0xfe, 0x72, 0x37, 0xbb, 0x40, 0x10, 0x94, 0xd0, 0x06, 0x8c, 0xba, 0xc1, 0x7d, - 0xff, 0xbe, 0x13, 0xba, 0x8b, 0xb5, 0x35, 0xf1, 0x25, 0x72, 0x5c, 0xaf, 0xaa, 0x49, 0x05, 0xdd, - 0xcd, 0x98, 0xd9, 0x49, 0x12, 0x10, 0xd6, 0x09, 0x53, 0x9d, 0xb7, 0x11, 0xf8, 0x1b, 0x5e, 0xf3, - 0xba, 0xd3, 0x2e, 0xe6, 0x64, 0xb0, 0x2c, 0xd1, 0xb5, 0x36, 0xc6, 0x45, 0x5e, 0x0d, 0x0e, 0xc0, - 0x09, 0x49, 0xfb, 0x57, 0x67, 0xc0, 0x58, 0x0b, 0x46, 0x4a, 0x5f, 0xeb, 0xa1, 0xa7, 0xf4, 0x7d, - 0x13, 0x46, 0xc8, 0x56, 0x3b, 0xde, 0xa9, 0x7a, 0x61, 0xb1, 0x04, 0xed, 0x2b, 0x02, 0xbb, 0x9b, - 0xba, 0x84, 0x60, 0x45, 0xb1, 0x47, 0x82, 0xe6, 0xf2, 0xfb, 0x22, 0x41, 0xf3, 0xc0, 0x5f, 0x48, - 0x82, 0xe6, 0xd7, 0x61, 0xb8, 0xe9, 0xc5, 0x98, 0xb4, 0x03, 0x91, 0xa8, 0x24, 0x67, 0xf1, 0x5c, - 0xe6, 0xc8, 0xdd, 0xa9, 0x3b, 0x05, 0x00, 0x4b, 0x72, 0x68, 0x5d, 0x6d, 0xaa, 0xa1, 0x22, 0xc7, - 0x7d, 0xb7, 0xdd, 0x32, 0x73, 0x5b, 0x89, 0x84, 0xcc, 0xc3, 0xef, 0x3d, 0x21, 0xb3, 0x4a, 0xa3, - 0x3c, 0xf2, 0xb0, 0xd2, 0x28, 0x1b, 0xe9, 0xa8, 0x2b, 0x47, 0x91, 0x8e, 0xfa, 0xab, 0x16, 0x9c, - 0x6c, 0x67, 0x25, 0x73, 0x17, 0x09, 0x91, 0x7f, 0xf6, 0x10, 0xe9, 0xed, 0x8d, 0xa6, 0x59, 0xe2, - 0x85, 0x4c, 0x34, 0x9c, 0xdd, 0xb0, 0xcc, 0x6b, 0x3d, 0xfa, 0xde, 0xf3, 0x5a, 0x1f, 0x75, 0xe6, - 0xe4, 0x24, 0xcb, 0xf5, 0xf8, 0x91, 0x64, 0xb9, 0x9e, 0x78, 0x88, 0x59, 0xae, 0xb5, 0xfc, 0xd4, - 0x93, 0x0f, 0x37, 0x3f, 0xf5, 0xa6, 0x79, 0x2e, 0xf1, 0x74, 0xc8, 0x2f, 0x15, 0x3e, 0x97, 0x8c, - 0x16, 0x0e, 0x3e, 0x99, 0x78, 0xa6, 0xee, 0xe9, 0xf7, 0x98, 0xa9, 0xdb, 0xc8, 0x77, 0x8d, 0x8e, - 0x22, 0xdf, 0xf5, 0xdb, 0xfa, 0x09, 0x7a, 0xa2, 0x48, 0x0b, 0xea, 0xa0, 0xec, 0x6e, 0x21, 0xeb, - 0x0c, 0xed, 0xce, 0xa8, 0x3d, 0x73, 0xdc, 0x19, 0xb5, 0x4f, 0x1e, 0x61, 0x46, 0xed, 0x53, 0xc7, - 0x9a, 0x51, 0xfb, 0x91, 0xf7, 0x49, 0x46, 0xed, 0xd9, 0xe3, 0xca, 0xa8, 0xfd, 0xe8, 0x43, 0xcd, - 0xa8, 0x4d, 0x3f, 0x5d, 0x5b, 0x86, 0xc3, 0xcd, 0xce, 0x15, 0xf9, 0x74, 0x99, 0xd1, 0x73, 0xfc, - 0xd3, 0x29, 0x10, 0x4e, 0x88, 0xda, 0x7f, 0x09, 0x4e, 0x1f, 0xbc, 0x74, 0x13, 0xcf, 0x93, 0x5a, - 0x62, 0xd3, 0x4b, 0x79, 0x9e, 0x30, 0xb1, 0x50, 0xc3, 0x2a, 0x9c, 0xf2, 0xf7, 0x5b, 0x16, 0x3c, - 0xd2, 0x23, 0x23, 0x66, 0xe1, 0x58, 0xd2, 0x36, 0x4c, 0xb6, 0xcd, 0xaa, 0x85, 0x43, 0xd3, 0x8d, - 0x0c, 0x9c, 0xca, 0xdf, 0x3f, 0x05, 0xc0, 0x69, 0xf2, 0x4b, 0x1f, 0xfa, 0xe1, 0x8f, 0x4e, 0x7f, - 0xe0, 0xf7, 0x7e, 0x74, 0xfa, 0x03, 0x7f, 0xf4, 0xa3, 0xd3, 0x1f, 0xf8, 0xb9, 0xbd, 0xd3, 0xd6, - 0x0f, 0xf7, 0x4e, 0x5b, 0xbf, 0xb7, 0x77, 0xda, 0xfa, 0xb3, 0xbd, 0xd3, 0xd6, 0x57, 0x7f, 0x7c, - 0xfa, 0x03, 0x6f, 0x94, 0xb6, 0x2f, 0xfc, 0xdf, 0x00, 0x00, 0x00, 0xff, 0xff, 0xe8, 0xe6, 0xb4, - 0xea, 0xa4, 0xcc, 0x00, 0x00, + // 11467 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x7d, 0x6d, 0x8c, 0x24, 0xc7, + 0x75, 0x98, 0x7a, 0x66, 0xf6, 0x63, 0xde, 0x7e, 0xd7, 0xed, 0x1d, 0x97, 0x2b, 0xf2, 0xf6, 0xd8, + 0x14, 0xe9, 0x23, 0x79, 0xdc, 0xd3, 0x1d, 0x49, 0xf1, 0x24, 0xca, 0xb4, 0x76, 0x77, 0x76, 0xef, + 0xd6, 0xf7, 0x35, 0xac, 0xd9, 0xbb, 0xa3, 0x28, 0x46, 0x64, 0xdf, 0x74, 0xed, 0x6e, 0xf3, 0x66, + 0xbb, 0x87, 0xdd, 0x3d, 0x7b, 0xb7, 0x34, 0x0c, 0xd8, 0x8a, 0x60, 0x2b, 0x80, 0x92, 0xc8, 0x70, + 0x04, 0x04, 0x4e, 0x00, 0x05, 0x06, 0xe2, 0x28, 0xdf, 0x56, 0x04, 0x7d, 0x18, 0x96, 0x13, 0xc4, + 0xb1, 0x1c, 0x39, 0x48, 0x1c, 0x03, 0x46, 0x6c, 0x05, 0x86, 0xd7, 0xd6, 0x0a, 0xf1, 0xbf, 0x04, + 0x41, 0xf2, 0x6f, 0xf3, 0x81, 0xa0, 0x3e, 0xbb, 0xaa, 0xa7, 0x67, 0xbb, 0x67, 0x79, 0xbb, 0xa6, + 0x84, 0xfc, 0x9b, 0xa9, 0xf7, 0xea, 0x55, 0x75, 0x7d, 0xbc, 0x7a, 0xef, 0xd5, 0x7b, 0xaf, 0xe0, + 0xdc, 0xbd, 0x4b, 0xd1, 0xbc, 0x17, 0x9c, 0xbf, 0xd7, 0xb9, 0x4b, 0x42, 0x9f, 0xc4, 0x24, 0x3a, + 0xdf, 0xbe, 0xb7, 0x71, 0xde, 0x69, 0x7b, 0xe7, 0xb7, 0x2f, 0x9c, 0xdf, 0x20, 0x3e, 0x09, 0x9d, + 0x98, 0xb8, 0xf3, 0xed, 0x30, 0x88, 0x03, 0xf4, 0x18, 0xc7, 0x9e, 0x4f, 0xb0, 0xe7, 0xdb, 0xf7, + 0x36, 0xe6, 0x9d, 0xb6, 0x37, 0xbf, 0x7d, 0x61, 0xf6, 0xf9, 0x0d, 0x2f, 0xde, 0xec, 0xdc, 0x9d, + 0x6f, 0x06, 0x5b, 0xe7, 0x37, 0x82, 0x8d, 0xe0, 0x3c, 0xab, 0x74, 0xb7, 0xb3, 0xce, 0xfe, 0xb1, + 0x3f, 0xec, 0x17, 0x27, 0x36, 0xfb, 0xa2, 0x68, 0xda, 0x69, 0x7b, 0x5b, 0x4e, 0x73, 0xd3, 0xf3, + 0x49, 0xb8, 0xa3, 0x1a, 0x0f, 0x49, 0x14, 0x74, 0xc2, 0x26, 0x49, 0x77, 0xe1, 0xc0, 0x5a, 0xd1, + 0xf9, 0x2d, 0x12, 0x3b, 0x19, 0x1d, 0x9f, 0x3d, 0xdf, 0xab, 0x56, 0xd8, 0xf1, 0x63, 0x6f, 0xab, + 0xbb, 0x99, 0x8f, 0xe5, 0x55, 0x88, 0x9a, 0x9b, 0x64, 0xcb, 0xe9, 0xaa, 0xf7, 0x42, 0xaf, 0x7a, + 0x9d, 0xd8, 0x6b, 0x9d, 0xf7, 0xfc, 0x38, 0x8a, 0xc3, 0x74, 0x25, 0xfb, 0x8f, 0x2d, 0x38, 0xb3, + 0x70, 0xa7, 0xb1, 0xdc, 0x72, 0xa2, 0xd8, 0x6b, 0x2e, 0xb6, 0x82, 0xe6, 0xbd, 0x46, 0x1c, 0x84, + 0xe4, 0x76, 0xd0, 0xea, 0x6c, 0x91, 0x06, 0x1b, 0x08, 0x74, 0x0e, 0x86, 0xb7, 0xd9, 0xff, 0xd5, + 0xda, 0x8c, 0x75, 0xc6, 0x3a, 0x5b, 0x5d, 0x9c, 0xfc, 0xde, 0xee, 0xdc, 0x87, 0xf6, 0x76, 0xe7, + 0x86, 0x6f, 0x8b, 0x72, 0xac, 0x30, 0xd0, 0xd3, 0x30, 0xb8, 0x1e, 0xad, 0xed, 0xb4, 0xc9, 0x4c, + 0x89, 0xe1, 0x8e, 0x0b, 0xdc, 0xc1, 0x95, 0x06, 0x2d, 0xc5, 0x02, 0x8a, 0xce, 0x43, 0xb5, 0xed, + 0x84, 0xb1, 0x17, 0x7b, 0x81, 0x3f, 0x53, 0x3e, 0x63, 0x9d, 0x1d, 0x58, 0x9c, 0x12, 0xa8, 0xd5, + 0xba, 0x04, 0xe0, 0x04, 0x87, 0x76, 0x23, 0x24, 0x8e, 0x7b, 0xd3, 0x6f, 0xed, 0xcc, 0x54, 0xce, + 0x58, 0x67, 0x87, 0x93, 0x6e, 0x60, 0x51, 0x8e, 0x15, 0x86, 0xfd, 0xed, 0x12, 0x0c, 0x2f, 0xac, + 0xaf, 0x7b, 0xbe, 0x17, 0xef, 0xa0, 0xb7, 0x61, 0xd4, 0x0f, 0x5c, 0x22, 0xff, 0xb3, 0xaf, 0x18, + 0xb9, 0xf8, 0xec, 0xfc, 0x41, 0x8b, 0x6a, 0xfe, 0x86, 0x56, 0x63, 0x71, 0x72, 0x6f, 0x77, 0x6e, + 0x54, 0x2f, 0xc1, 0x06, 0x45, 0xf4, 0x26, 0x8c, 0xb4, 0x03, 0x57, 0x35, 0x50, 0x62, 0x0d, 0x3c, + 0x73, 0x70, 0x03, 0xf5, 0xa4, 0xc2, 0xe2, 0xc4, 0xde, 0xee, 0xdc, 0x88, 0x56, 0x80, 0x75, 0x72, + 0xa8, 0x05, 0x13, 0xf4, 0xaf, 0x1f, 0x7b, 0xaa, 0x85, 0x32, 0x6b, 0xe1, 0xf9, 0xfc, 0x16, 0xb4, + 0x4a, 0x8b, 0x27, 0xf6, 0x76, 0xe7, 0x26, 0x52, 0x85, 0x38, 0x4d, 0xda, 0x7e, 0x0f, 0xc6, 0x17, + 0xe2, 0xd8, 0x69, 0x6e, 0x12, 0x97, 0xcf, 0x2f, 0x7a, 0x11, 0x2a, 0xbe, 0xb3, 0x45, 0xc4, 0xec, + 0x9f, 0x11, 0xc3, 0x5e, 0xb9, 0xe1, 0x6c, 0x91, 0xfd, 0xdd, 0xb9, 0xc9, 0x5b, 0xbe, 0xf7, 0x6e, + 0x47, 0xac, 0x19, 0x5a, 0x86, 0x19, 0x36, 0xba, 0x08, 0xe0, 0x92, 0x6d, 0xaf, 0x49, 0xea, 0x4e, + 0xbc, 0x29, 0x56, 0x03, 0x12, 0x75, 0xa1, 0xa6, 0x20, 0x58, 0xc3, 0xb2, 0x3f, 0x67, 0x41, 0x75, + 0x61, 0x3b, 0xf0, 0xdc, 0x7a, 0xe0, 0x46, 0xa8, 0x03, 0x13, 0xed, 0x90, 0xac, 0x93, 0x50, 0x15, + 0xcd, 0x58, 0x67, 0xca, 0x67, 0x47, 0x2e, 0x5e, 0xcc, 0xf9, 0x6e, 0xb3, 0xd2, 0xb2, 0x1f, 0x87, + 0x3b, 0x8b, 0x8f, 0x88, 0xa6, 0x27, 0x52, 0x50, 0x9c, 0x6e, 0xc3, 0xfe, 0x9d, 0x12, 0x9c, 0x5c, + 0x78, 0xaf, 0x13, 0x92, 0x9a, 0x17, 0xdd, 0x4b, 0x6f, 0x05, 0xd7, 0x8b, 0xee, 0xdd, 0x48, 0x06, + 0x43, 0xad, 0xc1, 0x9a, 0x28, 0xc7, 0x0a, 0x03, 0x3d, 0x0f, 0x43, 0xf4, 0xf7, 0x2d, 0xbc, 0x2a, + 0xbe, 0xfe, 0x84, 0x40, 0x1e, 0xa9, 0x39, 0xb1, 0x53, 0xe3, 0x20, 0x2c, 0x71, 0xd0, 0x75, 0x18, + 0x69, 0xb2, 0x9d, 0xbb, 0x71, 0x3d, 0x70, 0x09, 0x9b, 0xe1, 0xea, 0xe2, 0x73, 0x14, 0x7d, 0x29, + 0x29, 0xde, 0xdf, 0x9d, 0x9b, 0xe1, 0x7d, 0x13, 0x24, 0x34, 0x18, 0xd6, 0xeb, 0x23, 0x5b, 0x6d, + 0xc4, 0x0a, 0xa3, 0x04, 0x19, 0x9b, 0xf0, 0xac, 0xb6, 0xa7, 0x06, 0xd8, 0x9e, 0x1a, 0xcd, 0xde, + 0x4f, 0xe8, 0x02, 0x54, 0xee, 0x79, 0xbe, 0x3b, 0x33, 0xc8, 0x68, 0x3d, 0x4e, 0xa7, 0xff, 0xaa, + 0xe7, 0xbb, 0xfb, 0xbb, 0x73, 0x53, 0x46, 0x77, 0x68, 0x21, 0x66, 0xa8, 0xf6, 0x3f, 0xb2, 0xc4, + 0x30, 0xae, 0x78, 0x2d, 0x93, 0xa3, 0x5c, 0x04, 0x88, 0x48, 0x33, 0x24, 0xb1, 0x36, 0x90, 0x6a, + 0x65, 0x34, 0x14, 0x04, 0x6b, 0x58, 0x94, 0x5f, 0x44, 0x9b, 0x4e, 0xc8, 0x16, 0x98, 0x18, 0x4e, + 0xc5, 0x2f, 0x1a, 0x12, 0x80, 0x13, 0x1c, 0x83, 0x5f, 0x94, 0x73, 0xf9, 0xc5, 0x6f, 0x5b, 0x30, + 0xb4, 0xe8, 0xf9, 0xae, 0xe7, 0x6f, 0xa0, 0xb7, 0x61, 0x98, 0xb2, 0x73, 0xd7, 0x89, 0x1d, 0xc1, + 0x2a, 0x3e, 0x2a, 0xd7, 0x9b, 0xce, 0x5d, 0xe5, 0x8a, 0x8b, 0xe6, 0x29, 0x36, 0x5d, 0x77, 0x37, + 0xef, 0xbe, 0x43, 0x9a, 0xf1, 0x75, 0x12, 0x3b, 0xc9, 0xe7, 0x24, 0x65, 0x58, 0x51, 0x45, 0xb7, + 0x60, 0x30, 0x76, 0xc2, 0x0d, 0x12, 0x0b, 0x4e, 0x91, 0xb3, 0x8f, 0x39, 0x0d, 0x4c, 0x57, 0x29, + 0xf1, 0x9b, 0x24, 0xe1, 0xa9, 0x6b, 0x8c, 0x08, 0x16, 0xc4, 0xec, 0x26, 0x8c, 0x2e, 0x39, 0x6d, + 0xe7, 0xae, 0xd7, 0xf2, 0x62, 0x8f, 0x44, 0xe8, 0x27, 0xa0, 0xec, 0xb8, 0x2e, 0xdb, 0x33, 0xd5, + 0xc5, 0x93, 0x7b, 0xbb, 0x73, 0xe5, 0x05, 0x97, 0x4e, 0x19, 0x28, 0xac, 0x1d, 0x4c, 0x31, 0xd0, + 0xb3, 0x50, 0x71, 0xc3, 0xa0, 0x3d, 0x53, 0x62, 0x98, 0xa7, 0xe8, 0xec, 0xd6, 0xc2, 0xa0, 0x9d, + 0x42, 0x65, 0x38, 0xf6, 0x77, 0x4b, 0x80, 0x96, 0x48, 0x7b, 0x73, 0xa5, 0x61, 0xcc, 0xe9, 0x59, + 0x18, 0xde, 0x0a, 0x7c, 0x2f, 0x0e, 0xc2, 0x48, 0x34, 0xc8, 0x96, 0xd2, 0x75, 0x51, 0x86, 0x15, + 0x14, 0x9d, 0x81, 0x4a, 0x3b, 0xe1, 0x08, 0xa3, 0x92, 0x9b, 0x30, 0x5e, 0xc0, 0x20, 0x14, 0xa3, + 0x13, 0x91, 0x50, 0x6c, 0x01, 0x85, 0x71, 0x2b, 0x22, 0x21, 0x66, 0x90, 0x64, 0x05, 0xd1, 0xb5, + 0x25, 0x16, 0x78, 0x6a, 0x05, 0x51, 0x08, 0xd6, 0xb0, 0xd0, 0x5b, 0x50, 0xe5, 0xff, 0x30, 0x59, + 0x67, 0xab, 0x3d, 0x97, 0x8f, 0x5c, 0x0b, 0x9a, 0x4e, 0x2b, 0x3d, 0xf8, 0x63, 0x6c, 0xc5, 0x49, + 0x42, 0x38, 0xa1, 0x69, 0xac, 0xb8, 0xc1, 0xdc, 0x15, 0xf7, 0xb7, 0x2d, 0x40, 0x4b, 0x9e, 0xef, + 0x92, 0xf0, 0x18, 0x4e, 0xdb, 0xfe, 0x36, 0xc3, 0x9f, 0xd0, 0xae, 0x05, 0x5b, 0xed, 0xc0, 0x27, + 0x7e, 0xbc, 0x14, 0xf8, 0x2e, 0x3f, 0x81, 0x3f, 0x01, 0x95, 0x98, 0x36, 0xc5, 0xbb, 0xf5, 0xb4, + 0x9c, 0x16, 0xda, 0xc0, 0xfe, 0xee, 0xdc, 0xa9, 0xee, 0x1a, 0xac, 0x0b, 0xac, 0x0e, 0xfa, 0x38, + 0x0c, 0x46, 0xb1, 0x13, 0x77, 0x22, 0xd1, 0xd1, 0x27, 0x64, 0x47, 0x1b, 0xac, 0x74, 0x7f, 0x77, + 0x6e, 0x42, 0x55, 0xe3, 0x45, 0x58, 0x54, 0x40, 0xcf, 0xc0, 0xd0, 0x16, 0x89, 0x22, 0x67, 0x43, + 0xf2, 0xc4, 0x09, 0x51, 0x77, 0xe8, 0x3a, 0x2f, 0xc6, 0x12, 0x8e, 0x9e, 0x84, 0x01, 0x12, 0x86, + 0x41, 0x28, 0x56, 0xc4, 0x98, 0x40, 0x1c, 0x58, 0xa6, 0x85, 0x98, 0xc3, 0xec, 0xff, 0x6c, 0xc1, + 0x84, 0xea, 0x2b, 0x6f, 0xeb, 0x18, 0xb6, 0xbc, 0x0b, 0xd0, 0x94, 0x1f, 0x18, 0xb1, 0x8d, 0xa6, + 0xb5, 0x91, 0xbd, 0xfc, 0xba, 0x07, 0x34, 0x69, 0x43, 0x15, 0x45, 0x58, 0xa3, 0x6b, 0xff, 0x5b, + 0x0b, 0x4e, 0xa4, 0xbe, 0xed, 0x9a, 0x17, 0xc5, 0xe8, 0xcd, 0xae, 0xef, 0x9b, 0x2f, 0xf6, 0x7d, + 0xb4, 0x36, 0xfb, 0x3a, 0xb5, 0x5e, 0x64, 0x89, 0xf6, 0x6d, 0x18, 0x06, 0xbc, 0x98, 0x6c, 0xc9, + 0xcf, 0x7a, 0xbe, 0xe0, 0x67, 0xf1, 0xfe, 0x25, 0xb3, 0xb4, 0x4a, 0x69, 0x60, 0x4e, 0xca, 0xfe, + 0x5f, 0x16, 0x54, 0x97, 0x02, 0x7f, 0xdd, 0xdb, 0xb8, 0xee, 0xb4, 0x8f, 0x61, 0x7e, 0x1a, 0x50, + 0x61, 0xd4, 0xf9, 0x27, 0x5c, 0xc8, 0xfb, 0x04, 0xd1, 0xb1, 0x79, 0x7a, 0xee, 0x71, 0xf9, 0x42, + 0xb1, 0x29, 0x5a, 0x84, 0x19, 0xb1, 0xd9, 0x97, 0xa1, 0xaa, 0x10, 0xd0, 0x24, 0x94, 0xef, 0x11, + 0x2e, 0x7c, 0x56, 0x31, 0xfd, 0x89, 0xa6, 0x61, 0x60, 0xdb, 0x69, 0x75, 0xc4, 0xe6, 0xc5, 0xfc, + 0xcf, 0x27, 0x4a, 0x97, 0x2c, 0xfb, 0xbb, 0x6c, 0x07, 0x8a, 0x46, 0x96, 0xfd, 0x6d, 0xc1, 0x1c, + 0x3e, 0x6f, 0xc1, 0x74, 0x2b, 0x83, 0x29, 0x89, 0x31, 0x39, 0x0c, 0x3b, 0x7b, 0x4c, 0x74, 0x7b, + 0x3a, 0x0b, 0x8a, 0x33, 0x5b, 0xa3, 0xbc, 0x3e, 0x68, 0xd3, 0x05, 0xe7, 0xb4, 0x58, 0xd7, 0x85, + 0xd8, 0x70, 0x53, 0x94, 0x61, 0x05, 0xb5, 0xff, 0xc2, 0x82, 0x69, 0xf5, 0x1d, 0x57, 0xc9, 0x4e, + 0x83, 0xb4, 0x48, 0x33, 0x0e, 0xc2, 0x0f, 0xca, 0x97, 0x3c, 0xce, 0xe7, 0x84, 0xf3, 0xa4, 0x11, + 0x41, 0xa0, 0x7c, 0x95, 0xec, 0xf0, 0x09, 0xd2, 0x3f, 0xb4, 0x7c, 0xe0, 0x87, 0xfe, 0xa6, 0x05, + 0x63, 0xea, 0x43, 0x8f, 0x61, 0xcb, 0x5d, 0x33, 0xb7, 0xdc, 0x4f, 0x14, 0x5c, 0xaf, 0x3d, 0x36, + 0xdb, 0xdf, 0x2a, 0x51, 0xb6, 0x21, 0x70, 0xea, 0x61, 0x40, 0x07, 0x89, 0x72, 0xfc, 0x0f, 0xc8, + 0x2c, 0xf5, 0xf7, 0xb1, 0x57, 0xc9, 0xce, 0x5a, 0x40, 0xa5, 0x89, 0xec, 0x8f, 0x35, 0x26, 0xb5, + 0x72, 0xe0, 0xa4, 0xfe, 0x5e, 0x09, 0x4e, 0xaa, 0x61, 0x31, 0x4e, 0xe9, 0x1f, 0xcb, 0x81, 0xb9, + 0x00, 0x23, 0x2e, 0x59, 0x77, 0x3a, 0xad, 0x58, 0x29, 0x20, 0x03, 0x5c, 0x33, 0xad, 0x25, 0xc5, + 0x58, 0xc7, 0xe9, 0x63, 0x2c, 0xbf, 0x32, 0xc2, 0xf8, 0x79, 0xec, 0xd0, 0x55, 0x4f, 0x25, 0x3c, + 0x4d, 0xa3, 0x1c, 0xd5, 0x35, 0x4a, 0xa1, 0x3d, 0x3e, 0x09, 0x03, 0xde, 0x16, 0x3d, 0xf3, 0x4b, + 0xe6, 0x51, 0xbe, 0x4a, 0x0b, 0x31, 0x87, 0xa1, 0xa7, 0x60, 0xa8, 0x19, 0x6c, 0x6d, 0x39, 0xbe, + 0x3b, 0x53, 0x66, 0x32, 0xe7, 0x08, 0x15, 0x0b, 0x96, 0x78, 0x11, 0x96, 0x30, 0xf4, 0x18, 0x54, + 0x9c, 0x70, 0x23, 0x9a, 0xa9, 0x30, 0x9c, 0x61, 0xda, 0xd2, 0x42, 0xb8, 0x11, 0x61, 0x56, 0x4a, + 0x65, 0xc9, 0xfb, 0x41, 0x78, 0xcf, 0xf3, 0x37, 0x6a, 0x5e, 0xc8, 0x04, 0x43, 0x4d, 0x96, 0xbc, + 0xa3, 0x20, 0x58, 0xc3, 0x42, 0x75, 0x18, 0x68, 0x07, 0x61, 0x1c, 0xcd, 0x0c, 0xb2, 0x81, 0x7f, + 0x2e, 0x77, 0xfb, 0xf1, 0xef, 0xae, 0x07, 0x61, 0x9c, 0x7c, 0x0a, 0xfd, 0x17, 0x61, 0x4e, 0x08, + 0x2d, 0x41, 0x99, 0xf8, 0xdb, 0x33, 0x43, 0x8c, 0xde, 0x47, 0x0e, 0xa6, 0xb7, 0xec, 0x6f, 0xdf, + 0x76, 0xc2, 0x84, 0x5f, 0x2d, 0xfb, 0xdb, 0x98, 0xd6, 0x46, 0x4d, 0xa8, 0x4a, 0xfb, 0x55, 0x34, + 0x33, 0x5c, 0x64, 0x29, 0x62, 0x81, 0x8e, 0xc9, 0xbb, 0x1d, 0x2f, 0x24, 0x5b, 0xc4, 0x8f, 0xa3, + 0x44, 0xb1, 0x92, 0xd0, 0x08, 0x27, 0x74, 0x51, 0x13, 0x46, 0xb9, 0xfc, 0x79, 0x3d, 0xe8, 0xf8, + 0x71, 0x34, 0x53, 0x65, 0x5d, 0xce, 0x31, 0x76, 0xdc, 0x4e, 0x6a, 0x2c, 0x4e, 0x0b, 0xf2, 0xa3, + 0x5a, 0x61, 0x84, 0x0d, 0xa2, 0xe8, 0x4d, 0x18, 0x6b, 0x79, 0xdb, 0xc4, 0x27, 0x51, 0x54, 0x0f, + 0x83, 0xbb, 0x64, 0x06, 0xd8, 0xd7, 0x3c, 0x99, 0xa7, 0xf8, 0x07, 0x77, 0xc9, 0xe2, 0xd4, 0xde, + 0xee, 0xdc, 0xd8, 0x35, 0xbd, 0x36, 0x36, 0x89, 0xa1, 0xb7, 0x60, 0x9c, 0x0a, 0xbb, 0x5e, 0x42, + 0x7e, 0xa4, 0x38, 0x79, 0xb4, 0xb7, 0x3b, 0x37, 0x8e, 0x8d, 0xea, 0x38, 0x45, 0x0e, 0xad, 0x41, + 0xb5, 0xe5, 0xad, 0x93, 0xe6, 0x4e, 0xb3, 0x45, 0x66, 0x46, 0x19, 0xed, 0x9c, 0xcd, 0x79, 0x4d, + 0xa2, 0x73, 0x05, 0x43, 0xfd, 0xc5, 0x09, 0x21, 0x74, 0x1b, 0x4e, 0xc5, 0x24, 0xdc, 0xf2, 0x7c, + 0x87, 0x6e, 0x2a, 0x21, 0xfd, 0x32, 0xeb, 0xca, 0x18, 0x5b, 0xb5, 0xa7, 0xc5, 0xc0, 0x9e, 0x5a, + 0xcb, 0xc4, 0xc2, 0x3d, 0x6a, 0xa3, 0x9b, 0x30, 0xc1, 0xf6, 0x53, 0xbd, 0xd3, 0x6a, 0xd5, 0x83, + 0x96, 0xd7, 0xdc, 0x99, 0x19, 0x67, 0x04, 0x9f, 0x92, 0x36, 0x93, 0x55, 0x13, 0x4c, 0x15, 0xc3, + 0xe4, 0x1f, 0x4e, 0xd7, 0x46, 0x2d, 0x98, 0x88, 0x48, 0xb3, 0x13, 0x7a, 0xf1, 0x0e, 0x5d, 0xfb, + 0xe4, 0x41, 0x3c, 0x33, 0x51, 0x44, 0xd1, 0x6d, 0x98, 0x95, 0xb8, 0xc1, 0x2a, 0x55, 0x88, 0xd3, + 0xa4, 0x29, 0xab, 0x88, 0x62, 0xd7, 0xf3, 0x67, 0x26, 0x19, 0x07, 0x52, 0xfb, 0xab, 0x41, 0x0b, + 0x31, 0x87, 0x31, 0xfb, 0x01, 0xfd, 0x71, 0x93, 0x72, 0xe9, 0x29, 0x86, 0x98, 0xd8, 0x0f, 0x24, + 0x00, 0x27, 0x38, 0x54, 0x34, 0x88, 0xe3, 0x9d, 0x19, 0xc4, 0x50, 0xd5, 0x56, 0x5b, 0x5b, 0xfb, + 0x34, 0xa6, 0xe5, 0xe8, 0x36, 0x0c, 0x11, 0x7f, 0x7b, 0x25, 0x0c, 0xb6, 0x66, 0x4e, 0x14, 0xe1, + 0x01, 0xcb, 0x1c, 0x99, 0x9f, 0x1f, 0x89, 0x0a, 0x23, 0x8a, 0xb1, 0x24, 0x86, 0x1e, 0xc0, 0x4c, + 0xc6, 0x2c, 0xf1, 0x49, 0x99, 0x66, 0x93, 0xf2, 0x49, 0x51, 0x77, 0x66, 0xad, 0x07, 0xde, 0xfe, + 0x01, 0x30, 0xdc, 0x93, 0xba, 0x7d, 0x17, 0xc6, 0x15, 0xa3, 0x62, 0xf3, 0x8d, 0xe6, 0x60, 0x80, + 0xf2, 0x62, 0xa9, 0xd0, 0x57, 0xe9, 0xa0, 0x52, 0x16, 0x1d, 0x61, 0x5e, 0xce, 0x06, 0xd5, 0x7b, + 0x8f, 0x2c, 0xee, 0xc4, 0x84, 0x2b, 0x76, 0x65, 0x6d, 0x50, 0x25, 0x00, 0x27, 0x38, 0xf6, 0xff, + 0xe5, 0x62, 0x52, 0xc2, 0x0d, 0x0b, 0x9c, 0x04, 0xe7, 0x60, 0x78, 0x33, 0x88, 0x62, 0x8a, 0xcd, + 0xda, 0x18, 0x48, 0x04, 0xa3, 0x2b, 0xa2, 0x1c, 0x2b, 0x0c, 0xf4, 0x0a, 0x8c, 0x35, 0xf5, 0x06, + 0xc4, 0x31, 0x76, 0x52, 0x54, 0x31, 0x5b, 0xc7, 0x26, 0x2e, 0xba, 0x04, 0xc3, 0xcc, 0x30, 0xde, + 0x0c, 0x5a, 0x42, 0x85, 0x94, 0xa7, 0xf2, 0x70, 0x5d, 0x94, 0xef, 0x6b, 0xbf, 0xb1, 0xc2, 0xa6, + 0x8a, 0x38, 0xed, 0xc2, 0x6a, 0x5d, 0x1c, 0x20, 0x4a, 0x11, 0xbf, 0xc2, 0x4a, 0xb1, 0x80, 0xda, + 0xbf, 0x5e, 0xd2, 0x46, 0x99, 0x2a, 0x40, 0x04, 0xbd, 0x01, 0x43, 0xf7, 0x1d, 0x2f, 0xf6, 0xfc, + 0x0d, 0x21, 0x3d, 0xbc, 0x50, 0xf0, 0x34, 0x61, 0xd5, 0xef, 0xf0, 0xaa, 0xfc, 0xe4, 0x13, 0x7f, + 0xb0, 0x24, 0x48, 0x69, 0x87, 0x1d, 0xdf, 0xa7, 0xb4, 0x4b, 0xfd, 0xd3, 0xc6, 0xbc, 0x2a, 0xa7, + 0x2d, 0xfe, 0x60, 0x49, 0x10, 0xad, 0x03, 0xc8, 0xb5, 0x44, 0x5c, 0x61, 0x90, 0xfe, 0x58, 0x3f, + 0xe4, 0xd7, 0x54, 0xed, 0xc5, 0x71, 0x7a, 0xd6, 0x26, 0xff, 0xb1, 0x46, 0xd9, 0x8e, 0x99, 0x10, + 0xd6, 0xdd, 0x2d, 0xf4, 0x19, 0xba, 0xa5, 0x9d, 0x30, 0x26, 0xee, 0x42, 0x9c, 0xb6, 0xe9, 0x1f, + 0x2c, 0x62, 0xaf, 0x79, 0x5b, 0x44, 0xdf, 0xfe, 0x82, 0x08, 0x4e, 0xe8, 0xd9, 0xdf, 0x2a, 0xc3, + 0x4c, 0xaf, 0xee, 0xd2, 0x25, 0x49, 0x1e, 0x78, 0xf1, 0x12, 0x15, 0x93, 0x2c, 0x73, 0x49, 0x2e, + 0x8b, 0x72, 0xac, 0x30, 0xe8, 0xda, 0x88, 0xbc, 0x0d, 0xa9, 0x2c, 0x0d, 0x24, 0x6b, 0xa3, 0xc1, + 0x4a, 0xb1, 0x80, 0x52, 0xbc, 0x90, 0x38, 0x91, 0xb8, 0x0f, 0xd1, 0xd6, 0x10, 0x66, 0xa5, 0x58, + 0x40, 0x75, 0x83, 0x48, 0x25, 0xc7, 0x20, 0x62, 0x0c, 0xd1, 0xc0, 0xc3, 0x1d, 0x22, 0xf4, 0x59, + 0x80, 0x75, 0xcf, 0xf7, 0xa2, 0x4d, 0x46, 0x7d, 0xb0, 0x6f, 0xea, 0x4a, 0xc8, 0x5a, 0x51, 0x54, + 0xb0, 0x46, 0x11, 0xbd, 0x04, 0x23, 0x6a, 0x7b, 0xae, 0xd6, 0x66, 0x86, 0x4c, 0x1b, 0x7a, 0xc2, + 0xab, 0x6a, 0x58, 0xc7, 0xb3, 0xdf, 0x49, 0xaf, 0x17, 0xb1, 0x2b, 0xb4, 0xf1, 0xb5, 0x8a, 0x8e, + 0x6f, 0xe9, 0xe0, 0xf1, 0xb5, 0xff, 0xa8, 0x0c, 0x13, 0x46, 0x63, 0x9d, 0xa8, 0x00, 0x47, 0x7b, + 0x8d, 0x1e, 0x58, 0x4e, 0x4c, 0xc4, 0x9e, 0x3c, 0xd7, 0xcf, 0xa6, 0xd1, 0x8f, 0x37, 0xba, 0x17, + 0x38, 0x25, 0xb4, 0x09, 0xd5, 0x96, 0x13, 0x31, 0x93, 0x0a, 0x11, 0x7b, 0xb1, 0x3f, 0xb2, 0x89, + 0xfa, 0xe1, 0x44, 0xb1, 0x76, 0x7a, 0xf0, 0x56, 0x12, 0xe2, 0xf4, 0xb4, 0xa5, 0xc2, 0x8e, 0xbc, + 0x84, 0x53, 0xdd, 0xa1, 0x12, 0xd1, 0x0e, 0xe6, 0x30, 0x74, 0x09, 0x46, 0x43, 0xc2, 0x56, 0xca, + 0x12, 0x95, 0xe7, 0xd8, 0xd2, 0x1b, 0x48, 0x04, 0x3f, 0xac, 0xc1, 0xb0, 0x81, 0x99, 0xc8, 0xfd, + 0x83, 0x07, 0xc8, 0xfd, 0xcf, 0xc0, 0x10, 0xfb, 0xa1, 0x56, 0x85, 0x9a, 0xa1, 0x55, 0x5e, 0x8c, + 0x25, 0x3c, 0xbd, 0x88, 0x86, 0x0b, 0x2e, 0xa2, 0x67, 0x61, 0xbc, 0xe6, 0x90, 0xad, 0xc0, 0x5f, + 0xf6, 0xdd, 0x76, 0xe0, 0xf9, 0x31, 0x9a, 0x81, 0x0a, 0x3b, 0x4f, 0xf8, 0x7e, 0xaf, 0x50, 0x0a, + 0xb8, 0x42, 0x65, 0x77, 0xfb, 0x4f, 0x4a, 0x30, 0x56, 0x23, 0x2d, 0x12, 0x13, 0xae, 0xf7, 0x44, + 0x68, 0x05, 0xd0, 0x46, 0xe8, 0x34, 0x49, 0x9d, 0x84, 0x5e, 0xe0, 0x36, 0x48, 0x33, 0xf0, 0xd9, + 0xdd, 0x15, 0x3d, 0x20, 0x4f, 0xed, 0xed, 0xce, 0xa1, 0xcb, 0x5d, 0x50, 0x9c, 0x51, 0x03, 0xb9, + 0x30, 0xd6, 0x0e, 0x89, 0x61, 0x37, 0xb4, 0xf2, 0x45, 0x8d, 0xba, 0x5e, 0x85, 0x4b, 0xc3, 0x46, + 0x11, 0x36, 0x89, 0xa2, 0x4f, 0xc1, 0x64, 0x10, 0xb6, 0x37, 0x1d, 0xbf, 0x46, 0xda, 0xc4, 0x77, + 0xa9, 0x0a, 0x20, 0xac, 0x1d, 0xd3, 0x7b, 0xbb, 0x73, 0x93, 0x37, 0x53, 0x30, 0xdc, 0x85, 0x8d, + 0xde, 0x80, 0xa9, 0x76, 0x18, 0xb4, 0x9d, 0x0d, 0xb6, 0x64, 0x84, 0xb4, 0xc2, 0x79, 0xd3, 0xb9, + 0xbd, 0xdd, 0xb9, 0xa9, 0x7a, 0x1a, 0xb8, 0xbf, 0x3b, 0x77, 0x82, 0x0d, 0x19, 0x2d, 0x49, 0x80, + 0xb8, 0x9b, 0x8c, 0xfd, 0x2e, 0x9c, 0xac, 0x05, 0xf7, 0xfd, 0xfb, 0x4e, 0xe8, 0x2e, 0xd4, 0x57, + 0x35, 0xe3, 0xc4, 0xeb, 0x52, 0xf9, 0xe5, 0x77, 0x82, 0x39, 0x27, 0x9b, 0x46, 0x83, 0xab, 0x1d, + 0x2b, 0x5e, 0x8b, 0xf4, 0x30, 0x87, 0xfc, 0xe3, 0x92, 0xd1, 0x66, 0x82, 0xaf, 0xee, 0x2e, 0xac, + 0x9e, 0x77, 0x17, 0x9f, 0x81, 0xe1, 0x75, 0x8f, 0xb4, 0x5c, 0x4c, 0xd6, 0xc5, 0x6c, 0x5d, 0x28, + 0x72, 0xb9, 0xb3, 0x42, 0xeb, 0x48, 0xeb, 0x18, 0x57, 0xa2, 0x57, 0x04, 0x19, 0xac, 0x08, 0xa2, + 0x0e, 0x4c, 0x4a, 0x3d, 0x4c, 0x42, 0xc5, 0x66, 0x7f, 0xa1, 0x98, 0x9a, 0x67, 0x36, 0xc3, 0xa6, + 0x17, 0xa7, 0x08, 0xe2, 0xae, 0x26, 0xa8, 0xfe, 0xbc, 0x45, 0x8f, 0xba, 0x0a, 0x5b, 0xfa, 0x4c, + 0x7f, 0x66, 0xa6, 0x00, 0x56, 0x6a, 0xff, 0x9a, 0x05, 0x8f, 0x74, 0x8d, 0x96, 0xb0, 0x93, 0x1c, + 0xd9, 0x1c, 0xa5, 0x8d, 0x15, 0xa5, 0x7c, 0x63, 0x85, 0xfd, 0xeb, 0x16, 0x4c, 0x2f, 0x6f, 0xb5, + 0xe3, 0x9d, 0x9a, 0x67, 0xde, 0xb9, 0xbc, 0x0c, 0x83, 0x5b, 0xc4, 0xf5, 0x3a, 0x5b, 0x62, 0x5e, + 0xe7, 0xe4, 0xc1, 0x70, 0x9d, 0x95, 0xee, 0xef, 0xce, 0x8d, 0x35, 0xe2, 0x20, 0x74, 0x36, 0x08, + 0x2f, 0xc0, 0x02, 0x9d, 0x5d, 0x29, 0x79, 0xef, 0x91, 0x6b, 0xde, 0x96, 0x27, 0xaf, 0xf2, 0x0e, + 0x34, 0xf2, 0xcd, 0xcb, 0xa1, 0x9d, 0x7f, 0xad, 0xe3, 0xf8, 0xb1, 0x17, 0xef, 0x98, 0xf2, 0x32, + 0x23, 0x84, 0x13, 0x9a, 0xf6, 0x0f, 0x2c, 0x98, 0x90, 0x1c, 0x68, 0xc1, 0x75, 0x43, 0x12, 0x45, + 0x68, 0x16, 0x4a, 0x5e, 0x5b, 0xf4, 0x14, 0x44, 0xed, 0xd2, 0x6a, 0x1d, 0x97, 0xbc, 0x36, 0x7a, + 0x03, 0xaa, 0xfc, 0x2e, 0x30, 0x59, 0x7e, 0x7d, 0xde, 0x2d, 0x32, 0xed, 0x73, 0x4d, 0xd2, 0xc0, + 0x09, 0x39, 0x29, 0x87, 0xb3, 0xb3, 0xad, 0x6c, 0xde, 0x4c, 0x5d, 0x11, 0xe5, 0x58, 0x61, 0xa0, + 0xb3, 0x30, 0xec, 0x07, 0x2e, 0xbf, 0xae, 0xe5, 0x9c, 0x80, 0x2d, 0xea, 0x1b, 0xa2, 0x0c, 0x2b, + 0xa8, 0xfd, 0x45, 0x0b, 0x46, 0xe5, 0x37, 0x16, 0x54, 0x09, 0xe8, 0x36, 0x4c, 0xd4, 0x81, 0x64, + 0x1b, 0x52, 0x91, 0x9e, 0x41, 0x0c, 0x49, 0xbe, 0xdc, 0x8f, 0x24, 0x6f, 0xff, 0x46, 0x09, 0xc6, + 0x65, 0x77, 0x1a, 0x9d, 0xbb, 0x11, 0xa1, 0x82, 0x4e, 0xd5, 0xe1, 0x83, 0x4f, 0xe4, 0x4a, 0x7e, + 0x3e, 0x4f, 0xdb, 0x33, 0xe6, 0x2c, 0x99, 0xe5, 0x05, 0x49, 0x07, 0x27, 0x24, 0xd1, 0x36, 0x4c, + 0xf9, 0x41, 0xcc, 0x0e, 0x50, 0x05, 0x2f, 0x76, 0x97, 0x92, 0x6e, 0xe7, 0x51, 0xd1, 0xce, 0xd4, + 0x8d, 0x34, 0x3d, 0xdc, 0xdd, 0x04, 0xba, 0x29, 0xad, 0x58, 0x65, 0xd6, 0xd6, 0xb3, 0xc5, 0xda, + 0xea, 0x6d, 0xc4, 0xb2, 0x7f, 0xd7, 0x82, 0xaa, 0x44, 0x3b, 0x8e, 0x4b, 0xb5, 0x3b, 0x30, 0x14, + 0xb1, 0x29, 0x92, 0xc3, 0x75, 0xae, 0xd8, 0x27, 0xf0, 0x79, 0x4d, 0xa4, 0x06, 0xfe, 0x3f, 0xc2, + 0x92, 0x1a, 0x33, 0xe7, 0xab, 0x0f, 0xf9, 0xc0, 0x99, 0xf3, 0x55, 0xcf, 0x7a, 0xdf, 0x9d, 0x8d, + 0x19, 0xf6, 0x06, 0x2a, 0xfa, 0xb6, 0x43, 0xb2, 0xee, 0x3d, 0x48, 0x8b, 0xbe, 0x75, 0x56, 0x8a, + 0x05, 0x14, 0xad, 0xc3, 0x68, 0x53, 0x1a, 0xbc, 0x13, 0x16, 0xf2, 0xd1, 0x82, 0xb7, 0x0b, 0xea, + 0xa2, 0x8a, 0xfb, 0x4b, 0x2d, 0x69, 0x94, 0xb0, 0x41, 0x97, 0xf2, 0xa9, 0xe4, 0x2e, 0xbe, 0x5c, + 0xd0, 0x34, 0x14, 0x92, 0x38, 0x69, 0xa1, 0xe7, 0x35, 0xbc, 0xfd, 0x55, 0x0b, 0x06, 0xb9, 0x85, + 0xb4, 0x98, 0x99, 0x59, 0xbb, 0x82, 0x4b, 0xc6, 0xf3, 0x36, 0x2d, 0x14, 0x37, 0x72, 0xe8, 0x0e, + 0x54, 0xd9, 0x0f, 0x66, 0xed, 0x29, 0x17, 0x71, 0x1e, 0xe3, 0xed, 0xeb, 0x5d, 0xbd, 0x2d, 0x09, + 0xe0, 0x84, 0x96, 0xfd, 0x9d, 0x32, 0x65, 0x7d, 0x09, 0xaa, 0x21, 0x3d, 0x58, 0xc7, 0x21, 0x3d, + 0x94, 0x8e, 0x5e, 0x7a, 0x78, 0x17, 0x26, 0x9a, 0xda, 0x15, 0x60, 0x32, 0xe3, 0x17, 0x0b, 0x2e, + 0x2b, 0xed, 0xde, 0x90, 0x5b, 0x04, 0x97, 0x4c, 0x72, 0x38, 0x4d, 0x1f, 0x11, 0x18, 0xe5, 0xeb, + 0x41, 0xb4, 0x57, 0x61, 0xed, 0x9d, 0x2f, 0xb2, 0xc2, 0xf4, 0xc6, 0xd8, 0x2a, 0x6e, 0x68, 0x84, + 0xb0, 0x41, 0xd6, 0xfe, 0x95, 0x01, 0x18, 0x58, 0xde, 0x26, 0x7e, 0x7c, 0x0c, 0xac, 0x6e, 0x0b, + 0xc6, 0x3d, 0x7f, 0x3b, 0x68, 0x6d, 0x13, 0x97, 0xc3, 0x0f, 0x77, 0xbc, 0x9f, 0x12, 0x8d, 0x8c, + 0xaf, 0x1a, 0xc4, 0x70, 0x8a, 0xf8, 0x51, 0xd8, 0x22, 0x5e, 0x83, 0x41, 0xbe, 0x32, 0x84, 0x21, + 0x22, 0xe7, 0xc6, 0x80, 0x0d, 0xac, 0xd8, 0x41, 0x89, 0xc5, 0x84, 0x5f, 0x56, 0x08, 0x42, 0xe8, + 0x1d, 0x18, 0x5f, 0xf7, 0xc2, 0x28, 0x5e, 0xf3, 0xb6, 0xa8, 0x0e, 0xb9, 0xd5, 0x3e, 0x84, 0x15, + 0x42, 0x8d, 0xc8, 0x8a, 0x41, 0x09, 0xa7, 0x28, 0xa3, 0x0d, 0x18, 0xa3, 0x4a, 0x70, 0xd2, 0xd4, + 0x50, 0xdf, 0x4d, 0x29, 0x23, 0xe4, 0x35, 0x9d, 0x10, 0x36, 0xe9, 0x52, 0x96, 0xd4, 0x64, 0x4a, + 0xf3, 0x30, 0x93, 0x6e, 0x14, 0x4b, 0xe2, 0xda, 0x32, 0x87, 0x51, 0xce, 0xc6, 0x7c, 0x71, 0xaa, + 0x26, 0x67, 0x4b, 0x3c, 0x6e, 0xec, 0xaf, 0xd3, 0xb3, 0x98, 0x8e, 0xe1, 0x31, 0x1c, 0x5f, 0x57, + 0xcc, 0xe3, 0xeb, 0xc9, 0x02, 0x33, 0xdb, 0xe3, 0xe8, 0x7a, 0x1b, 0x46, 0xb4, 0x89, 0x47, 0xe7, + 0xa1, 0xda, 0x94, 0xee, 0x22, 0x82, 0x8b, 0x2b, 0x51, 0x4a, 0xf9, 0x91, 0xe0, 0x04, 0x87, 0x8e, + 0x0b, 0x15, 0x41, 0xd3, 0xce, 0x65, 0x54, 0x40, 0xc5, 0x0c, 0x62, 0xbf, 0x00, 0xb0, 0xfc, 0x80, + 0x34, 0x17, 0xb8, 0x12, 0xa9, 0xdd, 0x20, 0x5a, 0xbd, 0x6f, 0x10, 0xed, 0xaf, 0x59, 0x30, 0xbe, + 0xb2, 0x64, 0x28, 0x0d, 0xf3, 0x00, 0x5c, 0x36, 0xbe, 0x73, 0xe7, 0x86, 0xb4, 0x90, 0x73, 0x33, + 0xa6, 0x2a, 0xc5, 0x1a, 0x06, 0x7a, 0x14, 0xca, 0xad, 0x8e, 0x2f, 0x44, 0xd6, 0xa1, 0xbd, 0xdd, + 0xb9, 0xf2, 0xb5, 0x8e, 0x8f, 0x69, 0x99, 0xe6, 0xc5, 0x55, 0x2e, 0xec, 0xc5, 0x95, 0xef, 0x02, + 0xfd, 0xe5, 0x32, 0x4c, 0xae, 0xb4, 0xc8, 0x03, 0xa3, 0xd7, 0x4f, 0xc3, 0xa0, 0x1b, 0x7a, 0xdb, + 0x24, 0x4c, 0x0b, 0x02, 0x35, 0x56, 0x8a, 0x05, 0xb4, 0xb0, 0x63, 0xd9, 0x5b, 0xdd, 0x07, 0xf9, + 0xd1, 0x39, 0xd5, 0xe5, 0x7e, 0x33, 0x5a, 0x87, 0x21, 0x7e, 0xe3, 0x1c, 0xcd, 0x0c, 0xb0, 0xa5, + 0xf8, 0xca, 0xc1, 0x9d, 0x49, 0x8f, 0xcf, 0xbc, 0xb0, 0xe0, 0x70, 0x97, 0x1e, 0xc5, 0xcb, 0x44, + 0x29, 0x96, 0xc4, 0x67, 0x3f, 0x01, 0xa3, 0x3a, 0x66, 0x5f, 0xbe, 0x3d, 0x7f, 0xd5, 0x82, 0x13, + 0x2b, 0xad, 0xa0, 0x79, 0x2f, 0xe5, 0xf9, 0xf7, 0x12, 0x8c, 0xd0, 0xcd, 0x14, 0x19, 0x6e, 0xb1, + 0x86, 0xcb, 0xb0, 0x00, 0x61, 0x1d, 0x4f, 0xab, 0x76, 0xeb, 0xd6, 0x6a, 0x2d, 0xcb, 0xd3, 0x58, + 0x80, 0xb0, 0x8e, 0x67, 0xff, 0xbe, 0x05, 0x8f, 0x5f, 0x5e, 0x5a, 0xae, 0x93, 0x30, 0xf2, 0xa2, + 0x98, 0xf8, 0x71, 0x97, 0xb3, 0x33, 0x95, 0x19, 0x5d, 0xad, 0x2b, 0x89, 0xcc, 0x58, 0x63, 0xbd, + 0x10, 0xd0, 0x0f, 0x8a, 0xc7, 0xff, 0x57, 0x2d, 0x38, 0x71, 0xd9, 0x8b, 0x31, 0x69, 0x07, 0x69, + 0x67, 0xe3, 0x90, 0xb4, 0x83, 0xc8, 0x8b, 0x83, 0x70, 0x27, 0xed, 0x6c, 0x8c, 0x15, 0x04, 0x6b, + 0x58, 0xbc, 0xe5, 0x6d, 0x2f, 0xa2, 0x3d, 0x2d, 0x99, 0xaa, 0x2e, 0x16, 0xe5, 0x58, 0x61, 0xd0, + 0x0f, 0x73, 0xbd, 0x90, 0x89, 0x0c, 0x3b, 0x62, 0x07, 0xab, 0x0f, 0xab, 0x49, 0x00, 0x4e, 0x70, + 0xec, 0xbf, 0x6b, 0xc1, 0xc9, 0xcb, 0xad, 0x4e, 0x14, 0x93, 0x70, 0x3d, 0x32, 0x3a, 0xfb, 0x02, + 0x54, 0x89, 0x14, 0xee, 0x45, 0x5f, 0xd5, 0xa1, 0xa1, 0xa4, 0x7e, 0xee, 0xe9, 0xac, 0xf0, 0x0a, + 0x38, 0xd4, 0xf6, 0xe7, 0xfe, 0xf9, 0x5b, 0x25, 0x18, 0xbb, 0xb2, 0xb6, 0x56, 0xbf, 0x4c, 0x62, + 0xc1, 0x25, 0xf3, 0xcd, 0x5e, 0x58, 0xd3, 0xc8, 0x0f, 0x12, 0x7e, 0x3a, 0xb1, 0xd7, 0x9a, 0xe7, + 0xd1, 0x28, 0xf3, 0xab, 0x7e, 0x7c, 0x33, 0x6c, 0xc4, 0xa1, 0xe7, 0x6f, 0x64, 0xea, 0xf0, 0x92, + 0x97, 0x97, 0x7b, 0xf1, 0x72, 0xf4, 0x02, 0x0c, 0xb2, 0x70, 0x18, 0x29, 0x7c, 0x7c, 0x58, 0xc9, + 0x09, 0xac, 0x74, 0x7f, 0x77, 0xae, 0x7a, 0x0b, 0xaf, 0xf2, 0x3f, 0x58, 0xa0, 0xa2, 0xb7, 0x60, + 0x64, 0x33, 0x8e, 0xdb, 0x57, 0x88, 0xe3, 0x92, 0x50, 0xf2, 0x89, 0xb3, 0x07, 0xf3, 0x09, 0x3a, + 0x1c, 0xbc, 0x42, 0xb2, 0xb5, 0x92, 0xb2, 0x08, 0xeb, 0x14, 0xed, 0x06, 0x40, 0x02, 0x7b, 0x48, + 0x3a, 0x88, 0xfd, 0xf3, 0x25, 0x18, 0xba, 0xe2, 0xf8, 0x6e, 0x8b, 0x84, 0x68, 0x05, 0x2a, 0xe4, + 0x01, 0x69, 0x8a, 0x83, 0x3c, 0xa7, 0xeb, 0xc9, 0x61, 0xc7, 0x2d, 0x77, 0xf4, 0x3f, 0x66, 0xf5, + 0x11, 0x86, 0x21, 0xda, 0xef, 0xcb, 0xca, 0x0f, 0xfd, 0xb9, 0xfc, 0x51, 0x50, 0x8b, 0x82, 0x9f, + 0x94, 0xa2, 0x08, 0x4b, 0x42, 0xcc, 0x02, 0xd5, 0x6c, 0x37, 0x28, 0x7b, 0x8b, 0x8b, 0x69, 0x76, + 0x6b, 0x4b, 0x75, 0x8e, 0x2e, 0xe8, 0x72, 0x0b, 0x94, 0x2c, 0xc4, 0x09, 0x39, 0x7b, 0x0d, 0xaa, + 0x74, 0xf2, 0x17, 0x5a, 0x9e, 0x73, 0xb0, 0x19, 0xec, 0x39, 0xa8, 0x4a, 0x43, 0x54, 0x24, 0x9c, + 0xda, 0x19, 0x55, 0x69, 0xa7, 0x8a, 0x70, 0x02, 0xb7, 0x2f, 0xc1, 0x34, 0xbb, 0x47, 0x76, 0xe2, + 0x4d, 0x63, 0x2f, 0xe6, 0x2e, 0x7a, 0xfb, 0x1b, 0x15, 0x98, 0x5a, 0x6d, 0x2c, 0x35, 0x4c, 0x9b, + 0xe7, 0x25, 0x18, 0xe5, 0xc7, 0x3e, 0x5d, 0xca, 0x4e, 0x4b, 0xd4, 0x57, 0x77, 0x1f, 0x6b, 0x1a, + 0x0c, 0x1b, 0x98, 0xe8, 0x71, 0x28, 0x7b, 0xef, 0xfa, 0x69, 0x6f, 0xc4, 0xd5, 0xd7, 0x6e, 0x60, + 0x5a, 0x4e, 0xc1, 0x54, 0x82, 0xe0, 0xac, 0x53, 0x81, 0x95, 0x14, 0xf1, 0x2a, 0x8c, 0x7b, 0x51, + 0x33, 0xf2, 0x56, 0x7d, 0xca, 0x57, 0x9c, 0xa6, 0xdc, 0x14, 0x89, 0xc8, 0x4f, 0xbb, 0xaa, 0xa0, + 0x38, 0x85, 0xad, 0xf1, 0xf1, 0x81, 0xc2, 0x52, 0x48, 0xae, 0x9b, 0x3b, 0x15, 0xb0, 0xda, 0xec, + 0xeb, 0x22, 0xe6, 0xdb, 0x24, 0x04, 0x2c, 0xfe, 0xc1, 0x11, 0x96, 0x30, 0x74, 0x19, 0xa6, 0x9a, + 0x9b, 0x4e, 0x7b, 0xa1, 0x13, 0x6f, 0xd6, 0xbc, 0xa8, 0x19, 0x6c, 0x93, 0x70, 0x87, 0x09, 0xc0, + 0xc3, 0x89, 0x4d, 0x4b, 0x01, 0x96, 0xae, 0x2c, 0xd4, 0x29, 0x26, 0xee, 0xae, 0x63, 0x0a, 0x24, + 0x70, 0x04, 0x02, 0xc9, 0x02, 0x4c, 0xc8, 0x56, 0x1b, 0x24, 0x62, 0x47, 0xc4, 0x08, 0xeb, 0xa7, + 0x0a, 0x30, 0x12, 0xc5, 0xaa, 0x97, 0x69, 0x7c, 0xfb, 0x1d, 0xa8, 0x2a, 0x5f, 0x3c, 0xe9, 0x82, + 0x6a, 0xf5, 0x70, 0x41, 0xcd, 0x67, 0xee, 0xd2, 0x3a, 0x5f, 0xce, 0xb4, 0xce, 0xff, 0x53, 0x0b, + 0x12, 0x67, 0x22, 0x84, 0xa1, 0xda, 0x0e, 0xd8, 0x4d, 0x5e, 0x28, 0xaf, 0xcc, 0x9f, 0xca, 0xd9, + 0xf3, 0x9c, 0xe7, 0xf0, 0x01, 0xa9, 0xcb, 0xba, 0x38, 0x21, 0x83, 0xae, 0xc1, 0x50, 0x3b, 0x24, + 0x8d, 0x98, 0xc5, 0x8f, 0xf4, 0x41, 0x91, 0x2f, 0x04, 0x5e, 0x13, 0x4b, 0x12, 0xf6, 0xbf, 0xb4, + 0x00, 0xb8, 0x19, 0xdc, 0xf1, 0x37, 0xc8, 0x31, 0x28, 0xd6, 0x37, 0xa0, 0x12, 0xb5, 0x49, 0xb3, + 0xd8, 0x5d, 0x6c, 0xd2, 0xb3, 0x46, 0x9b, 0x34, 0x93, 0xe9, 0xa0, 0xff, 0x30, 0xa3, 0x63, 0x7f, + 0x1b, 0x60, 0x3c, 0x41, 0xa3, 0xca, 0x0d, 0x7a, 0xde, 0x08, 0x9c, 0x78, 0x34, 0x15, 0x38, 0x51, + 0x65, 0xd8, 0x5a, 0xac, 0x44, 0x0c, 0xe5, 0x2d, 0xe7, 0x81, 0xd0, 0xa5, 0x5e, 0x2a, 0xda, 0x21, + 0xda, 0xd2, 0xfc, 0x75, 0xe7, 0x01, 0x17, 0x5d, 0x9f, 0x93, 0x0b, 0xe9, 0xba, 0xf3, 0x60, 0x9f, + 0xdf, 0xb8, 0x32, 0xee, 0x44, 0x95, 0xb7, 0xcf, 0xfd, 0x59, 0xf2, 0x9f, 0x1d, 0x43, 0xb4, 0x39, + 0xd6, 0xaa, 0xe7, 0x0b, 0x53, 0x70, 0x9f, 0xad, 0x7a, 0x7e, 0xba, 0x55, 0xcf, 0x2f, 0xd0, 0xaa, + 0xc7, 0x3c, 0x8c, 0x87, 0xc4, 0x1d, 0x0d, 0x73, 0xcf, 0x1c, 0xb9, 0xf8, 0xf1, 0xbe, 0x9a, 0x16, + 0x97, 0x3d, 0xbc, 0xf9, 0xf3, 0x52, 0x5e, 0x17, 0xa5, 0xb9, 0x5d, 0x90, 0x4d, 0xa3, 0xbf, 0x67, + 0xc1, 0xb8, 0xf8, 0x8d, 0xc9, 0xbb, 0x1d, 0x12, 0xc5, 0x42, 0x2e, 0xf8, 0xd4, 0x61, 0x7a, 0x23, + 0x48, 0xf0, 0x4e, 0x7d, 0x4c, 0xb2, 0x5f, 0x13, 0x98, 0xdb, 0xb7, 0x54, 0x7f, 0xd0, 0xb7, 0x2d, + 0x98, 0xde, 0x72, 0x1e, 0xf0, 0x16, 0x79, 0x19, 0x76, 0x62, 0x2f, 0x10, 0x2e, 0xa8, 0x2b, 0xfd, + 0xae, 0x93, 0x2e, 0x42, 0xbc, 0xbb, 0xd2, 0xbb, 0x6c, 0x3a, 0x0b, 0x25, 0xb7, 0xd3, 0x99, 0x3d, + 0x9c, 0x5d, 0x87, 0x61, 0xb9, 0x30, 0x33, 0x34, 0xa5, 0x9a, 0x2e, 0xfe, 0xf4, 0x7d, 0x81, 0xa6, + 0x69, 0x56, 0xac, 0x1d, 0xb1, 0x14, 0x8f, 0xb4, 0x9d, 0x77, 0x60, 0x54, 0x5f, 0x77, 0x47, 0xda, + 0xd6, 0xbb, 0x70, 0x22, 0x63, 0x55, 0x1d, 0x69, 0x93, 0xf7, 0xe1, 0xd1, 0x9e, 0xeb, 0xe3, 0x28, + 0x1b, 0xb6, 0x7f, 0xcb, 0xd2, 0x59, 0xe7, 0x31, 0xd8, 0xad, 0xae, 0x9b, 0x76, 0xab, 0xb3, 0x45, + 0xf7, 0x50, 0x0f, 0xe3, 0xd5, 0xba, 0xde, 0x7d, 0x7a, 0x24, 0xa0, 0x35, 0x18, 0x6c, 0xd1, 0x12, + 0x79, 0x6d, 0x78, 0xae, 0x9f, 0x5d, 0x9a, 0x48, 0x60, 0xac, 0x3c, 0xc2, 0x82, 0x96, 0xfd, 0x6d, + 0x0b, 0x2a, 0x7f, 0x89, 0x61, 0x5d, 0x5d, 0xa4, 0x45, 0x6a, 0x82, 0x79, 0xec, 0xdc, 0x5f, 0x7e, + 0x10, 0x13, 0x3f, 0x62, 0x62, 0x7c, 0xe6, 0x10, 0xfd, 0x9f, 0x12, 0x8c, 0xd0, 0xa6, 0xa4, 0xa7, + 0xcc, 0x2b, 0x30, 0xd6, 0x72, 0xee, 0x92, 0x96, 0xb4, 0xb9, 0xa7, 0x95, 0xde, 0x6b, 0x3a, 0x10, + 0x9b, 0xb8, 0xb4, 0xf2, 0xba, 0x7e, 0x25, 0x21, 0x84, 0x24, 0x55, 0xd9, 0xb8, 0xaf, 0xc0, 0x26, + 0x2e, 0xd5, 0xba, 0xee, 0x3b, 0x71, 0x73, 0x53, 0x28, 0xc4, 0xaa, 0xbb, 0x77, 0x68, 0x21, 0xe6, + 0x30, 0x2a, 0xec, 0xc9, 0x15, 0x7b, 0x9b, 0x84, 0x4c, 0xd8, 0xe3, 0x42, 0xb5, 0x12, 0xf6, 0xb0, + 0x09, 0xc6, 0x69, 0x7c, 0xf4, 0x09, 0x18, 0xa7, 0x83, 0x13, 0x74, 0x62, 0xe9, 0x07, 0x34, 0xc0, + 0xfc, 0x80, 0x98, 0x1b, 0xf9, 0x9a, 0x01, 0xc1, 0x29, 0x4c, 0x54, 0x87, 0x69, 0xcf, 0x6f, 0xb6, + 0x3a, 0x2e, 0xb9, 0xe5, 0x7b, 0xbe, 0x17, 0x7b, 0x4e, 0xcb, 0x7b, 0x8f, 0xb8, 0x42, 0xec, 0x56, + 0x2e, 0x5b, 0xab, 0x19, 0x38, 0x38, 0xb3, 0xa6, 0xfd, 0x16, 0x9c, 0xb8, 0x16, 0x38, 0xee, 0xa2, + 0xd3, 0x72, 0xfc, 0x26, 0x09, 0x57, 0xfd, 0x8d, 0x5c, 0x9f, 0x02, 0xfd, 0xde, 0xbf, 0x94, 0x77, + 0xef, 0x6f, 0x87, 0x80, 0xf4, 0x06, 0x84, 0x4f, 0xdc, 0x9b, 0x30, 0xe4, 0xf1, 0xa6, 0xc4, 0x46, + 0xb8, 0x90, 0x27, 0x93, 0x77, 0xf5, 0x51, 0xf3, 0xf1, 0xe2, 0x05, 0x58, 0x92, 0xa4, 0x1a, 0x5c, + 0x96, 0x10, 0x9f, 0xaf, 0x7a, 0xdb, 0x2f, 0xc1, 0x14, 0xab, 0xd9, 0xa7, 0xe2, 0xf7, 0xd7, 0x2c, + 0x98, 0xb8, 0x91, 0x0a, 0x80, 0x7e, 0x1a, 0x06, 0x23, 0x12, 0x66, 0x58, 0x56, 0x1b, 0xac, 0x14, + 0x0b, 0xe8, 0x43, 0xb7, 0xd6, 0xfc, 0x72, 0x09, 0xaa, 0xcc, 0x29, 0xbb, 0x4d, 0x95, 0xb8, 0xa3, + 0x97, 0x97, 0xaf, 0x1b, 0xf2, 0x72, 0x8e, 0xc5, 0x40, 0x75, 0xac, 0x97, 0xb8, 0x8c, 0x6e, 0xa9, + 0xc0, 0xe0, 0x42, 0xc6, 0x82, 0x84, 0x20, 0x0f, 0x1e, 0x1d, 0x37, 0xe3, 0x88, 0x65, 0xd0, 0x30, + 0xbb, 0xc0, 0x57, 0xb8, 0x1f, 0xb8, 0x0b, 0x7c, 0xd5, 0xb3, 0x1e, 0x5c, 0xb2, 0xae, 0x75, 0x9e, + 0x9d, 0x23, 0x3f, 0xc5, 0x5c, 0x6d, 0xd9, 0x1e, 0x56, 0xf1, 0xf5, 0x73, 0xc2, 0x75, 0x56, 0x94, + 0xee, 0x33, 0x86, 0x27, 0xfe, 0xf1, 0xf4, 0x09, 0x49, 0x15, 0xfb, 0x0a, 0x4c, 0xa4, 0x86, 0x0e, + 0xbd, 0x04, 0x03, 0xed, 0x4d, 0x27, 0x22, 0x29, 0xa7, 0xa7, 0x81, 0x3a, 0x2d, 0xdc, 0xdf, 0x9d, + 0x1b, 0x57, 0x15, 0x58, 0x09, 0xe6, 0xd8, 0xf6, 0xe7, 0x4b, 0x50, 0xb9, 0x11, 0xb8, 0xc7, 0xb1, + 0xd4, 0xae, 0x18, 0x4b, 0xed, 0xe9, 0xfc, 0x7c, 0x2d, 0x3d, 0x57, 0x59, 0x3d, 0xb5, 0xca, 0xce, + 0x16, 0xa0, 0x75, 0xf0, 0x02, 0xdb, 0x82, 0x11, 0x96, 0x0f, 0x46, 0x38, 0x65, 0xbd, 0x60, 0xa8, + 0x78, 0x73, 0x29, 0x15, 0x6f, 0x42, 0x43, 0xd5, 0x14, 0xbd, 0x67, 0x60, 0x48, 0x38, 0x01, 0xa5, + 0x1d, 0x8d, 0x05, 0x2e, 0x96, 0x70, 0xfb, 0x5f, 0x94, 0xc1, 0xc8, 0x3f, 0x83, 0x7e, 0xd7, 0x82, + 0xf9, 0x90, 0x07, 0x6d, 0xb9, 0xb5, 0x4e, 0xe8, 0xf9, 0x1b, 0x8d, 0xe6, 0x26, 0x71, 0x3b, 0x2d, + 0xcf, 0xdf, 0x58, 0xdd, 0xf0, 0x03, 0x55, 0xbc, 0xfc, 0x80, 0x34, 0x3b, 0xcc, 0xe6, 0x5e, 0x38, + 0xed, 0x8d, 0xba, 0x00, 0xbf, 0xb8, 0xb7, 0x3b, 0x37, 0x8f, 0xfb, 0x6a, 0x05, 0xf7, 0xd9, 0x2b, + 0xf4, 0x7d, 0x0b, 0xce, 0xf3, 0x0c, 0x2c, 0xc5, 0xbf, 0xa4, 0x90, 0x6a, 0x5c, 0x97, 0x44, 0x13, + 0x72, 0x6b, 0x24, 0xdc, 0x5a, 0x7c, 0x59, 0x0c, 0xf2, 0xf9, 0x7a, 0x7f, 0xad, 0xe2, 0x7e, 0xbb, + 0x69, 0xff, 0xeb, 0x32, 0x8c, 0xd1, 0xf1, 0x4c, 0x52, 0x28, 0xbc, 0x64, 0x2c, 0x93, 0x27, 0x52, + 0xcb, 0x64, 0xca, 0x40, 0x7e, 0x38, 0xd9, 0x13, 0x22, 0x98, 0x6a, 0x39, 0x51, 0x7c, 0x85, 0x38, + 0x61, 0x7c, 0x97, 0x38, 0xec, 0x9e, 0x39, 0xed, 0xc3, 0x52, 0xe0, 0xea, 0x5a, 0x19, 0xe1, 0xae, + 0xa5, 0x89, 0xe1, 0x6e, 0xfa, 0x68, 0x1b, 0x10, 0xbb, 0xd3, 0x0e, 0x1d, 0x3f, 0xe2, 0xdf, 0xe2, + 0x09, 0x1b, 0x7d, 0x7f, 0xad, 0xce, 0x8a, 0x56, 0xd1, 0xb5, 0x2e, 0x6a, 0x38, 0xa3, 0x05, 0xcd, + 0x6b, 0x61, 0xa0, 0xa8, 0xd7, 0xc2, 0x60, 0x8e, 0x87, 0xff, 0x2f, 0x58, 0x70, 0x82, 0x4e, 0x8b, + 0xe9, 0x0d, 0x1e, 0xa1, 0x00, 0x26, 0xe8, 0xb2, 0x6b, 0x91, 0x58, 0x96, 0x89, 0xfd, 0x95, 0x23, + 0xe2, 0x9b, 0x74, 0x12, 0x39, 0xf2, 0xaa, 0x49, 0x0c, 0xa7, 0xa9, 0xdb, 0x5f, 0xb3, 0x80, 0x79, + 0x4f, 0x1e, 0xc3, 0x61, 0x76, 0xd9, 0x3c, 0xcc, 0xec, 0x7c, 0x8e, 0xd1, 0xe3, 0x1c, 0x7b, 0x11, + 0x26, 0x29, 0xb4, 0x1e, 0x06, 0x0f, 0x76, 0xa4, 0xc4, 0x9f, 0x2f, 0x5d, 0xfd, 0x42, 0x89, 0x6f, + 0x1b, 0x15, 0x7d, 0x8a, 0x7e, 0xd1, 0x82, 0xe1, 0xa6, 0xd3, 0x76, 0x9a, 0x3c, 0x7b, 0x57, 0x01, + 0x33, 0x91, 0x51, 0x7f, 0x7e, 0x49, 0xd4, 0xe5, 0x26, 0x8e, 0x8f, 0xca, 0x4f, 0x97, 0xc5, 0xb9, + 0x66, 0x0d, 0xd5, 0xf8, 0xec, 0x3d, 0x18, 0x33, 0x88, 0x1d, 0xa9, 0x3e, 0xfc, 0x8b, 0x16, 0x67, + 0xfa, 0x4a, 0x67, 0xb9, 0x0f, 0x53, 0xbe, 0xf6, 0x9f, 0xb2, 0x33, 0x29, 0x50, 0xcf, 0x17, 0x67, + 0xeb, 0x8c, 0x0b, 0x6a, 0x9e, 0xa2, 0x29, 0x82, 0xb8, 0xbb, 0x0d, 0xfb, 0x57, 0x2d, 0x78, 0x44, + 0x47, 0xd4, 0xc2, 0x85, 0xf3, 0x0c, 0xd8, 0x35, 0x18, 0x0e, 0xda, 0x24, 0x74, 0x12, 0xfd, 0xec, + 0xac, 0x1c, 0xff, 0x9b, 0xa2, 0x7c, 0x7f, 0x77, 0x6e, 0x5a, 0xa7, 0x2e, 0xcb, 0xb1, 0xaa, 0x89, + 0x6c, 0x18, 0x64, 0xe3, 0x12, 0x89, 0x40, 0x6f, 0x96, 0xcd, 0x8a, 0x5d, 0x90, 0x45, 0x58, 0x40, + 0xec, 0xbf, 0x69, 0xf1, 0xe5, 0xa6, 0x77, 0x1d, 0xfd, 0x0c, 0x4c, 0x6e, 0x51, 0x55, 0x6e, 0xf9, + 0x41, 0x3b, 0xe4, 0xe6, 0x77, 0x39, 0x62, 0x2f, 0x15, 0x1f, 0x31, 0xed, 0x73, 0x17, 0x67, 0x44, + 0xef, 0x27, 0xaf, 0xa7, 0xc8, 0xe2, 0xae, 0x86, 0xec, 0x7f, 0x50, 0xe2, 0x7b, 0x96, 0xc9, 0x70, + 0xcf, 0xc0, 0x50, 0x3b, 0x70, 0x97, 0x56, 0x6b, 0x58, 0x8c, 0x95, 0x62, 0x3a, 0x75, 0x5e, 0x8c, + 0x25, 0x1c, 0x5d, 0x04, 0x20, 0x0f, 0x62, 0x12, 0xfa, 0x4e, 0x4b, 0x5d, 0xe9, 0x2b, 0x51, 0x69, + 0x59, 0x41, 0xb0, 0x86, 0x45, 0xeb, 0xb4, 0xc3, 0x60, 0xdb, 0x73, 0x59, 0x9c, 0x4b, 0xd9, 0xac, + 0x53, 0x57, 0x10, 0xac, 0x61, 0x51, 0x05, 0xba, 0xe3, 0x47, 0xfc, 0x18, 0x73, 0xee, 0x8a, 0x4c, + 0x4a, 0xc3, 0x89, 0x02, 0x7d, 0x4b, 0x07, 0x62, 0x13, 0x17, 0x5d, 0x85, 0xc1, 0xd8, 0x61, 0x17, + 0xd5, 0x03, 0x45, 0xbc, 0x7e, 0xd6, 0x28, 0xae, 0x9e, 0xba, 0x8a, 0x56, 0xc5, 0x82, 0x84, 0xfd, + 0x9f, 0xaa, 0x00, 0x89, 0xd4, 0x85, 0x3e, 0xdf, 0xbd, 0xe1, 0x3f, 0x56, 0x54, 0x64, 0x7b, 0x78, + 0xbb, 0x1d, 0x7d, 0xc9, 0x82, 0x11, 0xa7, 0xd5, 0x0a, 0x9a, 0x4e, 0xcc, 0x86, 0xa7, 0x54, 0x94, + 0xf5, 0x88, 0x9e, 0x2c, 0x24, 0x75, 0x79, 0x67, 0x5e, 0x90, 0x97, 0xc7, 0x1a, 0x24, 0xb7, 0x3f, + 0x7a, 0x17, 0xd0, 0x47, 0xa5, 0xd4, 0xce, 0x67, 0x78, 0x36, 0x2d, 0xb5, 0x57, 0x19, 0xc3, 0xd5, + 0x04, 0x76, 0xf4, 0x96, 0x91, 0x79, 0xa8, 0x52, 0x24, 0x58, 0xd9, 0x90, 0x43, 0xf2, 0x92, 0x0e, + 0xa1, 0x37, 0x74, 0xf7, 0xf8, 0x81, 0x22, 0xd9, 0x00, 0x34, 0x71, 0x38, 0xc7, 0x35, 0x3e, 0x86, + 0x09, 0xd7, 0x3c, 0x79, 0x85, 0x8b, 0xdf, 0x85, 0xfc, 0x16, 0x52, 0x47, 0x76, 0x72, 0xd6, 0xa6, + 0x00, 0x38, 0xdd, 0x04, 0x7a, 0x83, 0x07, 0x2f, 0xac, 0xfa, 0xeb, 0x81, 0x70, 0xf3, 0x3b, 0x57, + 0x60, 0xce, 0x77, 0xa2, 0x98, 0x6c, 0xd1, 0x3a, 0xc9, 0xe1, 0x7a, 0x43, 0x50, 0xc1, 0x8a, 0x1e, + 0x5a, 0x83, 0x41, 0x16, 0x9b, 0x16, 0xcd, 0x0c, 0x17, 0x31, 0x09, 0x9a, 0x21, 0xd9, 0xc9, 0xfe, + 0x61, 0x7f, 0x23, 0x2c, 0x68, 0xa1, 0x2b, 0x32, 0x29, 0x43, 0xb4, 0xea, 0xdf, 0x8a, 0x08, 0x4b, + 0xca, 0x50, 0x5d, 0xfc, 0x48, 0x92, 0x65, 0x81, 0x97, 0x67, 0xa6, 0x6b, 0x34, 0x6a, 0x52, 0xc1, + 0x46, 0xfc, 0x97, 0x59, 0x20, 0x67, 0xa0, 0x48, 0x47, 0xcd, 0x9c, 0x91, 0xc9, 0x60, 0xdf, 0x36, + 0x89, 0xe1, 0x34, 0xf5, 0x63, 0x3d, 0x52, 0x67, 0x7d, 0x98, 0x4c, 0x6f, 0xca, 0x23, 0x3d, 0xc2, + 0x7f, 0x58, 0x81, 0x71, 0x73, 0x71, 0xa0, 0xf3, 0x50, 0x15, 0x44, 0x54, 0x8a, 0x37, 0xb5, 0x07, + 0xae, 0x4b, 0x00, 0x4e, 0x70, 0x58, 0xb2, 0x3b, 0x56, 0x5d, 0x73, 0xf0, 0x4a, 0x92, 0xdd, 0x29, + 0x08, 0xd6, 0xb0, 0xa8, 0x24, 0x7c, 0x37, 0x08, 0x62, 0x75, 0x12, 0xa8, 0x75, 0xb3, 0xc8, 0x4a, + 0xb1, 0x80, 0xd2, 0x13, 0xe0, 0x1e, 0x9d, 0xcc, 0x96, 0x69, 0xde, 0x54, 0x27, 0xc0, 0x55, 0x1d, + 0x88, 0x4d, 0x5c, 0x7a, 0xa2, 0x05, 0x11, 0x5b, 0x88, 0x42, 0xde, 0x4e, 0x1c, 0xe6, 0x1a, 0x3c, + 0x5e, 0x53, 0xc2, 0xd1, 0xa7, 0xe1, 0x11, 0x15, 0x5e, 0x89, 0xb9, 0xb9, 0x58, 0xb6, 0x38, 0x68, + 0xa8, 0xcc, 0x8f, 0x2c, 0x65, 0xa3, 0xe1, 0x5e, 0xf5, 0xd1, 0xab, 0x30, 0x2e, 0x64, 0x65, 0x49, + 0x71, 0xc8, 0xf4, 0x7b, 0xb8, 0x6a, 0x40, 0x71, 0x0a, 0x1b, 0xd5, 0x60, 0x92, 0x96, 0x30, 0x21, + 0x55, 0x52, 0xe0, 0x61, 0xa2, 0xea, 0xa8, 0xbf, 0x9a, 0x82, 0xe3, 0xae, 0x1a, 0x68, 0x01, 0x26, + 0xb8, 0xb0, 0x42, 0x15, 0x43, 0x36, 0x0f, 0xc2, 0x37, 0x57, 0x6d, 0x84, 0x9b, 0x26, 0x18, 0xa7, + 0xf1, 0xd1, 0x25, 0x18, 0x75, 0xc2, 0xe6, 0xa6, 0x17, 0x93, 0x66, 0xdc, 0x09, 0x79, 0xca, 0x13, + 0xcd, 0x71, 0x64, 0x41, 0x83, 0x61, 0x03, 0xd3, 0x7e, 0x0f, 0x4e, 0x64, 0x04, 0x02, 0xd0, 0x85, + 0xe3, 0xb4, 0x3d, 0xf9, 0x4d, 0x29, 0xd7, 0xb7, 0x85, 0xfa, 0xaa, 0xfc, 0x1a, 0x0d, 0x8b, 0xae, + 0x4e, 0x66, 0x27, 0xd7, 0x92, 0xb6, 0xaa, 0xd5, 0xb9, 0x22, 0x01, 0x38, 0xc1, 0xb1, 0xff, 0x14, + 0x40, 0xb3, 0xde, 0x14, 0x70, 0x77, 0xba, 0x04, 0xa3, 0x32, 0x0f, 0xb1, 0x96, 0xcc, 0x53, 0x7d, + 0xe6, 0x65, 0x0d, 0x86, 0x0d, 0x4c, 0xda, 0x37, 0x5f, 0xda, 0xa4, 0xd2, 0x8e, 0x76, 0xca, 0x58, + 0x85, 0x13, 0x1c, 0x74, 0x0e, 0x86, 0x23, 0xd2, 0x5a, 0xbf, 0xe6, 0xf9, 0xf7, 0xc4, 0xc2, 0x56, + 0x9c, 0xb9, 0x21, 0xca, 0xb1, 0xc2, 0x40, 0x8b, 0x50, 0xee, 0x78, 0xae, 0x58, 0xca, 0x52, 0x6c, + 0x28, 0xdf, 0x5a, 0xad, 0xed, 0xef, 0xce, 0x3d, 0xd1, 0x2b, 0xbd, 0x32, 0xd5, 0xcf, 0xa3, 0x79, + 0xba, 0xfd, 0x68, 0xe5, 0xac, 0x0b, 0x83, 0xc1, 0x3e, 0x2f, 0x0c, 0x2e, 0x02, 0x88, 0xaf, 0x96, + 0x6b, 0xb9, 0x9c, 0xcc, 0xda, 0x65, 0x05, 0xc1, 0x1a, 0x16, 0xd5, 0xf2, 0x9b, 0x21, 0x71, 0xa4, + 0x22, 0xcc, 0x1d, 0xd4, 0x87, 0x0f, 0xaf, 0xe5, 0x2f, 0xa5, 0x89, 0xe1, 0x6e, 0xfa, 0x28, 0x80, + 0x29, 0x57, 0xc4, 0xf0, 0x26, 0x8d, 0x56, 0xfb, 0xf7, 0x8a, 0x67, 0xbe, 0x3d, 0x69, 0x42, 0xb8, + 0x9b, 0x36, 0xfa, 0x2c, 0xcc, 0xca, 0xc2, 0xee, 0x00, 0x6a, 0xb6, 0x5d, 0xca, 0x8b, 0xa7, 0xf7, + 0x76, 0xe7, 0x66, 0x6b, 0x3d, 0xb1, 0xf0, 0x01, 0x14, 0xd0, 0x9b, 0x30, 0xc8, 0x2e, 0x98, 0xa2, + 0x99, 0x11, 0x76, 0xe2, 0xbd, 0x58, 0x24, 0xb6, 0x82, 0xae, 0xfa, 0x79, 0x76, 0x4d, 0x25, 0xbc, + 0x86, 0x93, 0x5b, 0x3b, 0x56, 0x88, 0x05, 0x4d, 0xd4, 0x86, 0x11, 0xc7, 0xf7, 0x83, 0xd8, 0xe1, + 0x82, 0xd8, 0x68, 0x11, 0x59, 0x52, 0x6b, 0x62, 0x21, 0xa9, 0xcb, 0xdb, 0x51, 0x8e, 0x88, 0x1a, + 0x04, 0xeb, 0x4d, 0xa0, 0xfb, 0x30, 0x11, 0xdc, 0xa7, 0x0c, 0x53, 0xde, 0x88, 0x44, 0x33, 0x63, + 0xe6, 0x87, 0xe5, 0x18, 0x6a, 0x8d, 0xca, 0x1a, 0x27, 0x33, 0x89, 0xe2, 0x74, 0x2b, 0x68, 0xde, + 0x30, 0x57, 0x8f, 0x27, 0xbe, 0xf1, 0x89, 0xb9, 0x5a, 0xb7, 0x4e, 0xb3, 0x20, 0x7d, 0xee, 0x0f, + 0xcb, 0x38, 0xc2, 0x44, 0x2a, 0x48, 0x3f, 0x01, 0x61, 0x1d, 0x0f, 0x6d, 0xc2, 0x68, 0x72, 0xb7, + 0x15, 0x46, 0x2c, 0xff, 0x8f, 0xe6, 0xee, 0x75, 0xf0, 0xc7, 0xad, 0x6a, 0x35, 0x79, 0xa4, 0x8f, + 0x5e, 0x82, 0x0d, 0xca, 0xb3, 0x1f, 0x87, 0x11, 0x6d, 0x8a, 0xfb, 0x71, 0xf7, 0x9e, 0x7d, 0x15, + 0x26, 0xd3, 0x53, 0xd7, 0x97, 0xbb, 0xf8, 0xff, 0x28, 0xc1, 0x44, 0xc6, 0xc5, 0x16, 0xcb, 0xc6, + 0x9c, 0x62, 0xb2, 0x49, 0xf2, 0x65, 0x93, 0x55, 0x96, 0x0a, 0xb0, 0x4a, 0xc9, 0xb7, 0xcb, 0x3d, + 0xf9, 0xb6, 0x60, 0x8f, 0x95, 0xf7, 0xc3, 0x1e, 0xcd, 0x13, 0x69, 0xa0, 0xd0, 0x89, 0xf4, 0x10, + 0x58, 0xaa, 0x71, 0xa8, 0x0d, 0x15, 0x38, 0xd4, 0xbe, 0x5a, 0x82, 0xc9, 0xc4, 0x35, 0x5e, 0xa4, + 0x41, 0x3f, 0xfa, 0x0b, 0x8f, 0x35, 0xe3, 0xc2, 0x23, 0x2f, 0xcb, 0x79, 0xaa, 0x7f, 0x3d, 0x2f, + 0x3f, 0xde, 0x4c, 0x5d, 0x7e, 0xbc, 0xd8, 0x27, 0xdd, 0x83, 0x2f, 0x42, 0xbe, 0x55, 0x82, 0x93, + 0xe9, 0x2a, 0x4b, 0x2d, 0xc7, 0xdb, 0x3a, 0x86, 0xf1, 0xfa, 0xb4, 0x31, 0x5e, 0x2f, 0xf7, 0xf7, + 0x5d, 0xac, 0x93, 0x3d, 0x07, 0xcd, 0x49, 0x0d, 0xda, 0xc7, 0x0f, 0x43, 0xfc, 0xe0, 0x91, 0xfb, + 0x43, 0x0b, 0x1e, 0xcd, 0xac, 0x77, 0x0c, 0x26, 0xde, 0xd7, 0x4d, 0x13, 0xef, 0x0b, 0x87, 0xf8, + 0xba, 0x1e, 0x36, 0xdf, 0x5f, 0x2b, 0xf7, 0xf8, 0x2a, 0x66, 0x04, 0xbb, 0x09, 0x23, 0x4e, 0xb3, + 0x49, 0xa2, 0xe8, 0x7a, 0xe0, 0xaa, 0xc4, 0x62, 0xcf, 0xb3, 0x53, 0x2c, 0x29, 0xde, 0xdf, 0x9d, + 0x9b, 0x4d, 0x93, 0x48, 0xc0, 0x58, 0xa7, 0x60, 0xa6, 0x3c, 0x2c, 0x1d, 0x51, 0xca, 0xc3, 0x8b, + 0x00, 0xdb, 0x4a, 0x5f, 0x4e, 0xdb, 0xd6, 0x34, 0x4d, 0x5a, 0xc3, 0x42, 0x7f, 0x85, 0xc9, 0x9e, + 0xdc, 0x2f, 0xa5, 0x62, 0x46, 0xd9, 0xe6, 0xcc, 0x9f, 0xee, 0xe3, 0xc2, 0x83, 0x79, 0x95, 0x1d, + 0x52, 0x91, 0x44, 0x9f, 0x82, 0xc9, 0x88, 0xe7, 0xa4, 0x58, 0x6a, 0x39, 0x11, 0x8b, 0x09, 0x11, + 0xfc, 0x94, 0xc5, 0xe5, 0x36, 0x52, 0x30, 0xdc, 0x85, 0x6d, 0x7f, 0xb3, 0x0c, 0x1f, 0x3e, 0x60, + 0xd9, 0xa2, 0x05, 0xf3, 0x7e, 0xf8, 0xb9, 0xb4, 0xa5, 0x69, 0x36, 0xb3, 0xb2, 0x61, 0x7a, 0x4a, + 0xcd, 0x76, 0xe9, 0x7d, 0xcf, 0xf6, 0x97, 0x75, 0xbb, 0x20, 0x77, 0x55, 0xbd, 0x7c, 0xe8, 0x8d, + 0xf9, 0xa3, 0x7a, 0x2d, 0xf0, 0x39, 0x0b, 0x9e, 0xc8, 0xfc, 0x2c, 0xc3, 0x1f, 0xe5, 0x3c, 0x54, + 0x9b, 0xb4, 0x50, 0x8b, 0xe0, 0x4a, 0x42, 0x27, 0x25, 0x00, 0x27, 0x38, 0x86, 0xdb, 0x49, 0x29, + 0xd7, 0xed, 0xe4, 0xf7, 0x2c, 0x98, 0x4e, 0x77, 0xe2, 0x18, 0xf8, 0x56, 0xc3, 0xe4, 0x5b, 0xf3, + 0xfd, 0x4d, 0x7e, 0x0f, 0x96, 0xf5, 0xd5, 0x49, 0x38, 0xd5, 0x75, 0xea, 0xf1, 0x51, 0xfc, 0x39, + 0x0b, 0xa6, 0x36, 0x98, 0x9e, 0xa0, 0x85, 0xc9, 0x89, 0xef, 0xca, 0x89, 0x2d, 0x3c, 0x30, 0xba, + 0x8e, 0x6b, 0x3d, 0x5d, 0x28, 0xb8, 0xbb, 0x31, 0xf4, 0x45, 0x0b, 0xa6, 0x9d, 0xfb, 0x51, 0xd7, + 0x23, 0x3d, 0x62, 0x21, 0xbd, 0x9a, 0x63, 0x96, 0xcb, 0x79, 0xde, 0x67, 0x71, 0x66, 0x6f, 0x77, + 0x6e, 0x3a, 0x0b, 0x0b, 0x67, 0xb6, 0x4a, 0xe7, 0x77, 0x53, 0x84, 0xcb, 0x14, 0x0b, 0xf8, 0xcc, + 0x0a, 0xae, 0xe1, 0x6c, 0x4d, 0x42, 0xb0, 0xa2, 0x88, 0xde, 0x86, 0xea, 0x86, 0x8c, 0x8c, 0x4b, + 0xb3, 0xcd, 0x1e, 0xc3, 0x9c, 0x15, 0x48, 0xc7, 0xc3, 0x15, 0x14, 0x08, 0x27, 0x44, 0xd1, 0x15, + 0x28, 0xfb, 0xeb, 0x91, 0x88, 0x41, 0xcf, 0xf3, 0x36, 0x32, 0x7d, 0xbc, 0x78, 0xd8, 0xee, 0x8d, + 0x95, 0x06, 0xa6, 0x24, 0x28, 0xa5, 0xf0, 0xae, 0x2b, 0xec, 0xd1, 0x39, 0x94, 0xf0, 0x62, 0xad, + 0x9b, 0x12, 0x5e, 0xac, 0x61, 0x4a, 0x02, 0xd5, 0x61, 0x80, 0x05, 0xe3, 0x08, 0x63, 0x73, 0x4e, + 0xa2, 0x82, 0xae, 0x90, 0x23, 0x9e, 0x99, 0x93, 0x15, 0x63, 0x4e, 0x08, 0xad, 0xc1, 0x60, 0x93, + 0x3d, 0x2e, 0x21, 0xac, 0x00, 0x79, 0x29, 0x3c, 0xba, 0x1e, 0xa2, 0xe0, 0x37, 0x6c, 0xbc, 0x1c, + 0x0b, 0x5a, 0x8c, 0x2a, 0x69, 0x6f, 0xae, 0x47, 0x42, 0xcd, 0xcf, 0xa3, 0xda, 0xf5, 0x4c, 0x88, + 0xa0, 0xca, 0xca, 0xb1, 0xa0, 0x85, 0x6a, 0x50, 0x5a, 0x6f, 0x8a, 0x58, 0x9d, 0x1c, 0x23, 0xb3, + 0x19, 0x83, 0xbd, 0x38, 0xb8, 0xb7, 0x3b, 0x57, 0x5a, 0x59, 0xc2, 0xa5, 0xf5, 0x26, 0x7a, 0x1d, + 0x86, 0xd6, 0x79, 0x54, 0xad, 0x48, 0xe6, 0x7b, 0x21, 0x2f, 0xf4, 0xb7, 0x2b, 0x04, 0x97, 0x87, + 0xa4, 0x08, 0x00, 0x96, 0xe4, 0x58, 0x9e, 0x43, 0x15, 0x27, 0x2c, 0xb2, 0xf9, 0xce, 0xf7, 0x17, + 0x57, 0x2c, 0xb4, 0x5f, 0x55, 0x8a, 0x35, 0x8a, 0x74, 0xcd, 0x3b, 0xf2, 0x9d, 0x1c, 0x96, 0xc9, + 0x37, 0x77, 0xcd, 0x67, 0x3e, 0xab, 0xc3, 0xd7, 0xbc, 0x02, 0xe1, 0x84, 0x28, 0xea, 0xc0, 0xd8, + 0x76, 0xd4, 0xde, 0x24, 0x72, 0xeb, 0xb3, 0xf4, 0xbe, 0x23, 0x17, 0x3f, 0x99, 0x93, 0xb3, 0x59, + 0x54, 0xf1, 0xc2, 0xb8, 0xe3, 0xb4, 0xba, 0x38, 0x18, 0x4b, 0x2c, 0x77, 0x5b, 0x27, 0x8b, 0xcd, + 0x56, 0xe8, 0x94, 0xbc, 0xdb, 0x09, 0xee, 0xee, 0xc4, 0x44, 0xa4, 0xff, 0xcd, 0x99, 0x92, 0xd7, + 0x38, 0x72, 0xf7, 0x94, 0x08, 0x00, 0x96, 0xe4, 0xd4, 0x90, 0x31, 0x6e, 0x3c, 0x59, 0x78, 0xc8, + 0xba, 0xbe, 0x21, 0x19, 0x32, 0xc6, 0x7d, 0x13, 0xa2, 0x8c, 0xeb, 0xb6, 0x37, 0x83, 0x38, 0xf0, + 0x53, 0xbc, 0x7f, 0xaa, 0x08, 0xd7, 0xad, 0x67, 0xd4, 0xec, 0xe6, 0xba, 0x59, 0x58, 0x38, 0xb3, + 0x55, 0xe4, 0xc3, 0x78, 0x3b, 0x08, 0xe3, 0xfb, 0x41, 0x28, 0xd7, 0x21, 0x2a, 0xa4, 0x23, 0x1a, + 0x75, 0x44, 0xdb, 0xcc, 0xf3, 0xd8, 0x84, 0xe0, 0x14, 0x75, 0x3a, 0x75, 0x51, 0xd3, 0x69, 0x91, + 0xd5, 0x9b, 0x33, 0x27, 0x8a, 0x4c, 0x5d, 0x83, 0x23, 0x77, 0x4f, 0x9d, 0x00, 0x60, 0x49, 0x8e, + 0xf2, 0x3a, 0x96, 0xcb, 0x9e, 0x65, 0x33, 0xce, 0xe5, 0x75, 0x5d, 0xde, 0xb9, 0x9c, 0xd7, 0xb1, + 0x62, 0xcc, 0x09, 0xa1, 0x77, 0xa0, 0x2a, 0x84, 0xdb, 0x20, 0x9a, 0x39, 0xc9, 0xa8, 0xfe, 0x64, + 0x4e, 0x6f, 0x39, 0xfa, 0xcd, 0x46, 0xf6, 0xa9, 0x2f, 0xa2, 0xff, 0x24, 0x12, 0x4e, 0xc8, 0xdb, + 0xbf, 0x3a, 0xd8, 0x2d, 0xf6, 0x30, 0xc5, 0xe6, 0x6f, 0x74, 0xdf, 0x58, 0x7f, 0xaa, 0x7f, 0xfd, + 0xfd, 0x21, 0xde, 0x5d, 0x7f, 0xd1, 0x82, 0x53, 0xed, 0xcc, 0xcf, 0x13, 0x82, 0x43, 0xbf, 0x66, + 0x00, 0x3e, 0x34, 0x2a, 0xc7, 0x78, 0x36, 0x1c, 0xf7, 0x68, 0x33, 0xad, 0x0a, 0x94, 0xdf, 0xb7, + 0x2a, 0x70, 0x07, 0x86, 0x99, 0xec, 0x9a, 0xe4, 0xf7, 0xe9, 0x33, 0x15, 0x0e, 0x13, 0x41, 0x96, + 0x04, 0x09, 0xac, 0x88, 0xd1, 0x81, 0x7b, 0x3c, 0xfd, 0x11, 0x98, 0x30, 0xb0, 0xc8, 0x6c, 0xc9, + 0xf5, 0xac, 0x15, 0x31, 0x12, 0x8f, 0xd7, 0x0f, 0x42, 0xde, 0xcf, 0x43, 0xc0, 0x07, 0x37, 0x86, + 0x6a, 0x19, 0x8a, 0xde, 0xa0, 0x79, 0x3d, 0x95, 0xaf, 0xec, 0x1d, 0xaf, 0x82, 0xf2, 0x0f, 0xad, + 0x0c, 0x79, 0x9a, 0x2b, 0x95, 0x9f, 0x34, 0x95, 0xca, 0xa7, 0xd3, 0x4a, 0x65, 0x97, 0x29, 0xc9, + 0xd0, 0x27, 0x8b, 0x67, 0xe6, 0x2d, 0x9a, 0xc0, 0xc8, 0x6e, 0xc1, 0x99, 0x3c, 0x66, 0xcd, 0x5c, + 0xd6, 0x5c, 0x75, 0x59, 0x9b, 0xb8, 0xac, 0xb9, 0xab, 0x35, 0xcc, 0x20, 0x45, 0x73, 0x60, 0xd8, + 0x3f, 0x5f, 0x82, 0x72, 0x3d, 0x70, 0x8f, 0xc1, 0x34, 0x76, 0xd9, 0x30, 0x8d, 0x3d, 0x95, 0xfb, + 0x50, 0x64, 0x4f, 0x43, 0xd8, 0xcd, 0x94, 0x21, 0xec, 0x27, 0xf2, 0x49, 0x1d, 0x6c, 0xf6, 0xfa, + 0x76, 0x19, 0xf4, 0xa7, 0x2e, 0xd1, 0x7f, 0x38, 0x8c, 0x27, 0x73, 0xb9, 0xd8, 0xeb, 0x97, 0xa2, + 0x0d, 0xe6, 0xf1, 0x26, 0x03, 0x31, 0x7f, 0x64, 0x1d, 0x9a, 0xef, 0x10, 0x6f, 0x63, 0x33, 0x26, + 0x6e, 0xfa, 0xc3, 0x8e, 0xcf, 0xa1, 0xf9, 0x2f, 0x2c, 0x98, 0x48, 0xb5, 0x8e, 0x5a, 0x59, 0x11, + 0x5c, 0x87, 0x34, 0x76, 0x4d, 0xe5, 0x86, 0x7c, 0xcd, 0x03, 0xa8, 0x3b, 0x0b, 0x69, 0x50, 0x62, + 0xb2, 0xb5, 0xba, 0xd4, 0x88, 0xb0, 0x86, 0x81, 0x5e, 0x82, 0x91, 0x38, 0x68, 0x07, 0xad, 0x60, + 0x63, 0xe7, 0x2a, 0x91, 0xd9, 0x59, 0xd4, 0xcd, 0xd2, 0x5a, 0x02, 0xc2, 0x3a, 0x9e, 0xfd, 0x9d, + 0x32, 0xa4, 0x1f, 0x4a, 0xfd, 0xff, 0xeb, 0xf4, 0x47, 0x67, 0x9d, 0xfe, 0xb1, 0x05, 0x93, 0xb4, + 0x75, 0xe6, 0x62, 0x24, 0x1d, 0x8f, 0xd5, 0x33, 0x21, 0xd6, 0x01, 0xcf, 0x84, 0x3c, 0x4d, 0xb9, + 0x9d, 0x1b, 0x74, 0x62, 0x61, 0x02, 0xd3, 0x98, 0x18, 0x2d, 0xc5, 0x02, 0x2a, 0xf0, 0x48, 0x18, + 0x8a, 0x08, 0x2d, 0x1d, 0x8f, 0x84, 0x21, 0x16, 0x50, 0xf9, 0x8a, 0x48, 0xa5, 0xc7, 0x2b, 0x22, + 0x2c, 0xbf, 0x99, 0x70, 0x6b, 0x11, 0x62, 0x85, 0x96, 0xdf, 0x4c, 0xfa, 0xbb, 0x24, 0x38, 0xf6, + 0xd7, 0xcb, 0x30, 0x5a, 0x0f, 0xdc, 0x24, 0xa2, 0xe0, 0x45, 0x23, 0xa2, 0xe0, 0x4c, 0x2a, 0xa2, + 0x60, 0x52, 0xc7, 0x7d, 0x38, 0x01, 0x05, 0x22, 0x0f, 0x1e, 0x7b, 0xe7, 0xe6, 0x90, 0xc1, 0x04, + 0x46, 0x1e, 0x3c, 0x45, 0x08, 0x9b, 0x74, 0x7f, 0x9c, 0x82, 0x08, 0xfe, 0xb7, 0x05, 0xe3, 0xf5, + 0xc0, 0xa5, 0x0b, 0xf4, 0xc7, 0x69, 0x35, 0xea, 0xd9, 0xf3, 0x06, 0x0f, 0xc8, 0x9e, 0xf7, 0xcf, + 0x2d, 0x18, 0xaa, 0x07, 0xee, 0x31, 0x98, 0x87, 0x57, 0x4c, 0xf3, 0xf0, 0x13, 0xb9, 0x9c, 0xb7, + 0x87, 0x45, 0xf8, 0x9b, 0x65, 0x18, 0xa3, 0x3d, 0x0e, 0x36, 0xe4, 0x7c, 0x19, 0x63, 0x63, 0x15, + 0x18, 0x1b, 0x2a, 0x12, 0x06, 0xad, 0x56, 0x70, 0x3f, 0x3d, 0x77, 0x2b, 0xac, 0x14, 0x0b, 0x28, + 0x3a, 0x07, 0xc3, 0xed, 0x90, 0x6c, 0x7b, 0x41, 0x27, 0x4a, 0x47, 0x7b, 0xd6, 0x45, 0x39, 0x56, + 0x18, 0xe8, 0x45, 0x18, 0x8d, 0x3c, 0xbf, 0x49, 0xa4, 0xd3, 0x4b, 0x85, 0x39, 0xbd, 0xf0, 0x44, + 0xa5, 0x5a, 0x39, 0x36, 0xb0, 0xd0, 0x1d, 0xa8, 0xb2, 0xff, 0x6c, 0x07, 0xf5, 0xff, 0x0c, 0x08, + 0x57, 0x87, 0x25, 0x01, 0x9c, 0xd0, 0x42, 0x17, 0x01, 0x62, 0xe9, 0x9e, 0x13, 0x89, 0xb0, 0x64, + 0x25, 0x97, 0x2a, 0xc7, 0x9d, 0x08, 0x6b, 0x58, 0xe8, 0x39, 0xa8, 0xc6, 0x8e, 0xd7, 0xba, 0xe6, + 0xf9, 0x24, 0x12, 0xee, 0x4d, 0x22, 0xe9, 0xb8, 0x28, 0xc4, 0x09, 0x9c, 0x9e, 0xf7, 0x2c, 0xe8, + 0x9d, 0x3f, 0x31, 0x34, 0xcc, 0xb0, 0xd9, 0x79, 0x7f, 0x4d, 0x95, 0x62, 0x0d, 0xc3, 0xbe, 0x04, + 0x27, 0xeb, 0x81, 0x5b, 0x0f, 0xc2, 0x78, 0x25, 0x08, 0xef, 0x3b, 0xa1, 0x2b, 0xe7, 0x6f, 0x4e, + 0xe6, 0xba, 0xa6, 0x67, 0xf2, 0x00, 0xb7, 0x22, 0x18, 0xb9, 0xab, 0x5f, 0x60, 0x27, 0x7e, 0x9f, + 0xa1, 0x2a, 0x7f, 0x54, 0x06, 0x54, 0x67, 0x0e, 0x44, 0xc6, 0x8b, 0x54, 0x9b, 0x30, 0x1e, 0x91, + 0x6b, 0x9e, 0xdf, 0x79, 0x20, 0x48, 0x15, 0x8b, 0x0d, 0x6a, 0x2c, 0xeb, 0x75, 0xb8, 0x9d, 0xc6, + 0x2c, 0xc3, 0x29, 0xba, 0x74, 0x66, 0xc3, 0x8e, 0xbf, 0x10, 0xdd, 0x8a, 0x48, 0x28, 0x5e, 0x60, + 0xfa, 0x38, 0xbb, 0xc6, 0x94, 0x85, 0xfb, 0xbb, 0x73, 0x67, 0x73, 0x9c, 0x33, 0x7c, 0xef, 0x01, + 0xc5, 0x5c, 0xad, 0xe1, 0x84, 0x16, 0x5d, 0x68, 0xec, 0xcf, 0x8d, 0xc0, 0xc7, 0x41, 0x10, 0xcb, + 0xa5, 0xc9, 0x5e, 0xef, 0xd0, 0xca, 0xb1, 0x81, 0x85, 0x22, 0x40, 0x51, 0xa7, 0xdd, 0x6e, 0xb1, + 0x5b, 0x55, 0xa7, 0x75, 0x39, 0x0c, 0x3a, 0x6d, 0xee, 0x73, 0x5e, 0x5e, 0x5c, 0xa2, 0x3c, 0xb8, + 0xd1, 0x05, 0xdd, 0xdf, 0x9d, 0x7b, 0x26, 0xbf, 0x83, 0x0c, 0x77, 0xb5, 0x86, 0x33, 0xc8, 0x23, + 0x0c, 0x43, 0xeb, 0x11, 0xfb, 0x2d, 0x42, 0xeb, 0x2f, 0x31, 0x33, 0x6e, 0x83, 0x15, 0xf5, 0x47, + 0x5e, 0x12, 0xb2, 0x7f, 0x96, 0x1d, 0xb3, 0xec, 0x81, 0x9e, 0xb8, 0x13, 0x12, 0xb4, 0x05, 0x63, + 0x6d, 0x76, 0x94, 0xc6, 0x61, 0xd0, 0x6a, 0x11, 0x29, 0xe5, 0x1e, 0xce, 0x91, 0x8a, 0x3f, 0xc9, + 0xa1, 0x93, 0xc3, 0x26, 0x75, 0xfb, 0xbf, 0x8e, 0x33, 0x8e, 0x29, 0xae, 0xcc, 0x87, 0x84, 0xcb, + 0xb4, 0x90, 0x27, 0x3f, 0x52, 0xe4, 0xa9, 0xbd, 0xe4, 0x34, 0x12, 0x0e, 0xd8, 0x58, 0x52, 0x41, + 0x9f, 0x61, 0x01, 0x01, 0x9c, 0x4d, 0x15, 0x7f, 0x40, 0x94, 0xe3, 0x1b, 0xc1, 0x00, 0x82, 0x04, + 0xd6, 0xc8, 0xa1, 0x6b, 0x30, 0x26, 0xde, 0x73, 0x11, 0xc6, 0x92, 0xb2, 0xa1, 0xe8, 0x8f, 0x61, + 0x1d, 0xb8, 0x9f, 0x2e, 0xc0, 0x66, 0x65, 0xb4, 0x01, 0x8f, 0x6b, 0xef, 0x95, 0x65, 0x38, 0xfd, + 0x71, 0xfe, 0xf7, 0xc4, 0xde, 0xee, 0xdc, 0xe3, 0x6b, 0x07, 0x21, 0xe2, 0x83, 0xe9, 0xa0, 0x9b, + 0x70, 0xd2, 0x69, 0xc6, 0xde, 0x36, 0xa9, 0x11, 0xc7, 0x6d, 0x79, 0x3e, 0x31, 0x93, 0x35, 0x3c, + 0xba, 0xb7, 0x3b, 0x77, 0x72, 0x21, 0x0b, 0x01, 0x67, 0xd7, 0x43, 0x9f, 0x84, 0xaa, 0xeb, 0x47, + 0x62, 0x0c, 0x06, 0x8d, 0xe7, 0xf9, 0xaa, 0xb5, 0x1b, 0x0d, 0xf5, 0xfd, 0xc9, 0x1f, 0x9c, 0x54, + 0x40, 0xef, 0xc2, 0xa8, 0x1e, 0x84, 0x25, 0x9e, 0x85, 0x7c, 0xb9, 0x90, 0x16, 0x6f, 0x44, 0x2e, + 0x71, 0x3b, 0xa2, 0x72, 0xae, 0x35, 0x82, 0x9a, 0x8c, 0x26, 0xd0, 0x4f, 0x03, 0x8a, 0x48, 0xb8, + 0xed, 0x35, 0xc9, 0x42, 0x93, 0xe5, 0x18, 0x66, 0x96, 0xa6, 0x61, 0x23, 0xca, 0x04, 0x35, 0xba, + 0x30, 0x70, 0x46, 0x2d, 0x74, 0x85, 0xf2, 0x3f, 0xbd, 0x54, 0xf8, 0x42, 0x4b, 0xf1, 0x74, 0xa6, + 0x46, 0xda, 0x21, 0x69, 0x3a, 0x31, 0x71, 0x4d, 0x8a, 0x38, 0x55, 0x8f, 0x9e, 0x8e, 0xea, 0x19, + 0x09, 0x30, 0x3d, 0x78, 0xbb, 0x9f, 0x92, 0xa0, 0xda, 0xde, 0x66, 0x10, 0xc5, 0x37, 0x48, 0x7c, + 0x3f, 0x08, 0xef, 0x89, 0xbc, 0x6c, 0x49, 0xc2, 0xc6, 0x04, 0x84, 0x75, 0x3c, 0x2a, 0xc9, 0xb1, + 0x0b, 0xc8, 0xd5, 0x1a, 0xbb, 0xdd, 0x19, 0x4e, 0xf6, 0xce, 0x15, 0x5e, 0x8c, 0x25, 0x5c, 0xa2, + 0xae, 0xd6, 0x97, 0xd8, 0x4d, 0x4d, 0x0a, 0x75, 0xb5, 0xbe, 0x84, 0x25, 0x1c, 0x05, 0xdd, 0x8f, + 0x20, 0x8e, 0x17, 0xb9, 0x35, 0xeb, 0x3e, 0x4f, 0x0a, 0xbe, 0x83, 0xf8, 0x00, 0x26, 0xd5, 0x43, + 0x8c, 0x3c, 0x75, 0x5d, 0x34, 0x33, 0xc1, 0x16, 0xce, 0x61, 0x32, 0xe0, 0x29, 0xeb, 0xe2, 0x6a, + 0x8a, 0x26, 0xee, 0x6a, 0xc5, 0x48, 0x11, 0x32, 0x99, 0xfb, 0x34, 0xc8, 0x79, 0xa8, 0x46, 0x9d, + 0xbb, 0x6e, 0xb0, 0xe5, 0x78, 0x3e, 0xbb, 0x4e, 0xd1, 0x44, 0xa9, 0x86, 0x04, 0xe0, 0x04, 0x07, + 0xd5, 0x61, 0xd8, 0x11, 0x8a, 0xa4, 0xb8, 0xf6, 0xc8, 0xc9, 0x05, 0x20, 0xd5, 0x4e, 0x6e, 0xe3, + 0x95, 0xff, 0xb0, 0xa2, 0x82, 0x5e, 0x81, 0x31, 0x11, 0xca, 0x26, 0x5c, 0x4e, 0x4f, 0x98, 0x61, + 0x0f, 0x0d, 0x1d, 0x88, 0x4d, 0x5c, 0xb4, 0x01, 0xe3, 0x94, 0x4a, 0xc2, 0x00, 0x67, 0xa6, 0xfb, + 0xe3, 0xa1, 0x5a, 0x12, 0x76, 0x9d, 0x0c, 0x4e, 0x91, 0x45, 0x2e, 0x3c, 0xe6, 0x74, 0xe2, 0x60, + 0x8b, 0xee, 0x04, 0x73, 0x9f, 0xac, 0x05, 0xf7, 0x88, 0xcf, 0xee, 0x3a, 0x86, 0x17, 0xcf, 0xec, + 0xed, 0xce, 0x3d, 0xb6, 0x70, 0x00, 0x1e, 0x3e, 0x90, 0x0a, 0x7a, 0x0b, 0x46, 0xe2, 0xa0, 0x25, + 0x3c, 0xc9, 0xa3, 0x99, 0x53, 0x45, 0x52, 0x21, 0xad, 0xa9, 0x0a, 0xba, 0x31, 0x45, 0x11, 0xc1, + 0x3a, 0x45, 0xf4, 0x36, 0x8c, 0xd2, 0xb9, 0xbf, 0xee, 0xb4, 0xdb, 0x9e, 0xbf, 0x11, 0xcd, 0x3c, + 0x52, 0x64, 0xb4, 0x54, 0xa2, 0x4f, 0x73, 0xff, 0xb2, 0x22, 0x12, 0x61, 0x83, 0xe2, 0xec, 0x4f, + 0xc1, 0x54, 0x17, 0xd3, 0xeb, 0xcb, 0xc9, 0xf6, 0x3f, 0x0e, 0x40, 0x55, 0x59, 0x2e, 0xd1, 0x79, + 0xd3, 0x48, 0xfd, 0x68, 0xda, 0x48, 0x3d, 0x4c, 0x05, 0x45, 0xdd, 0x2e, 0xfd, 0xd9, 0x8c, 0xc7, + 0xfd, 0x9f, 0xcd, 0xdd, 0xe5, 0xc5, 0x23, 0xec, 0x34, 0x55, 0xb3, 0x5c, 0xd8, 0xee, 0x5d, 0x39, + 0x50, 0x7b, 0x2d, 0xf8, 0x60, 0x25, 0xd5, 0x53, 0xdb, 0x81, 0xbb, 0x5a, 0x4f, 0xbf, 0xc7, 0x56, + 0xa7, 0x85, 0x98, 0xc3, 0x98, 0x7e, 0x41, 0x4f, 0x6d, 0xa6, 0x5f, 0x0c, 0x1d, 0x52, 0xbf, 0x90, + 0x04, 0x70, 0x42, 0x0b, 0x6d, 0xc3, 0x54, 0xd3, 0x7c, 0x5e, 0x4f, 0xc5, 0xcd, 0x3d, 0xdf, 0xc7, + 0xf3, 0x76, 0x1d, 0xed, 0x65, 0x9c, 0xa5, 0x34, 0x3d, 0xdc, 0xdd, 0x04, 0x7a, 0x05, 0x86, 0xdf, + 0x0d, 0x22, 0x76, 0x7d, 0x22, 0x8e, 0x2e, 0x19, 0x9f, 0x34, 0xfc, 0xda, 0xcd, 0x06, 0x2b, 0xdf, + 0xdf, 0x9d, 0x1b, 0xa9, 0x07, 0xae, 0xfc, 0x8b, 0x55, 0x05, 0xf4, 0x39, 0x0b, 0x4e, 0x1a, 0x3b, + 0x59, 0xf5, 0x1c, 0x0e, 0xd3, 0xf3, 0xc7, 0x45, 0xcb, 0x27, 0x57, 0xb3, 0x68, 0xe2, 0xec, 0xa6, + 0xec, 0xdf, 0xe1, 0xa6, 0x5a, 0x61, 0xbc, 0x21, 0x51, 0xa7, 0x75, 0x1c, 0xaf, 0x54, 0xdc, 0x34, + 0xec, 0x4a, 0x0f, 0xe1, 0xb2, 0xe0, 0xdf, 0x5b, 0xec, 0xb2, 0x60, 0x8d, 0x6c, 0xb5, 0x5b, 0x4e, + 0x7c, 0x1c, 0x3e, 0xd8, 0x9f, 0x81, 0xe1, 0x58, 0xb4, 0x56, 0xec, 0x89, 0x0d, 0xad, 0x7b, 0xec, + 0x12, 0x45, 0x1d, 0x7d, 0xb2, 0x14, 0x2b, 0x82, 0xf6, 0xbf, 0xe2, 0xb3, 0x22, 0x21, 0xc7, 0x60, + 0x11, 0xb9, 0x61, 0x5a, 0x44, 0x9e, 0x29, 0xfc, 0x2d, 0x3d, 0x2c, 0x23, 0xdf, 0x31, 0xbf, 0x80, + 0x69, 0x28, 0x3f, 0x3a, 0xb7, 0x59, 0xf6, 0xaf, 0x58, 0x30, 0x9d, 0xe5, 0x14, 0x41, 0x45, 0x18, + 0xae, 0x1f, 0xa9, 0x7b, 0x3e, 0x35, 0xaa, 0xb7, 0x45, 0x39, 0x56, 0x18, 0x85, 0x73, 0xde, 0xf7, + 0x97, 0xca, 0xeb, 0x26, 0x98, 0x0f, 0x35, 0xa2, 0x57, 0x79, 0xc8, 0x85, 0xa5, 0x5e, 0x52, 0xec, + 0x2f, 0xdc, 0xc2, 0xfe, 0x46, 0x09, 0xa6, 0xb9, 0xb1, 0x7d, 0x61, 0x3b, 0xf0, 0xdc, 0x7a, 0xe0, + 0x8a, 0x00, 0x14, 0x17, 0x46, 0xdb, 0x9a, 0x7a, 0x5b, 0x2c, 0x35, 0x90, 0xae, 0x10, 0x27, 0x2a, + 0x85, 0x5e, 0x8a, 0x0d, 0xaa, 0xb4, 0x15, 0xb2, 0xed, 0x35, 0x95, 0xed, 0xb6, 0xd4, 0xf7, 0xc9, + 0xa0, 0x5a, 0x59, 0xd6, 0xe8, 0x60, 0x83, 0xea, 0x11, 0x3c, 0x55, 0x63, 0xff, 0x7d, 0x0b, 0x1e, + 0xe9, 0x91, 0x3e, 0x88, 0x36, 0x77, 0x9f, 0x5d, 0x70, 0x88, 0x97, 0x40, 0x55, 0x73, 0xfc, 0xda, + 0x03, 0x0b, 0x28, 0xba, 0x0b, 0xc0, 0xaf, 0x2d, 0xa8, 0x34, 0x9d, 0xbe, 0x53, 0x2f, 0x98, 0xa4, + 0x43, 0xcb, 0xdf, 0x20, 0x29, 0x61, 0x8d, 0xaa, 0xfd, 0xb5, 0x32, 0x0c, 0xf0, 0x07, 0xe7, 0xeb, + 0x30, 0xb4, 0xc9, 0xf3, 0x2a, 0xf7, 0x97, 0xd6, 0x39, 0x51, 0x5f, 0x78, 0x01, 0x96, 0x64, 0xd0, + 0x75, 0x38, 0x21, 0x42, 0xa0, 0x6a, 0xa4, 0xe5, 0xec, 0x48, 0x7d, 0x98, 0xbf, 0x5f, 0x22, 0x13, + 0xed, 0x9f, 0x58, 0xed, 0x46, 0xc1, 0x59, 0xf5, 0xd0, 0xab, 0x5d, 0x69, 0x10, 0x79, 0xbe, 0x6a, + 0x25, 0x0b, 0xe7, 0xa4, 0x42, 0x7c, 0x05, 0xc6, 0xda, 0x5d, 0x9a, 0xbf, 0xf6, 0xae, 0xb7, 0xa9, + 0xed, 0x9b, 0xb8, 0xcc, 0x87, 0xa2, 0xc3, 0x7c, 0x47, 0xd6, 0x36, 0x43, 0x12, 0x6d, 0x06, 0x2d, + 0x57, 0x3c, 0x49, 0x9b, 0xf8, 0x50, 0xa4, 0xe0, 0xb8, 0xab, 0x06, 0xa5, 0xb2, 0xee, 0x78, 0xad, + 0x4e, 0x48, 0x12, 0x2a, 0x83, 0x26, 0x95, 0x95, 0x14, 0x1c, 0x77, 0xd5, 0xa0, 0x6b, 0xeb, 0xa4, + 0x78, 0xc5, 0x54, 0x06, 0xcb, 0x0b, 0x16, 0xf4, 0x69, 0x18, 0x92, 0x81, 0x0c, 0x85, 0x72, 0xba, + 0x08, 0x07, 0x09, 0xf5, 0x22, 0xaa, 0xf6, 0x9e, 0x9d, 0x08, 0x61, 0x90, 0xf4, 0x0e, 0xf3, 0x5a, + 0xe6, 0x9f, 0x5b, 0x70, 0x22, 0xc3, 0x21, 0x8f, 0xb3, 0xb4, 0x0d, 0x2f, 0x8a, 0xd5, 0x6b, 0x1a, + 0x1a, 0x4b, 0xe3, 0xe5, 0x58, 0x61, 0xd0, 0xdd, 0xc2, 0x99, 0x66, 0x9a, 0x51, 0x0a, 0x57, 0x17, + 0x01, 0xed, 0x8f, 0x51, 0xa2, 0x33, 0x50, 0xe9, 0x44, 0x24, 0x94, 0x0f, 0x4b, 0x4a, 0x3e, 0x7f, + 0x2b, 0x22, 0x21, 0x66, 0x10, 0x2a, 0xb6, 0x6e, 0x28, 0x8b, 0xa0, 0x26, 0xb6, 0x32, 0xeb, 0x1e, + 0xe6, 0x30, 0xfb, 0xcb, 0x65, 0x98, 0x48, 0x39, 0xe6, 0xd2, 0x8e, 0x6c, 0x05, 0xbe, 0x17, 0x07, + 0x2a, 0xcf, 0x1e, 0x7f, 0xcb, 0x8e, 0xb4, 0x37, 0xaf, 0x8b, 0x72, 0xac, 0x30, 0xd0, 0xd3, 0xf2, + 0xb5, 0xe2, 0xf4, 0x2b, 0x21, 0x8b, 0x35, 0xe3, 0xc1, 0xe2, 0xa2, 0x2f, 0xfc, 0x3c, 0x09, 0x95, + 0x76, 0xa0, 0x1e, 0x9f, 0x57, 0xf3, 0x89, 0x17, 0x6b, 0xf5, 0x20, 0x68, 0x61, 0x06, 0x44, 0x4f, + 0x89, 0xaf, 0x4f, 0xdd, 0xd0, 0x60, 0xc7, 0x0d, 0x22, 0x6d, 0x08, 0x9e, 0x81, 0xa1, 0x7b, 0x64, + 0x27, 0xf4, 0xfc, 0x8d, 0xf4, 0xfd, 0xd4, 0x55, 0x5e, 0x8c, 0x25, 0xdc, 0x4c, 0x9a, 0x3f, 0x74, + 0xc4, 0xaf, 0xf8, 0x0c, 0xe7, 0x9e, 0x83, 0xdf, 0xb4, 0x60, 0x82, 0x65, 0xc1, 0x15, 0xa9, 0x1a, + 0xbc, 0xc0, 0x3f, 0x06, 0x19, 0xe3, 0x49, 0x18, 0x08, 0x69, 0xa3, 0xe9, 0x67, 0x38, 0x58, 0x4f, + 0x30, 0x87, 0xa1, 0xc7, 0xa0, 0xc2, 0xba, 0x40, 0xa7, 0x71, 0x94, 0x27, 0xdb, 0xaf, 0x39, 0xb1, + 0x83, 0x59, 0x29, 0x8b, 0x85, 0xc3, 0xa4, 0xdd, 0xf2, 0x78, 0xa7, 0x13, 0x83, 0xee, 0x07, 0x2d, + 0x16, 0x2e, 0xb3, 0x93, 0x0f, 0x2b, 0x16, 0x2e, 0x9b, 0xf8, 0xc1, 0x72, 0xfe, 0x7f, 0x2b, 0xc1, + 0xe9, 0xcc, 0x7a, 0xc9, 0x4d, 0xf7, 0x8a, 0x71, 0xd3, 0x7d, 0x31, 0x75, 0xd3, 0x6d, 0x1f, 0x5c, + 0xfb, 0xe1, 0xdc, 0x7d, 0x67, 0x5f, 0x49, 0x97, 0x8f, 0xf1, 0x4a, 0xba, 0x52, 0x54, 0xc4, 0x19, + 0xc8, 0x11, 0x71, 0xfe, 0xd0, 0x82, 0x47, 0x33, 0x87, 0xec, 0x03, 0x17, 0x7c, 0x98, 0xd9, 0xcb, + 0x1e, 0xda, 0xc9, 0x2f, 0x97, 0x7b, 0x7c, 0x15, 0xd3, 0x53, 0xce, 0x52, 0x2e, 0xc4, 0x80, 0x91, + 0x10, 0xde, 0x46, 0x39, 0x07, 0xe2, 0x65, 0x58, 0x41, 0x51, 0xa4, 0x05, 0xef, 0xf1, 0x4e, 0x2e, + 0x1f, 0x72, 0x43, 0xcd, 0x9b, 0x96, 0x78, 0x3d, 0xff, 0x44, 0x3a, 0xa4, 0xef, 0x8e, 0xa6, 0x79, + 0x96, 0x0f, 0xa3, 0x79, 0x8e, 0x66, 0x6b, 0x9d, 0x68, 0x01, 0x26, 0xb6, 0x3c, 0x9f, 0x3d, 0xfe, + 0x6b, 0x4a, 0x4f, 0x2a, 0x82, 0xfa, 0xba, 0x09, 0xc6, 0x69, 0xfc, 0xd9, 0x57, 0x60, 0xec, 0xf0, + 0xd6, 0xb5, 0x1f, 0x94, 0xe1, 0xc3, 0x07, 0x30, 0x05, 0x7e, 0x3a, 0x18, 0xf3, 0xa2, 0x9d, 0x0e, + 0x5d, 0x73, 0x53, 0x87, 0xe9, 0xf5, 0x4e, 0xab, 0xb5, 0xc3, 0xfc, 0xc4, 0x88, 0x2b, 0x31, 0x84, + 0x50, 0xa3, 0x92, 0x62, 0xaf, 0x64, 0xe0, 0xe0, 0xcc, 0x9a, 0xe8, 0xa7, 0x01, 0x05, 0x77, 0x59, + 0x7a, 0x66, 0x37, 0xc9, 0xaf, 0xc1, 0xa6, 0xa0, 0x9c, 0x6c, 0xd5, 0x9b, 0x5d, 0x18, 0x38, 0xa3, + 0x16, 0x95, 0x53, 0xe9, 0x39, 0xb6, 0xa3, 0xba, 0x95, 0x92, 0x53, 0xb1, 0x0e, 0xc4, 0x26, 0x2e, + 0xba, 0x0c, 0x53, 0xce, 0xb6, 0xe3, 0xf1, 0x74, 0x6b, 0x92, 0x00, 0x17, 0x54, 0x95, 0xfd, 0x6a, + 0x21, 0x8d, 0x80, 0xbb, 0xeb, 0xa0, 0xb6, 0x61, 0x90, 0xe4, 0x2f, 0x44, 0x7c, 0xf2, 0x10, 0x2b, + 0xb8, 0xb0, 0x89, 0xd2, 0xfe, 0x53, 0x8b, 0x1e, 0x7d, 0x19, 0xef, 0xc4, 0xd2, 0x11, 0x51, 0x06, + 0x36, 0x2d, 0x18, 0x51, 0x8d, 0xc8, 0x92, 0x0e, 0xc4, 0x26, 0x2e, 0x5f, 0x1a, 0x51, 0xe2, 0xb6, + 0x6e, 0x48, 0x9b, 0x22, 0x8e, 0x57, 0x61, 0x50, 0x09, 0xda, 0xf5, 0xb6, 0xbd, 0x28, 0x08, 0xc5, + 0x06, 0xea, 0xf7, 0x35, 0x76, 0xc5, 0x2f, 0x6b, 0x9c, 0x0c, 0x96, 0xf4, 0xec, 0xaf, 0x94, 0x60, + 0x4c, 0xb6, 0xf8, 0x5a, 0x27, 0x88, 0x9d, 0x63, 0x38, 0xd2, 0x5f, 0x33, 0x8e, 0xf4, 0xf3, 0xc5, + 0xc2, 0x9a, 0x59, 0xe7, 0x7a, 0x1e, 0xe5, 0x9f, 0x4e, 0x1d, 0xe5, 0x17, 0xfa, 0x21, 0x7a, 0xf0, + 0x11, 0xfe, 0x6f, 0x2c, 0x98, 0x32, 0xf0, 0x8f, 0xe1, 0x24, 0xa9, 0x9b, 0x27, 0xc9, 0x73, 0x7d, + 0x7c, 0x4d, 0x8f, 0x13, 0xe4, 0xeb, 0xa5, 0xd4, 0x57, 0xb0, 0x93, 0xe3, 0x67, 0xa0, 0xb2, 0xe9, + 0x84, 0x6e, 0xb1, 0xdc, 0xa3, 0x5d, 0xd5, 0xe7, 0xaf, 0x38, 0xa1, 0xcb, 0xf9, 0xff, 0x39, 0xf5, + 0x8a, 0x9d, 0x13, 0xba, 0xb9, 0xd1, 0x1c, 0xac, 0x51, 0x74, 0x09, 0x06, 0xa3, 0x66, 0xd0, 0x56, + 0xfe, 0xae, 0x67, 0xf8, 0x0b, 0x77, 0xb4, 0x64, 0x7f, 0x77, 0x0e, 0x99, 0xcd, 0xd1, 0x62, 0x2c, + 0xf0, 0x67, 0x37, 0xa0, 0xaa, 0x9a, 0x3e, 0x52, 0x8f, 0xff, 0xff, 0x52, 0x86, 0x13, 0x19, 0x6b, + 0x05, 0xfd, 0xac, 0x31, 0x6e, 0xaf, 0xf4, 0xbd, 0xd8, 0xde, 0xe7, 0xc8, 0xfd, 0x2c, 0xd3, 0x94, + 0x5c, 0xb1, 0x3a, 0x0e, 0xd1, 0xfc, 0xad, 0x88, 0xa4, 0x9b, 0xa7, 0x45, 0xf9, 0xcd, 0xd3, 0x66, + 0x8f, 0x6d, 0xf8, 0x69, 0x43, 0xaa, 0xa7, 0x47, 0x3a, 0xcf, 0x5f, 0xa8, 0xc0, 0x74, 0x56, 0xfe, + 0x04, 0xf4, 0x0b, 0x56, 0xea, 0xa5, 0x93, 0x57, 0xfb, 0x4f, 0xc2, 0xc0, 0x9f, 0x3f, 0x11, 0xd9, + 0x8d, 0xe6, 0xcd, 0xb7, 0x4f, 0x72, 0x47, 0x5c, 0xb4, 0xce, 0xe2, 0xb0, 0x42, 0xfe, 0x6a, 0x8d, + 0xe4, 0x0a, 0x9f, 0x3a, 0x44, 0x57, 0xc4, 0xc3, 0x37, 0x51, 0x2a, 0x0e, 0x4b, 0x16, 0xe7, 0xc7, + 0x61, 0xc9, 0x3e, 0xcc, 0x7a, 0x30, 0xa2, 0x7d, 0xd7, 0x91, 0x2e, 0x83, 0x7b, 0xf4, 0x88, 0xd2, + 0xfa, 0x7d, 0xa4, 0x4b, 0xe1, 0xef, 0x58, 0x90, 0x72, 0x4e, 0x53, 0x66, 0x19, 0xab, 0xa7, 0x59, + 0xe6, 0x0c, 0x54, 0xc2, 0xa0, 0x45, 0xd2, 0x8f, 0x5f, 0xe0, 0xa0, 0x45, 0x30, 0x83, 0xa8, 0x87, + 0xad, 0xcb, 0xbd, 0x1e, 0xb6, 0xa6, 0x7a, 0x7a, 0x8b, 0x6c, 0x13, 0x69, 0x24, 0x51, 0x6c, 0xfc, + 0x1a, 0x2d, 0xc4, 0x1c, 0x66, 0xff, 0x66, 0x05, 0x4e, 0x64, 0xc4, 0x24, 0x52, 0x0d, 0x69, 0xc3, + 0x89, 0xc9, 0x7d, 0x67, 0x27, 0x9d, 0x84, 0xf7, 0x32, 0x2f, 0xc6, 0x12, 0xce, 0x9c, 0x6a, 0x79, + 0x22, 0xbf, 0x94, 0xe9, 0x4a, 0xe4, 0xef, 0x13, 0xd0, 0xa3, 0x7f, 0x02, 0xf9, 0x22, 0x40, 0x14, + 0xb5, 0x96, 0x7d, 0x2a, 0xe1, 0xb9, 0xc2, 0x79, 0x37, 0xc9, 0xff, 0xd8, 0xb8, 0x26, 0x20, 0x58, + 0xc3, 0x42, 0x35, 0x98, 0x6c, 0x87, 0x41, 0xcc, 0x0d, 0x83, 0x35, 0xee, 0x6a, 0x31, 0x60, 0x46, + 0x8d, 0xd5, 0x53, 0x70, 0xdc, 0x55, 0x03, 0xbd, 0x04, 0x23, 0x22, 0x92, 0xac, 0x1e, 0x04, 0x2d, + 0x61, 0x46, 0x52, 0xf7, 0xf1, 0x8d, 0x04, 0x84, 0x75, 0x3c, 0xad, 0x1a, 0xb3, 0x36, 0x0e, 0x65, + 0x56, 0xe3, 0x16, 0x47, 0x0d, 0x2f, 0x95, 0x65, 0x65, 0xb8, 0x50, 0x96, 0x95, 0xc4, 0xb0, 0x56, + 0x2d, 0x7c, 0x11, 0x03, 0xb9, 0x06, 0xa8, 0xdf, 0x2f, 0xc3, 0x20, 0x9f, 0x8a, 0x63, 0x90, 0xf2, + 0xea, 0xc2, 0xa4, 0x54, 0x28, 0xa3, 0x05, 0xef, 0xd5, 0x7c, 0xcd, 0x89, 0x1d, 0xce, 0x9a, 0xd4, + 0x0e, 0x49, 0xcc, 0x50, 0x68, 0xde, 0xd8, 0x43, 0xb3, 0x29, 0x4b, 0x09, 0x70, 0x1a, 0xda, 0x8e, + 0xda, 0x04, 0x88, 0xd8, 0x33, 0xbc, 0x94, 0x86, 0xc8, 0x10, 0xfc, 0x62, 0xa1, 0x7e, 0x34, 0x54, + 0x35, 0xde, 0x9b, 0x64, 0x59, 0x2a, 0x00, 0xd6, 0x68, 0xcf, 0xbe, 0x0c, 0x55, 0x85, 0x9c, 0xa7, + 0x42, 0x8e, 0xea, 0xac, 0xed, 0x27, 0x61, 0x22, 0xd5, 0x56, 0x5f, 0x1a, 0xe8, 0x6f, 0x5b, 0x30, + 0xc1, 0xbb, 0xbc, 0xec, 0x6f, 0x0b, 0x56, 0xf0, 0x79, 0x0b, 0xa6, 0x5b, 0x19, 0x3b, 0x51, 0x4c, + 0xf3, 0x61, 0xf6, 0xb0, 0x52, 0x3e, 0xb3, 0xa0, 0x38, 0xb3, 0x35, 0x74, 0x16, 0x86, 0xf9, 0xab, + 0xe2, 0x4e, 0x4b, 0x78, 0x8a, 0x8f, 0xf2, 0xdc, 0xe8, 0xbc, 0x0c, 0x2b, 0xa8, 0xfd, 0x43, 0x0b, + 0xa6, 0xf8, 0x47, 0x5c, 0x25, 0x3b, 0x4a, 0xbd, 0xfa, 0x80, 0x7c, 0x86, 0xc8, 0x02, 0x5f, 0xea, + 0x91, 0x05, 0x5e, 0xff, 0xca, 0xf2, 0x81, 0x5f, 0xf9, 0x0d, 0x0b, 0xc4, 0x0a, 0x3d, 0x06, 0xfd, + 0x61, 0xd5, 0xd4, 0x1f, 0x3e, 0x52, 0x64, 0xd1, 0xf7, 0x50, 0x1c, 0x7e, 0xa9, 0x04, 0x93, 0x1c, + 0x21, 0xb9, 0x91, 0xf9, 0xa0, 0x4c, 0x4e, 0x7f, 0xaf, 0x13, 0xa9, 0xb7, 0x69, 0xb3, 0xbf, 0xd4, + 0x98, 0xcb, 0xca, 0x81, 0x73, 0xf9, 0x3f, 0x2d, 0x40, 0x7c, 0x4c, 0xd2, 0x4f, 0xb2, 0xf3, 0xd3, + 0x4d, 0x33, 0x07, 0x24, 0x9c, 0x43, 0x41, 0xb0, 0x86, 0xf5, 0x90, 0x3f, 0x21, 0x75, 0x1f, 0x56, + 0xce, 0xbf, 0x0f, 0xeb, 0xe3, 0xab, 0xff, 0x7b, 0x19, 0xd2, 0xce, 0x9a, 0xe8, 0x6d, 0x18, 0x6d, + 0x3a, 0x6d, 0xe7, 0xae, 0xd7, 0xf2, 0x62, 0x8f, 0x44, 0xc5, 0x2e, 0xdc, 0x97, 0xb4, 0x1a, 0xe2, + 0x1a, 0x4a, 0x2b, 0xc1, 0x06, 0x45, 0x34, 0x0f, 0xd0, 0x0e, 0xbd, 0x6d, 0xaf, 0x45, 0x36, 0x98, + 0xc6, 0xc3, 0x62, 0x4e, 0xf8, 0xdd, 0xb1, 0x2c, 0xc5, 0x1a, 0x46, 0x46, 0x8c, 0x42, 0xf9, 0x38, + 0x62, 0x14, 0x2a, 0x47, 0x18, 0xa3, 0x30, 0x50, 0x28, 0x46, 0x01, 0xc3, 0x29, 0x79, 0xd0, 0xd3, + 0xff, 0x2b, 0x5e, 0x8b, 0x08, 0x39, 0x8f, 0xc7, 0xaf, 0xcc, 0xee, 0xed, 0xce, 0x9d, 0xc2, 0x99, + 0x18, 0xb8, 0x47, 0x4d, 0xbb, 0x03, 0x27, 0x1a, 0x24, 0x94, 0x4f, 0xef, 0xa9, 0x7d, 0xf7, 0x59, + 0xa8, 0x86, 0xa9, 0x2d, 0xdf, 0x67, 0x92, 0x02, 0x2d, 0x2f, 0x9d, 0xdc, 0xe2, 0x09, 0x49, 0xfb, + 0xaf, 0x97, 0x60, 0x48, 0xb8, 0x74, 0x1e, 0x83, 0xa0, 0x72, 0xd5, 0x30, 0x47, 0x3d, 0x93, 0xc7, + 0x2b, 0x59, 0xb7, 0x7a, 0x1a, 0xa2, 0x1a, 0x29, 0x43, 0xd4, 0x73, 0xc5, 0xc8, 0x1d, 0x6c, 0x82, + 0xfa, 0x27, 0x65, 0x18, 0x37, 0x5d, 0x5c, 0x8f, 0x61, 0x58, 0x5e, 0x87, 0xa1, 0x48, 0x78, 0x5b, + 0x97, 0x8a, 0xf8, 0xf7, 0xa5, 0xa7, 0x38, 0xb9, 0xb5, 0x17, 0xfe, 0xd5, 0x92, 0x5c, 0xa6, 0x43, + 0x77, 0xf9, 0x58, 0x1c, 0xba, 0xf3, 0x3c, 0x8f, 0x2b, 0x0f, 0xc3, 0xf3, 0xd8, 0xfe, 0x2e, 0x3b, + 0x1e, 0xf4, 0xf2, 0x63, 0x38, 0xf2, 0x5f, 0x33, 0x0f, 0x92, 0x73, 0x85, 0xd6, 0x9d, 0xe8, 0x5e, + 0x8f, 0xa3, 0xff, 0x5b, 0x16, 0x8c, 0x08, 0xc4, 0x63, 0xf8, 0x80, 0x9f, 0x36, 0x3f, 0xe0, 0xa9, + 0x42, 0x1f, 0xd0, 0xa3, 0xe7, 0x5f, 0x29, 0xa9, 0x9e, 0xd7, 0x83, 0x30, 0x2e, 0x94, 0xbd, 0x7d, + 0x98, 0xaa, 0x89, 0x41, 0x33, 0x68, 0x09, 0x61, 0xef, 0xb1, 0x24, 0x5c, 0x91, 0x97, 0xef, 0x6b, + 0xbf, 0xb1, 0xc2, 0x66, 0xd1, 0x74, 0x41, 0x18, 0x8b, 0xc3, 0x36, 0x89, 0xa6, 0x0b, 0xc2, 0x18, + 0x33, 0x08, 0x72, 0x01, 0x62, 0x27, 0xdc, 0x20, 0x31, 0x2d, 0x13, 0x91, 0xbe, 0xbd, 0x77, 0x6b, + 0x27, 0xf6, 0x5a, 0xf3, 0x9e, 0x1f, 0x47, 0x71, 0x38, 0xbf, 0xea, 0xc7, 0x37, 0x43, 0xae, 0x20, + 0x68, 0xf1, 0x87, 0x8a, 0x16, 0xd6, 0xe8, 0xca, 0x90, 0x12, 0xd6, 0xc6, 0x80, 0x79, 0xdb, 0x74, + 0x43, 0x94, 0x63, 0x85, 0x61, 0xbf, 0xcc, 0x38, 0x3b, 0x1b, 0xa0, 0xfe, 0x42, 0x03, 0xbf, 0x30, + 0xa4, 0x86, 0x96, 0x99, 0x90, 0x6f, 0xe8, 0x01, 0x88, 0x45, 0xd9, 0x27, 0xed, 0x82, 0xee, 0x73, + 0x9d, 0xc4, 0x2b, 0x22, 0xd2, 0x75, 0x45, 0xf9, 0x72, 0x61, 0x8e, 0xdc, 0xc7, 0xa5, 0x24, 0x4b, + 0x23, 0xc9, 0x72, 0xe7, 0xad, 0xd6, 0xd3, 0x39, 0xf7, 0x97, 0x24, 0x00, 0x27, 0x38, 0xe8, 0xbc, + 0x50, 0x3e, 0xb9, 0x75, 0xe6, 0xc3, 0x29, 0xe5, 0x53, 0x0e, 0x89, 0xa6, 0x7d, 0x5e, 0x80, 0x11, + 0xf5, 0x8c, 0x51, 0x9d, 0x3f, 0x20, 0x53, 0xe5, 0xb2, 0xd8, 0x72, 0x52, 0x8c, 0x75, 0x1c, 0xb4, + 0x06, 0x13, 0x11, 0x7f, 0x63, 0x49, 0xc6, 0x76, 0x08, 0x23, 0xc3, 0xb3, 0xf2, 0x42, 0xb3, 0x61, + 0x82, 0xf7, 0x59, 0x11, 0xdf, 0xca, 0x32, 0x1a, 0x24, 0x4d, 0x02, 0xbd, 0x0a, 0xe3, 0x2d, 0xfd, + 0xdd, 0xd9, 0xba, 0xb0, 0x41, 0x28, 0x17, 0x35, 0xe3, 0x55, 0xda, 0x3a, 0x4e, 0x61, 0xa3, 0xd7, + 0x61, 0x46, 0x2f, 0x11, 0x09, 0x91, 0x1c, 0x7f, 0x83, 0x44, 0xe2, 0x3d, 0x96, 0xc7, 0xf6, 0x76, + 0xe7, 0x66, 0xae, 0xf5, 0xc0, 0xc1, 0x3d, 0x6b, 0xa3, 0x4b, 0x30, 0x2a, 0x3f, 0x5f, 0x8b, 0x84, + 0x4a, 0x9c, 0x23, 0x35, 0x18, 0x36, 0x30, 0xd1, 0x7d, 0x38, 0x29, 0xff, 0xaf, 0x85, 0xce, 0xfa, + 0xba, 0xd7, 0x14, 0x21, 0x69, 0x23, 0x8c, 0xc4, 0x82, 0xf4, 0x2d, 0x5f, 0xce, 0x42, 0xda, 0xdf, + 0x9d, 0x3b, 0x23, 0x46, 0x2d, 0x13, 0xce, 0x26, 0x31, 0x9b, 0x3e, 0xba, 0x0e, 0x27, 0x36, 0x89, + 0xd3, 0x8a, 0x37, 0x97, 0x36, 0x49, 0xf3, 0x9e, 0xdc, 0x58, 0x2c, 0xbe, 0x4a, 0x73, 0x1f, 0xbc, + 0xd2, 0x8d, 0x82, 0xb3, 0xea, 0xbd, 0xbf, 0xfb, 0xe7, 0x9f, 0xa1, 0x95, 0x35, 0xf9, 0x01, 0xbd, + 0x03, 0xa3, 0xfa, 0x58, 0xa7, 0x05, 0x83, 0xfc, 0x37, 0x89, 0x85, 0x1c, 0xa2, 0x66, 0x40, 0x87, + 0x61, 0x83, 0xb6, 0xfd, 0xef, 0x4a, 0x30, 0x97, 0x93, 0x6f, 0x2c, 0x65, 0xf9, 0xb2, 0x0a, 0x59, + 0xbe, 0x16, 0xe4, 0x3b, 0x3d, 0x37, 0x52, 0x79, 0xde, 0x53, 0x2f, 0xef, 0x24, 0xd9, 0xde, 0xd3, + 0xf8, 0x85, 0xbd, 0xd2, 0x74, 0xe3, 0x59, 0x25, 0xd7, 0x39, 0xef, 0x0d, 0xdd, 0x1e, 0x3a, 0x70, + 0x18, 0xa1, 0xb7, 0xa7, 0x29, 0xd4, 0xfe, 0x6e, 0x09, 0x4e, 0xaa, 0xc1, 0xfc, 0xf1, 0x1d, 0xc2, + 0xb7, 0xba, 0x87, 0xf0, 0xa1, 0x9a, 0x94, 0xed, 0x9b, 0x30, 0xd8, 0xd8, 0x89, 0x9a, 0x71, 0xab, + 0xc0, 0x89, 0xff, 0xa4, 0xb1, 0xaf, 0x92, 0xd3, 0x88, 0xbd, 0xbe, 0x27, 0xb6, 0x99, 0xfd, 0x8b, + 0x16, 0x4c, 0xac, 0x2d, 0xd5, 0x1b, 0x41, 0xf3, 0x1e, 0x89, 0x17, 0xb8, 0xf1, 0x03, 0x8b, 0x03, + 0xdf, 0x3a, 0xe4, 0x41, 0x9e, 0x25, 0x22, 0x9c, 0x81, 0xca, 0x66, 0x10, 0xc5, 0xe9, 0x0b, 0x84, + 0x2b, 0x41, 0x14, 0x63, 0x06, 0xb1, 0xff, 0xcc, 0x82, 0x01, 0xf6, 0xb8, 0x5c, 0xde, 0xc3, 0x84, + 0x45, 0xbe, 0x0b, 0xbd, 0x04, 0x83, 0x64, 0x7d, 0x9d, 0x34, 0x63, 0x31, 0xbf, 0x32, 0x18, 0x67, + 0x70, 0x99, 0x95, 0xd2, 0x13, 0x8d, 0x35, 0xc6, 0xff, 0x62, 0x81, 0x8c, 0x3e, 0x03, 0xd5, 0xd8, + 0xdb, 0x22, 0x0b, 0xae, 0x2b, 0x2c, 0xf6, 0xfd, 0xf9, 0x87, 0xa9, 0x13, 0x76, 0x4d, 0x12, 0xc1, + 0x09, 0x3d, 0xfb, 0x4b, 0x25, 0x80, 0x24, 0xd8, 0x2e, 0xef, 0x33, 0x17, 0xbb, 0xde, 0x5f, 0x7c, + 0x3a, 0xe3, 0xfd, 0x45, 0x94, 0x10, 0xcc, 0x78, 0x7d, 0x51, 0x0d, 0x55, 0xb9, 0xd0, 0x50, 0x55, + 0xfa, 0x19, 0xaa, 0x25, 0x98, 0x4a, 0x82, 0x05, 0xcd, 0xa8, 0x6b, 0x96, 0x23, 0x79, 0x2d, 0x0d, + 0xc4, 0xdd, 0xf8, 0xf6, 0x97, 0x2c, 0x10, 0x1e, 0xc5, 0x05, 0x16, 0xb4, 0x2b, 0xdf, 0x4a, 0x33, + 0xd2, 0x21, 0x3e, 0x5b, 0xc4, 0xd9, 0x5a, 0x24, 0x41, 0x54, 0x7c, 0xdf, 0x48, 0x7d, 0x68, 0x50, + 0xb5, 0x7f, 0xc3, 0x82, 0x11, 0x0e, 0xbe, 0xce, 0x14, 0xd1, 0xfc, 0x7e, 0xf5, 0x95, 0x80, 0x9b, + 0x3d, 0x23, 0x46, 0x09, 0xab, 0x44, 0xcc, 0xfa, 0x33, 0x62, 0x12, 0x80, 0x13, 0x1c, 0xf4, 0x0c, + 0x0c, 0x45, 0x9d, 0xbb, 0x0c, 0x3d, 0xe5, 0x5e, 0xdc, 0xe0, 0xc5, 0x58, 0xc2, 0xed, 0x7f, 0x56, + 0x82, 0xc9, 0xb4, 0x77, 0x39, 0xc2, 0x30, 0xc8, 0x19, 0x48, 0x5a, 0xa7, 0x39, 0xc8, 0x58, 0xaa, + 0x79, 0xa7, 0x03, 0x7f, 0x0c, 0x9f, 0xb1, 0x20, 0x41, 0x09, 0xad, 0xc3, 0x88, 0x1b, 0xdc, 0xf7, + 0xef, 0x3b, 0xa1, 0xbb, 0x50, 0x5f, 0x15, 0x33, 0x91, 0xe3, 0x0f, 0x58, 0x4b, 0x2a, 0xe8, 0xbe, + 0xef, 0xcc, 0x78, 0x97, 0x80, 0xb0, 0x4e, 0x18, 0x7d, 0x96, 0x65, 0x6f, 0x59, 0xf7, 0x36, 0xae, + 0x3b, 0xed, 0x62, 0x9e, 0x2f, 0x4b, 0x12, 0x5d, 0x6b, 0x63, 0x4c, 0x24, 0x7b, 0xe1, 0x00, 0x9c, + 0x90, 0xb4, 0x7f, 0xe9, 0x24, 0x18, 0x6b, 0xc1, 0xc8, 0x92, 0x6d, 0x3d, 0xf4, 0x2c, 0xd9, 0x6f, + 0xc2, 0x30, 0xd9, 0x6a, 0xc7, 0x3b, 0x35, 0x2f, 0x2c, 0xf6, 0xe6, 0xc1, 0xb2, 0xc0, 0xee, 0xa6, + 0x2e, 0x21, 0x58, 0x51, 0xec, 0x91, 0xf3, 0xbc, 0xfc, 0x81, 0xc8, 0x79, 0x5e, 0xf9, 0x4b, 0xc9, + 0x79, 0xfe, 0x3a, 0x0c, 0x6d, 0x78, 0x31, 0x26, 0xed, 0x40, 0x9c, 0xc6, 0x39, 0x8b, 0xe7, 0x32, + 0x47, 0xee, 0xce, 0x86, 0x2b, 0x00, 0x58, 0x92, 0x43, 0x6b, 0x6a, 0x53, 0x0d, 0x16, 0x91, 0x41, + 0xbb, 0x8d, 0xe9, 0x99, 0xdb, 0x4a, 0xe4, 0x38, 0x1f, 0x7a, 0xff, 0x39, 0xce, 0x55, 0x66, 0xf2, + 0xe1, 0x87, 0x95, 0x99, 0xdc, 0xc8, 0xf0, 0x5e, 0x3d, 0x8a, 0x0c, 0xef, 0x5f, 0xb2, 0xe0, 0x64, + 0x3b, 0xeb, 0x7d, 0x04, 0x91, 0x63, 0xfc, 0xa7, 0x0e, 0xf1, 0x62, 0x84, 0xd1, 0x34, 0xcb, 0x06, + 0x92, 0x89, 0x86, 0xb3, 0x1b, 0x96, 0xa9, 0xe2, 0x47, 0xde, 0x7f, 0xaa, 0xf8, 0xa3, 0x4e, 0x46, + 0x9e, 0x24, 0x8e, 0x1f, 0x3b, 0x92, 0xc4, 0xf1, 0xe3, 0x0f, 0x31, 0x71, 0xbc, 0x96, 0xf2, 0x7d, + 0xe2, 0xe1, 0xa6, 0x7c, 0xdf, 0x34, 0xcf, 0x25, 0x9e, 0x61, 0xfc, 0xa5, 0xc2, 0xe7, 0x92, 0xd1, + 0xc2, 0xc1, 0x27, 0x13, 0x4f, 0x7e, 0x3f, 0xf5, 0x3e, 0x93, 0xdf, 0x1b, 0x29, 0xe4, 0xd1, 0x51, + 0xa4, 0x90, 0x7f, 0x5b, 0x3f, 0x41, 0x4f, 0x14, 0x69, 0x41, 0x1d, 0x94, 0xdd, 0x2d, 0x64, 0x9d, + 0xa1, 0xdd, 0x49, 0xea, 0xa7, 0x8f, 0x3b, 0x49, 0xfd, 0xc9, 0x23, 0x4c, 0x52, 0x7f, 0xea, 0x58, + 0x93, 0xd4, 0x3f, 0xf2, 0x01, 0x49, 0x52, 0x3f, 0x73, 0x5c, 0x49, 0xea, 0x1f, 0x7d, 0xb8, 0x49, + 0xea, 0xdf, 0x86, 0x6a, 0x5b, 0xc6, 0x68, 0xce, 0xcc, 0x16, 0x99, 0xba, 0xcc, 0x90, 0x4e, 0x3e, + 0x75, 0x0a, 0x84, 0x13, 0xa2, 0xb4, 0x85, 0x24, 0x69, 0xfd, 0x87, 0x8b, 0xb4, 0x90, 0x69, 0xf7, + 0x38, 0x20, 0x55, 0xfd, 0x17, 0x4a, 0x70, 0xfa, 0xe0, 0xdd, 0x91, 0x18, 0x4d, 0xea, 0x89, 0x2d, + 0x3b, 0x65, 0x34, 0x61, 0x92, 0xa7, 0x86, 0x55, 0x38, 0xf4, 0xfd, 0x32, 0x4c, 0x29, 0x9f, 0xb0, + 0x96, 0xd7, 0xdc, 0xd1, 0x9e, 0xce, 0x52, 0xb1, 0x0c, 0x8d, 0x34, 0x02, 0xee, 0xae, 0x83, 0x16, + 0x60, 0xc2, 0x28, 0x5c, 0xad, 0x09, 0xfd, 0x45, 0x59, 0x69, 0x1a, 0x26, 0x18, 0xa7, 0xf1, 0xed, + 0xaf, 0x5b, 0xf0, 0x48, 0x8f, 0xac, 0xb4, 0x85, 0xe3, 0xb9, 0xdb, 0x30, 0xd1, 0x36, 0xab, 0x16, + 0x4e, 0x0f, 0x61, 0x64, 0xc1, 0x55, 0xbd, 0x4e, 0x01, 0x70, 0x9a, 0xfc, 0xe2, 0xd9, 0xef, 0xfd, + 0xe0, 0xf4, 0x87, 0xfe, 0xe0, 0x07, 0xa7, 0x3f, 0xf4, 0xfd, 0x1f, 0x9c, 0xfe, 0xd0, 0xcf, 0xed, + 0x9d, 0xb6, 0xbe, 0xb7, 0x77, 0xda, 0xfa, 0x83, 0xbd, 0xd3, 0xd6, 0xf7, 0xf7, 0x4e, 0x5b, 0x7f, + 0xbe, 0x77, 0xda, 0xfa, 0xd2, 0x0f, 0x4f, 0x7f, 0xe8, 0x8d, 0xd2, 0xf6, 0x85, 0xff, 0x17, 0x00, + 0x00, 0xff, 0xff, 0x06, 0x5b, 0x53, 0xd1, 0x4d, 0xd1, 0x00, 0x00, } diff --git a/vendor/k8s.io/kubernetes/pkg/api/v1/generated.proto b/vendor/k8s.io/kubernetes/pkg/api/v1/generated.proto index 5a6940bb..fa1996e0 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/v1/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/api/v1/generated.proto @@ -26,7 +26,6 @@ import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; // Package-wide variables from generator "generated". option go_package = "v1"; @@ -139,11 +138,11 @@ message AzureFileVolumeSource { optional bool readOnly = 3; } -// Binding ties one object to another. -// For example, a pod is bound to a node by a scheduler. +// Binding ties one object to another; for example, a pod is bound to a node by a scheduler. +// Deprecated in 1.7, please use the bindings subresource of pods instead. message Binding { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; @@ -242,7 +241,7 @@ message ComponentCondition { // ComponentStatus (and ComponentStatusList) holds the cluster validation info. message ComponentStatus { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; @@ -256,7 +255,7 @@ message ComponentStatus { // Status of all the conditions for the component as a list of ComponentStatus objects. message ComponentStatusList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -267,7 +266,7 @@ message ComponentStatusList { // ConfigMap holds configuration data for pods to consume. message ConfigMap { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; @@ -306,7 +305,7 @@ message ConfigMapKeySelector { // ConfigMapList is a resource containing a list of ConfigMap objects. message ConfigMapList { - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -380,7 +379,6 @@ message Container { // Docker image name. // More info: https://kubernetes.io/docs/concepts/containers/images - // +optional optional string image = 2; // Entrypoint array. Not executed within a shell. @@ -502,7 +500,7 @@ message Container { // Security options the pod should run with. // More info: https://kubernetes.io/docs/concepts/policy/security-context/ - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/security_context.md + // More info: https://git.k8s.io/community/contributors/design-proposals/security_context.md // +optional optional SecurityContext securityContext = 15; @@ -762,6 +760,15 @@ message EmptyDirVolumeSource { // More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir // +optional optional string medium = 1; + + // Total amount of local storage required for this EmptyDir volume. + // The size limit is also applicable for memory medium. + // The maximum usage on memory medium EmptyDir would be the minimum value between + // the SizeLimit specified here and the sum of memory limits of all containers in a pod. + // The default is nil which means that the limit is undefined. + // More info: http://kubernetes.io/docs/user-guide/volumes#emptydir + // +optional + optional k8s.io.apimachinery.pkg.api.resource.Quantity sizeLimit = 2; } // EndpointAddress is a tuple that describes single IP address. @@ -846,7 +853,7 @@ message EndpointSubset { // ] message Endpoints { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; @@ -863,7 +870,7 @@ message Endpoints { // EndpointsList is a list of endpoints. message EndpointsList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -932,7 +939,7 @@ message EnvVarSource { // TODO: Decide whether to store these separately or with the object they apply to. message Event { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // The object that this event is about. @@ -973,7 +980,7 @@ message Event { // EventList is a list of events. message EventList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -1201,7 +1208,7 @@ message HostAlias { // IP address of the host file entry. optional string ip = 1; - // Hostnames for the the above IP address. + // Hostnames for the above IP address. repeated string hostnames = 2; } @@ -1305,12 +1312,12 @@ message Lifecycle { // LimitRange sets resource usage limits for each kind of resource in a Namespace. message LimitRange { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // Spec defines the limits enforced. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional LimitRangeSpec spec = 2; } @@ -1345,12 +1352,12 @@ message LimitRangeItem { // LimitRangeList is a list of LimitRange items. message LimitRangeList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; // Items is a list of LimitRange objects. - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/admission_control_limit_range.md + // More info: https://git.k8s.io/community/contributors/design-proposals/admission_control_limit_range.md repeated LimitRange items = 2; } @@ -1363,7 +1370,7 @@ message LimitRangeSpec { // List holds a list of objects, which may not be known by the server. message List { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -1440,6 +1447,14 @@ message LocalObjectReference { optional string name = 1; } +// Local represents directly-attached storage with node affinity +message LocalVolumeSource { + // The full path to the volume on the node + // For alpha, this path must be a directory + // Once block as a source is supported, then this path can point to a block device + optional string path = 1; +} + // Represents an NFS mount that lasts the lifetime of a pod. // NFS volumes do not support ownership management or SELinux relabeling. message NFSVolumeSource { @@ -1463,17 +1478,17 @@ message NFSVolumeSource { // Use of multiple namespaces is optional. message Namespace { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // Spec defines the behavior of the Namespace. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional NamespaceSpec spec = 2; // Status describes the current status of a Namespace. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional NamespaceStatus status = 3; } @@ -1481,7 +1496,7 @@ message Namespace { // NamespaceList is a list of Namespaces. message NamespaceList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -1493,7 +1508,7 @@ message NamespaceList { // NamespaceSpec describes the attributes on a Namespace. message NamespaceSpec { // Finalizers is an opaque list of values that must be empty to permanently remove object from storage. - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/namespaces.md#finalizers + // More info: https://git.k8s.io/community/contributors/design-proposals/namespaces.md#finalizers // +optional repeated string finalizers = 1; } @@ -1501,7 +1516,7 @@ message NamespaceSpec { // NamespaceStatus is information about the current status of a Namespace. message NamespaceStatus { // Phase is the current lifecycle phase of the namespace. - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/namespaces.md#phases + // More info: https://git.k8s.io/community/contributors/design-proposals/namespaces.md#phases // +optional optional string phase = 1; } @@ -1510,19 +1525,19 @@ message NamespaceStatus { // Each node will have a unique identifier in the cache (i.e. in etcd). message Node { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // Spec defines the behavior of a node. - // https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional NodeSpec spec = 2; // Most recently observed status of the node. // Populated by the system. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional NodeStatus status = 3; } @@ -1594,7 +1609,7 @@ message NodeDaemonEndpoints { // NodeList is the whole list of all Nodes which have been registered with master. message NodeList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -1734,12 +1749,12 @@ message NodeStatus { // NodeSystemInfo is a set of ids/uuids to uniquely identify the node. message NodeSystemInfo { // MachineID reported by the node. For unique machine identification - // in the cluster this field is prefered. Learn more from man(5) + // in the cluster this field is preferred. Learn more from man(5) // machine-id: http://man7.org/linux/man-pages/man5/machine-id.5.html optional string machineID = 1; // SystemUUID reported by the node. For unique machine identification - // MachineID is prefered. This field is specific to Red Hat hosts + // MachineID is preferred. This field is specific to Red Hat hosts // https://access.redhat.com/documentation/en-US/Red_Hat_Subscription_Management/1/html/RHSM/getting-system-uuid.html optional string systemUUID = 2; @@ -1806,7 +1821,7 @@ message ObjectMeta { // should retry (optionally after the time indicated in the Retry-After header). // // Applied only if Name is not specified. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#idempotency + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency // +optional optional string generateName = 2; @@ -1846,7 +1861,7 @@ message ObjectMeta { // Populated by the system. // Read-only. // Value must be treated as opaque by clients and . - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#concurrency-control-and-consistency + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency // +optional optional string resourceVersion = 6; @@ -1862,7 +1877,7 @@ message ObjectMeta { // Populated by the system. // Read-only. // Null for lists. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.Time creationTimestamp = 8; @@ -1882,7 +1897,7 @@ message ObjectMeta { // // Populated by the system when a graceful deletion is requested. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.Time deletionTimestamp = 9; @@ -1945,7 +1960,7 @@ message ObjectMeta { // ObjectReference contains enough information to let you inspect or modify the referred object. message ObjectReference { // Kind of the referent. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional string kind = 1; @@ -1969,7 +1984,7 @@ message ObjectReference { optional string apiVersion = 5; // Specific resourceVersion to which this reference is made, if any. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#concurrency-control-and-consistency + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency // +optional optional string resourceVersion = 6; @@ -1990,7 +2005,7 @@ message ObjectReference { // More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes message PersistentVolume { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; @@ -2011,7 +2026,7 @@ message PersistentVolume { // PersistentVolumeClaim is a user's request for and claim to a persistent volume message PersistentVolumeClaim { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; @@ -2030,7 +2045,7 @@ message PersistentVolumeClaim { // PersistentVolumeClaimList is a list of PersistentVolumeClaim items. message PersistentVolumeClaimList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -2100,7 +2115,7 @@ message PersistentVolumeClaimVolumeSource { // PersistentVolumeList is a list of PersistentVolume items. message PersistentVolumeList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -2202,6 +2217,15 @@ message PersistentVolumeSource { // ScaleIO represents a ScaleIO persistent volume attached and mounted on Kubernetes nodes. // +optional optional ScaleIOVolumeSource scaleIO = 19; + + // Local represents directly-attached storage with node affinity + // +optional + optional LocalVolumeSource local = 20; + + // StorageOS represents a StorageOS volume that is attached to the kubelet's host machine and mounted into the pod + // More info: https://releases.k8s.io/HEAD/examples/volumes/storageos/README.md + // +optional + optional StorageOSPersistentVolumeSource storageos = 21; } // PersistentVolumeSpec is the specification of a persistent volume. @@ -2271,12 +2295,12 @@ message PhotonPersistentDiskVolumeSource { // by clients and scheduled onto hosts. message Pod { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // Specification of the desired behavior of the pod. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional PodSpec spec = 2; @@ -2284,7 +2308,7 @@ message Pod { // This data may not be up to date. // Populated by the system. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional PodStatus status = 3; } @@ -2484,12 +2508,12 @@ message PodExecOptions { // PodList is a list of Pods. message PodList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; // List of pods. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md repeated Pod items = 2; } @@ -2829,7 +2853,7 @@ message PodStatus { // PodStatusResult is a wrapper for PodStatus returned by kubelet that can be encode/decoded message PodStatusResult { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; @@ -2837,7 +2861,7 @@ message PodStatusResult { // This data may not be up to date. // Populated by the system. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional PodStatus status = 2; } @@ -2845,12 +2869,12 @@ message PodStatusResult { // PodTemplate describes a template for creating copies of a predefined pod. message PodTemplate { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // Template defines the pods that will be created from this pod template. - // https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional PodTemplateSpec template = 2; } @@ -2858,7 +2882,7 @@ message PodTemplate { // PodTemplateList is a list of PodTemplates. message PodTemplateList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -2869,12 +2893,12 @@ message PodTemplateList { // PodTemplateSpec describes the data a pod should have when created from a template message PodTemplateSpec { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // Specification of the desired behavior of the pod. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional PodSpec spec = 2; } @@ -3059,7 +3083,7 @@ message RBDVolumeSource { // RangeAllocation is not a public type. message RangeAllocation { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; @@ -3074,12 +3098,12 @@ message RangeAllocation { message ReplicationController { // If the Labels of a ReplicationController are empty, they are defaulted to // be the same as the Pod(s) that the replication controller manages. - // Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // Spec defines the specification of the desired behavior of the replication controller. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional ReplicationControllerSpec spec = 2; @@ -3087,7 +3111,7 @@ message ReplicationController { // This data may be out of date by some window of time. // Populated by the system. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional ReplicationControllerStatus status = 3; } @@ -3116,7 +3140,7 @@ message ReplicationControllerCondition { // ReplicationControllerList is a collection of replication controllers. message ReplicationControllerList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -3202,17 +3226,17 @@ message ResourceFieldSelector { // ResourceQuota sets aggregate quota restrictions enforced per namespace message ResourceQuota { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // Spec defines the desired quota. - // https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional ResourceQuotaSpec spec = 2; // Status defines the actual enforced quota and its current usage. - // https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional ResourceQuotaStatus status = 3; } @@ -3220,19 +3244,19 @@ message ResourceQuota { // ResourceQuotaList is a list of ResourceQuota items. message ResourceQuotaList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; // Items is a list of ResourceQuota objects. - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/admission_control_resource_quota.md + // More info: https://git.k8s.io/community/contributors/design-proposals/admission_control_resource_quota.md repeated ResourceQuota items = 2; } // ResourceQuotaSpec defines the desired hard limits to enforce for Quota. message ResourceQuotaSpec { // Hard is the set of desired hard limits for each named resource. - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/admission_control_resource_quota.md + // More info: https://git.k8s.io/community/contributors/design-proposals/admission_control_resource_quota.md // +optional map hard = 1; @@ -3245,7 +3269,7 @@ message ResourceQuotaSpec { // ResourceQuotaStatus defines the enforced hard limits and observed use. message ResourceQuotaStatus { // Hard is the set of enforced hard limits for each named resource. - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/admission_control_resource_quota.md + // More info: https://git.k8s.io/community/contributors/design-proposals/admission_control_resource_quota.md // +optional map hard = 1; @@ -3336,7 +3360,7 @@ message ScaleIOVolumeSource { // the Data field must be less than MaxSecretSize bytes. message Secret { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; @@ -3390,7 +3414,7 @@ message SecretKeySelector { // SecretList is a list of Secret. message SecretList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -3513,19 +3537,19 @@ message SerializedReference { // will answer requests sent through the proxy. message Service { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // Spec defines the behavior of a service. - // https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional ServiceSpec spec = 2; // Most recently observed status of the service. // Populated by the system. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional ServiceStatus status = 3; } @@ -3536,7 +3560,7 @@ message Service { // * a set of secrets message ServiceAccount { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; @@ -3563,7 +3587,7 @@ message ServiceAccount { // ServiceAccountList is a list of ServiceAccount objects message ServiceAccountList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -3575,7 +3599,7 @@ message ServiceAccountList { // ServiceList holds a list of services. message ServiceList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -3714,9 +3738,12 @@ message ServiceSpec { // +optional optional string externalName = 10; - // externalTrafficPolicy denotes if this Service desires to route external traffic to - // local endpoints only. This preserves Source IP and avoids a second hop for - // LoadBalancer and Nodeport type services. + // externalTrafficPolicy denotes if this Service desires to route external + // traffic to node-local or cluster-wide endpoints. "Local" preserves the + // client source IP and avoids a second hop for LoadBalancer and Nodeport + // type services, but risks potentially imbalanced traffic spreading. + // "Cluster" obscures the client source IP and may cause a second hop to + // another node, but should have good overall load-spreading. // +optional optional string externalTrafficPolicy = 11; @@ -3737,6 +3764,70 @@ message ServiceStatus { optional LoadBalancerStatus loadBalancer = 1; } +// Represents a StorageOS persistent volume resource. +message StorageOSPersistentVolumeSource { + // VolumeName is the human-readable name of the StorageOS volume. Volume + // names are only unique within a namespace. + optional string volumeName = 1; + + // VolumeNamespace specifies the scope of the volume within StorageOS. If no + // namespace is specified then the Pod's namespace will be used. This allows the + // Kubernetes name scoping to be mirrored within StorageOS for tighter integration. + // Set VolumeName to any name to override the default behaviour. + // Set to "default" if you are not using namespaces within StorageOS. + // Namespaces that do not pre-exist within StorageOS will be created. + // +optional + optional string volumeNamespace = 2; + + // Filesystem type to mount. + // Must be a filesystem type supported by the host operating system. + // Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. + // +optional + optional string fsType = 3; + + // Defaults to false (read/write). ReadOnly here will force + // the ReadOnly setting in VolumeMounts. + // +optional + optional bool readOnly = 4; + + // SecretRef specifies the secret to use for obtaining the StorageOS API + // credentials. If not specified, default values will be attempted. + // +optional + optional ObjectReference secretRef = 5; +} + +// Represents a StorageOS persistent volume resource. +message StorageOSVolumeSource { + // VolumeName is the human-readable name of the StorageOS volume. Volume + // names are only unique within a namespace. + optional string volumeName = 1; + + // VolumeNamespace specifies the scope of the volume within StorageOS. If no + // namespace is specified then the Pod's namespace will be used. This allows the + // Kubernetes name scoping to be mirrored within StorageOS for tighter integration. + // Set VolumeName to any name to override the default behaviour. + // Set to "default" if you are not using namespaces within StorageOS. + // Namespaces that do not pre-exist within StorageOS will be created. + // +optional + optional string volumeNamespace = 2; + + // Filesystem type to mount. + // Must be a filesystem type supported by the host operating system. + // Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. + // +optional + optional string fsType = 3; + + // Defaults to false (read/write). ReadOnly here will force + // the ReadOnly setting in VolumeMounts. + // +optional + optional bool readOnly = 4; + + // SecretRef specifies the secret to use for obtaining the StorageOS API + // credentials. If not specified, default values will be attempted. + // +optional + optional LocalObjectReference secretRef = 5; +} + // Sysctl defines a kernel parameter to be set message Sysctl { // Name of a property to set @@ -3988,6 +4079,10 @@ message VolumeSource { // ScaleIO represents a ScaleIO persistent volume attached and mounted on Kubernetes nodes. // +optional optional ScaleIOVolumeSource scaleIO = 25; + + // StorageOS represents a StorageOS volume attached and mounted on Kubernetes nodes. + // +optional + optional StorageOSVolumeSource storageos = 27; } // Represents a vSphere volume resource. @@ -4000,6 +4095,14 @@ message VsphereVirtualDiskVolumeSource { // Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. // +optional optional string fsType = 2; + + // Storage Policy Based Management (SPBM) profile name. + // +optional + optional string storagePolicyName = 3; + + // Storage Policy Based Management (SPBM) profile ID associated with the StoragePolicyName. + // +optional + optional string storagePolicyID = 4; } // The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s) diff --git a/vendor/k8s.io/kubernetes/pkg/api/v1/helper/helpers.go b/vendor/k8s.io/kubernetes/pkg/api/v1/helper/helpers.go index 5d2b2f26..6b51c5c8 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/v1/helper/helpers.go +++ b/vendor/k8s.io/kubernetes/pkg/api/v1/helper/helpers.go @@ -498,3 +498,33 @@ func PersistentVolumeClaimHasClass(claim *v1.PersistentVolumeClaim) bool { return false } + +// GetStorageNodeAffinityFromAnnotation gets the json serialized data from PersistentVolume.Annotations +// and converts it to the NodeAffinity type in api. +// TODO: update when storage node affinity graduates to beta +func GetStorageNodeAffinityFromAnnotation(annotations map[string]string) (*v1.NodeAffinity, error) { + if len(annotations) > 0 && annotations[v1.AlphaStorageNodeAffinityAnnotation] != "" { + var affinity v1.NodeAffinity + err := json.Unmarshal([]byte(annotations[v1.AlphaStorageNodeAffinityAnnotation]), &affinity) + if err != nil { + return nil, err + } + return &affinity, nil + } + return nil, nil +} + +// Converts NodeAffinity type to Alpha annotation for use in PersistentVolumes +// TODO: update when storage node affinity graduates to beta +func StorageNodeAffinityToAlphaAnnotation(annotations map[string]string, affinity *v1.NodeAffinity) error { + if affinity == nil { + return nil + } + + json, err := json.Marshal(*affinity) + if err != nil { + return err + } + annotations[v1.AlphaStorageNodeAffinityAnnotation] = string(json) + return nil +} diff --git a/vendor/k8s.io/kubernetes/pkg/api/v1/pod/util.go b/vendor/k8s.io/kubernetes/pkg/api/v1/pod/util.go index 85eb5338..aa7b0a4a 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/v1/pod/util.go +++ b/vendor/k8s.io/kubernetes/pkg/api/v1/pod/util.go @@ -103,6 +103,9 @@ func SetInitContainersStatusesAnnotations(pod *v1.Pod) error { } pod.Annotations[v1.PodInitContainerStatusesAnnotationKey] = string(value) pod.Annotations[v1.PodInitContainerStatusesBetaAnnotationKey] = string(value) + } else { + delete(pod.Annotations, v1.PodInitContainerStatusesAnnotationKey) + delete(pod.Annotations, v1.PodInitContainerStatusesBetaAnnotationKey) } return nil } @@ -171,6 +174,10 @@ func VisitPodSecretNames(pod *v1.Pod, visitor Visitor) bool { if source.ISCSI.SecretRef != nil && !visitor(source.ISCSI.SecretRef.Name) { return false } + case source.StorageOS != nil: + if source.StorageOS.SecretRef != nil && !visitor(source.StorageOS.SecretRef.Name) { + return false + } } } return true @@ -194,6 +201,60 @@ func visitContainerSecretNames(container *v1.Container, visitor Visitor) bool { return true } +// VisitPodConfigmapNames invokes the visitor function with the name of every configmap +// referenced by the pod spec. If visitor returns false, visiting is short-circuited. +// Transitive references (e.g. pod -> pvc -> pv -> secret) are not visited. +// Returns true if visiting completed, false if visiting was short-circuited. +func VisitPodConfigmapNames(pod *v1.Pod, visitor Visitor) bool { + for i := range pod.Spec.InitContainers { + if !visitContainerConfigmapNames(&pod.Spec.InitContainers[i], visitor) { + return false + } + } + for i := range pod.Spec.Containers { + if !visitContainerConfigmapNames(&pod.Spec.Containers[i], visitor) { + return false + } + } + var source *v1.VolumeSource + for i := range pod.Spec.Volumes { + source = &pod.Spec.Volumes[i].VolumeSource + switch { + case source.Projected != nil: + for j := range source.Projected.Sources { + if source.Projected.Sources[j].ConfigMap != nil { + if !visitor(source.Projected.Sources[j].ConfigMap.Name) { + return false + } + } + } + case source.ConfigMap != nil: + if !visitor(source.ConfigMap.Name) { + return false + } + } + } + return true +} + +func visitContainerConfigmapNames(container *v1.Container, visitor Visitor) bool { + for _, env := range container.EnvFrom { + if env.ConfigMapRef != nil { + if !visitor(env.ConfigMapRef.Name) { + return false + } + } + } + for _, envVar := range container.Env { + if envVar.ValueFrom != nil && envVar.ValueFrom.ConfigMapKeyRef != nil { + if !visitor(envVar.ValueFrom.ConfigMapKeyRef.Name) { + return false + } + } + } + return true +} + // GetContainerStatus extracts the status of container "name" from "statuses". // It also returns if "name" exists. func GetContainerStatus(statuses []v1.ContainerStatus, name string) (v1.ContainerStatus, bool) { diff --git a/vendor/k8s.io/kubernetes/pkg/api/v1/resource.go b/vendor/k8s.io/kubernetes/pkg/api/v1/resource.go index 2dca9866..0d1c1dcc 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/v1/resource.go +++ b/vendor/k8s.io/kubernetes/pkg/api/v1/resource.go @@ -54,3 +54,10 @@ func (self *ResourceList) NvidiaGPU() *resource.Quantity { } return &resource.Quantity{} } + +func (self *ResourceList) StorageOverlay() *resource.Quantity { + if val, ok := (*self)[ResourceStorageOverlay]; ok { + return &val + } + return &resource.Quantity{} +} diff --git a/vendor/k8s.io/kubernetes/pkg/api/v1/types.generated.go b/vendor/k8s.io/kubernetes/pkg/api/v1/types.generated.go index 123c69ac..dc5ef1f5 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/v1/types.generated.go +++ b/vendor/k8s.io/kubernetes/pkg/api/v1/types.generated.go @@ -1302,7 +1302,7 @@ func (x *Volume) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [27]bool + var yyq2 [28]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[1] = x.VolumeSource.HostPath != nil && x.HostPath != nil @@ -1331,9 +1331,10 @@ func (x *Volume) CodecEncodeSelf(e *codec1978.Encoder) { yyq2[24] = x.VolumeSource.Projected != nil && x.Projected != nil yyq2[25] = x.VolumeSource.PortworxVolume != nil && x.PortworxVolume != nil yyq2[26] = x.VolumeSource.ScaleIO != nil && x.ScaleIO != nil + yyq2[27] = x.VolumeSource.StorageOS != nil && x.StorageOS != nil var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(27) + r.EncodeArrayStart(28) } else { yynn2 = 1 for _, b := range yyq2 { @@ -2325,6 +2326,43 @@ func (x *Volume) CodecEncodeSelf(e *codec1978.Encoder) { } } } + var yyn84 bool + if x.VolumeSource.StorageOS == nil { + yyn84 = true + goto LABEL84 + } + LABEL84: + if yyr2 || yy2arr2 { + if yyn84 { + r.EncodeNil() + } else { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[27] { + if x.StorageOS == nil { + r.EncodeNil() + } else { + x.StorageOS.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } + } else { + if yyq2[27] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("storageos")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if yyn84 { + r.EncodeNil() + } else { + if x.StorageOS == nil { + r.EncodeNil() + } else { + x.StorageOS.CodecEncodeSelf(e) + } + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -2762,6 +2800,20 @@ func (x *Volume) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { } x.ScaleIO.CodecDecodeSelf(d) } + case "storageos": + if x.VolumeSource.StorageOS == nil { + x.VolumeSource.StorageOS = new(StorageOSVolumeSource) + } + if r.TryDecodeAsNil() { + if x.StorageOS != nil { + x.StorageOS = nil + } + } else { + if x.StorageOS == nil { + x.StorageOS = new(StorageOSVolumeSource) + } + x.StorageOS.CodecDecodeSelf(d) + } default: z.DecStructFieldNotFound(-1, yys3) } // end switch yys3 @@ -2773,16 +2825,16 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj32 int - var yyb32 bool - var yyhl32 bool = l >= 0 - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + var yyj33 int + var yyb33 bool + var yyhl33 bool = l >= 0 + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2790,24 +2842,24 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.Name = "" } else { - yyv33 := &x.Name - yym34 := z.DecBinary() - _ = yym34 + yyv34 := &x.Name + yym35 := z.DecBinary() + _ = yym35 if false { } else { - *((*string)(yyv33)) = r.DecodeString() + *((*string)(yyv34)) = r.DecodeString() } } if x.VolumeSource.HostPath == nil { x.VolumeSource.HostPath = new(HostPathVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2825,13 +2877,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.EmptyDir == nil { x.VolumeSource.EmptyDir = new(EmptyDirVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2849,13 +2901,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.GCEPersistentDisk == nil { x.VolumeSource.GCEPersistentDisk = new(GCEPersistentDiskVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2873,13 +2925,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.AWSElasticBlockStore == nil { x.VolumeSource.AWSElasticBlockStore = new(AWSElasticBlockStoreVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2897,13 +2949,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.GitRepo == nil { x.VolumeSource.GitRepo = new(GitRepoVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2921,13 +2973,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.Secret == nil { x.VolumeSource.Secret = new(SecretVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2945,13 +2997,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.NFS == nil { x.VolumeSource.NFS = new(NFSVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2969,13 +3021,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.ISCSI == nil { x.VolumeSource.ISCSI = new(ISCSIVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2993,13 +3045,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.Glusterfs == nil { x.VolumeSource.Glusterfs = new(GlusterfsVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3017,13 +3069,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.PersistentVolumeClaim == nil { x.VolumeSource.PersistentVolumeClaim = new(PersistentVolumeClaimVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3041,13 +3093,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.RBD == nil { x.VolumeSource.RBD = new(RBDVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3065,13 +3117,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.FlexVolume == nil { x.VolumeSource.FlexVolume = new(FlexVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3089,13 +3141,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.Cinder == nil { x.VolumeSource.Cinder = new(CinderVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3113,13 +3165,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.CephFS == nil { x.VolumeSource.CephFS = new(CephFSVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3137,13 +3189,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.Flocker == nil { x.VolumeSource.Flocker = new(FlockerVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3161,13 +3213,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.DownwardAPI == nil { x.VolumeSource.DownwardAPI = new(DownwardAPIVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3185,13 +3237,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.FC == nil { x.VolumeSource.FC = new(FCVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3209,13 +3261,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.AzureFile == nil { x.VolumeSource.AzureFile = new(AzureFileVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3233,13 +3285,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.ConfigMap == nil { x.VolumeSource.ConfigMap = new(ConfigMapVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3257,13 +3309,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.VsphereVolume == nil { x.VolumeSource.VsphereVolume = new(VsphereVirtualDiskVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3281,13 +3333,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.Quobyte == nil { x.VolumeSource.Quobyte = new(QuobyteVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3305,13 +3357,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.AzureDisk == nil { x.VolumeSource.AzureDisk = new(AzureDiskVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3329,13 +3381,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.PhotonPersistentDisk == nil { x.VolumeSource.PhotonPersistentDisk = new(PhotonPersistentDiskVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3353,13 +3405,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.Projected == nil { x.VolumeSource.Projected = new(ProjectedVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3377,13 +3429,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.PortworxVolume == nil { x.VolumeSource.PortworxVolume = new(PortworxVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3401,13 +3453,13 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.VolumeSource.ScaleIO == nil { x.VolumeSource.ScaleIO = new(ScaleIOVolumeSource) } - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l } else { - yyb32 = r.CheckBreak() + yyb33 = r.CheckBreak() } - if yyb32 { + if yyb33 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -3422,18 +3474,42 @@ func (x *Volume) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.ScaleIO.CodecDecodeSelf(d) } - for { - yyj32++ - if yyhl32 { - yyb32 = yyj32 > l - } else { - yyb32 = r.CheckBreak() + if x.VolumeSource.StorageOS == nil { + x.VolumeSource.StorageOS = new(StorageOSVolumeSource) + } + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l + } else { + yyb33 = r.CheckBreak() + } + if yyb33 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.StorageOS != nil { + x.StorageOS = nil } - if yyb32 { + } else { + if x.StorageOS == nil { + x.StorageOS = new(StorageOSVolumeSource) + } + x.StorageOS.CodecDecodeSelf(d) + } + for { + yyj33++ + if yyhl33 { + yyb33 = yyj33 > l + } else { + yyb33 = r.CheckBreak() + } + if yyb33 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj32-1, "") + z.DecStructFieldNotFound(yyj33-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -3452,7 +3528,7 @@ func (x *VolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [26]bool + var yyq2 [27]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[0] = x.HostPath != nil @@ -3481,9 +3557,10 @@ func (x *VolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { yyq2[23] = x.Projected != nil yyq2[24] = x.PortworxVolume != nil yyq2[25] = x.ScaleIO != nil + yyq2[26] = x.StorageOS != nil var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(26) + r.EncodeArrayStart(27) } else { yynn2 = 0 for _, b := range yyq2 { @@ -4092,6 +4169,29 @@ func (x *VolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { } } } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[26] { + if x.StorageOS == nil { + r.EncodeNil() + } else { + x.StorageOS.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[26] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("storageos")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.StorageOS == nil { + r.EncodeNil() + } else { + x.StorageOS.CodecEncodeSelf(e) + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -4439,6 +4539,17 @@ func (x *VolumeSource) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { } x.ScaleIO.CodecDecodeSelf(d) } + case "storageos": + if r.TryDecodeAsNil() { + if x.StorageOS != nil { + x.StorageOS = nil + } + } else { + if x.StorageOS == nil { + x.StorageOS = new(StorageOSVolumeSource) + } + x.StorageOS.CodecDecodeSelf(d) + } default: z.DecStructFieldNotFound(-1, yys3) } // end switch yys3 @@ -4450,16 +4561,16 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj30 int - var yyb30 bool - var yyhl30 bool = l >= 0 - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + var yyj31 int + var yyb31 bool + var yyhl31 bool = l >= 0 + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4474,13 +4585,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.HostPath.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4495,13 +4606,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.EmptyDir.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4516,13 +4627,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.GCEPersistentDisk.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4537,13 +4648,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.AWSElasticBlockStore.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4558,13 +4669,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.GitRepo.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4579,13 +4690,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.Secret.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4600,13 +4711,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.NFS.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4621,13 +4732,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.ISCSI.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4642,13 +4753,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.Glusterfs.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4663,13 +4774,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.PersistentVolumeClaim.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4684,13 +4795,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.RBD.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4705,13 +4816,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.FlexVolume.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4726,13 +4837,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.Cinder.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4747,13 +4858,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.CephFS.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4768,13 +4879,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.Flocker.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4789,13 +4900,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.DownwardAPI.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4810,13 +4921,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.FC.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4831,13 +4942,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.AzureFile.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4852,13 +4963,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.ConfigMap.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4873,13 +4984,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.VsphereVolume.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4894,13 +5005,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.Quobyte.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4915,13 +5026,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.AzureDisk.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4936,13 +5047,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.PhotonPersistentDisk.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4957,13 +5068,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.Projected.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4978,13 +5089,13 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.PortworxVolume.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l } else { - yyb30 = r.CheckBreak() + yyb31 = r.CheckBreak() } - if yyb30 { + if yyb31 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4999,18 +5110,39 @@ func (x *VolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } x.ScaleIO.CodecDecodeSelf(d) } - for { - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l - } else { - yyb30 = r.CheckBreak() + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l + } else { + yyb31 = r.CheckBreak() + } + if yyb31 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.StorageOS != nil { + x.StorageOS = nil } - if yyb30 { + } else { + if x.StorageOS == nil { + x.StorageOS = new(StorageOSVolumeSource) + } + x.StorageOS.CodecDecodeSelf(d) + } + for { + yyj31++ + if yyhl31 { + yyb31 = yyj31 > l + } else { + yyb31 = r.CheckBreak() + } + if yyb31 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj30-1, "") + z.DecStructFieldNotFound(yyj31-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -5263,7 +5395,7 @@ func (x *PersistentVolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [19]bool + var yyq2 [21]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[0] = x.GCEPersistentDisk != nil @@ -5285,9 +5417,11 @@ func (x *PersistentVolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { yyq2[16] = x.PhotonPersistentDisk != nil yyq2[17] = x.PortworxVolume != nil yyq2[18] = x.ScaleIO != nil + yyq2[19] = x.Local != nil + yyq2[20] = x.StorageOS != nil var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(19) + r.EncodeArrayStart(21) } else { yynn2 = 0 for _, b := range yyq2 { @@ -5735,6 +5869,52 @@ func (x *PersistentVolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { } } } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[19] { + if x.Local == nil { + r.EncodeNil() + } else { + x.Local.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[19] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("local")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Local == nil { + r.EncodeNil() + } else { + x.Local.CodecEncodeSelf(e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[20] { + if x.StorageOS == nil { + r.EncodeNil() + } else { + x.StorageOS.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[20] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("storageos")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.StorageOS == nil { + r.EncodeNil() + } else { + x.StorageOS.CodecEncodeSelf(e) + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -6005,6 +6185,28 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromMap(l int, d *codec1978.Deco } x.ScaleIO.CodecDecodeSelf(d) } + case "local": + if r.TryDecodeAsNil() { + if x.Local != nil { + x.Local = nil + } + } else { + if x.Local == nil { + x.Local = new(LocalVolumeSource) + } + x.Local.CodecDecodeSelf(d) + } + case "storageos": + if r.TryDecodeAsNil() { + if x.StorageOS != nil { + x.StorageOS = nil + } + } else { + if x.StorageOS == nil { + x.StorageOS = new(StorageOSPersistentVolumeSource) + } + x.StorageOS.CodecDecodeSelf(d) + } default: z.DecStructFieldNotFound(-1, yys3) } // end switch yys3 @@ -6016,16 +6218,16 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj23 int - var yyb23 bool - var yyhl23 bool = l >= 0 - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + var yyj25 int + var yyb25 bool + var yyhl25 bool = l >= 0 + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6040,13 +6242,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.GCEPersistentDisk.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6061,13 +6263,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.AWSElasticBlockStore.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6082,13 +6284,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.HostPath.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6103,13 +6305,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.Glusterfs.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6124,13 +6326,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.NFS.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6145,13 +6347,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.RBD.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6166,13 +6368,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.ISCSI.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6187,13 +6389,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.Cinder.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6208,13 +6410,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.CephFS.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6229,13 +6431,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.FC.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6250,13 +6452,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.Flocker.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6271,13 +6473,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.FlexVolume.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6292,13 +6494,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.AzureFile.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6313,13 +6515,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.VsphereVolume.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6334,13 +6536,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.Quobyte.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6355,13 +6557,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.AzureDisk.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6376,13 +6578,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.PhotonPersistentDisk.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6397,13 +6599,13 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.PortworxVolume.CodecDecodeSelf(d) } - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l } else { - yyb23 = r.CheckBreak() + yyb25 = r.CheckBreak() } - if yyb23 { + if yyb25 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6418,18 +6620,60 @@ func (x *PersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.De } x.ScaleIO.CodecDecodeSelf(d) } - for { - yyj23++ - if yyhl23 { - yyb23 = yyj23 > l - } else { - yyb23 = r.CheckBreak() + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l + } else { + yyb25 = r.CheckBreak() + } + if yyb25 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.Local != nil { + x.Local = nil } - if yyb23 { + } else { + if x.Local == nil { + x.Local = new(LocalVolumeSource) + } + x.Local.CodecDecodeSelf(d) + } + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l + } else { + yyb25 = r.CheckBreak() + } + if yyb25 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.StorageOS != nil { + x.StorageOS = nil + } + } else { + if x.StorageOS == nil { + x.StorageOS = new(StorageOSPersistentVolumeSource) + } + x.StorageOS.CodecDecodeSelf(d) + } + for { + yyj25++ + if yyhl25 { + yyb25 = yyj25 > l + } else { + yyb25 = r.CheckBreak() + } + if yyb25 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj23-1, "") + z.DecStructFieldNotFound(yyj25-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -6839,7 +7083,7 @@ func (x *PersistentVolumeSpec) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [24]bool + var yyq2 [26]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[0] = len(x.Capacity) != 0 @@ -6862,13 +7106,15 @@ func (x *PersistentVolumeSpec) CodecEncodeSelf(e *codec1978.Encoder) { yyq2[17] = x.PersistentVolumeSource.PhotonPersistentDisk != nil && x.PhotonPersistentDisk != nil yyq2[18] = x.PersistentVolumeSource.PortworxVolume != nil && x.PortworxVolume != nil yyq2[19] = x.PersistentVolumeSource.ScaleIO != nil && x.ScaleIO != nil - yyq2[20] = len(x.AccessModes) != 0 - yyq2[21] = x.ClaimRef != nil - yyq2[22] = x.PersistentVolumeReclaimPolicy != "" - yyq2[23] = x.StorageClassName != "" + yyq2[20] = x.PersistentVolumeSource.Local != nil && x.Local != nil + yyq2[21] = x.PersistentVolumeSource.StorageOS != nil && x.StorageOS != nil + yyq2[22] = len(x.AccessModes) != 0 + yyq2[23] = x.ClaimRef != nil + yyq2[24] = x.PersistentVolumeReclaimPolicy != "" + yyq2[25] = x.StorageClassName != "" var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(24) + r.EncodeArrayStart(26) } else { yynn2 = 0 for _, b := range yyq2 { @@ -7605,14 +7851,88 @@ func (x *PersistentVolumeSpec) CodecEncodeSelf(e *codec1978.Encoder) { } } } + var yyn63 bool + if x.PersistentVolumeSource.Local == nil { + yyn63 = true + goto LABEL63 + } + LABEL63: + if yyr2 || yy2arr2 { + if yyn63 { + r.EncodeNil() + } else { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[20] { + if x.Local == nil { + r.EncodeNil() + } else { + x.Local.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } + } else { + if yyq2[20] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("local")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if yyn63 { + r.EncodeNil() + } else { + if x.Local == nil { + r.EncodeNil() + } else { + x.Local.CodecEncodeSelf(e) + } + } + } + } + var yyn66 bool + if x.PersistentVolumeSource.StorageOS == nil { + yyn66 = true + goto LABEL66 + } + LABEL66: + if yyr2 || yy2arr2 { + if yyn66 { + r.EncodeNil() + } else { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[21] { + if x.StorageOS == nil { + r.EncodeNil() + } else { + x.StorageOS.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } + } else { + if yyq2[21] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("storageos")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if yyn66 { + r.EncodeNil() + } else { + if x.StorageOS == nil { + r.EncodeNil() + } else { + x.StorageOS.CodecEncodeSelf(e) + } + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[20] { + if yyq2[22] { if x.AccessModes == nil { r.EncodeNil() } else { - yym64 := z.EncBinary() - _ = yym64 + yym70 := z.EncBinary() + _ = yym70 if false { } else { h.encSlicePersistentVolumeAccessMode(([]PersistentVolumeAccessMode)(x.AccessModes), e) @@ -7622,15 +7942,15 @@ func (x *PersistentVolumeSpec) CodecEncodeSelf(e *codec1978.Encoder) { r.EncodeNil() } } else { - if yyq2[20] { + if yyq2[22] { z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("accessModes")) z.EncSendContainerState(codecSelfer_containerMapValue1234) if x.AccessModes == nil { r.EncodeNil() } else { - yym65 := z.EncBinary() - _ = yym65 + yym71 := z.EncBinary() + _ = yym71 if false { } else { h.encSlicePersistentVolumeAccessMode(([]PersistentVolumeAccessMode)(x.AccessModes), e) @@ -7640,7 +7960,7 @@ func (x *PersistentVolumeSpec) CodecEncodeSelf(e *codec1978.Encoder) { } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[21] { + if yyq2[23] { if x.ClaimRef == nil { r.EncodeNil() } else { @@ -7650,7 +7970,7 @@ func (x *PersistentVolumeSpec) CodecEncodeSelf(e *codec1978.Encoder) { r.EncodeNil() } } else { - if yyq2[21] { + if yyq2[23] { z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("claimRef")) z.EncSendContainerState(codecSelfer_containerMapValue1234) @@ -7663,13 +7983,13 @@ func (x *PersistentVolumeSpec) CodecEncodeSelf(e *codec1978.Encoder) { } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[22] { + if yyq2[24] { x.PersistentVolumeReclaimPolicy.CodecEncodeSelf(e) } else { r.EncodeString(codecSelferC_UTF81234, "") } } else { - if yyq2[22] { + if yyq2[24] { z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("persistentVolumeReclaimPolicy")) z.EncSendContainerState(codecSelfer_containerMapValue1234) @@ -7678,9 +7998,9 @@ func (x *PersistentVolumeSpec) CodecEncodeSelf(e *codec1978.Encoder) { } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[23] { - yym73 := z.EncBinary() - _ = yym73 + if yyq2[25] { + yym79 := z.EncBinary() + _ = yym79 if false { } else { r.EncodeString(codecSelferC_UTF81234, string(x.StorageClassName)) @@ -7689,12 +8009,12 @@ func (x *PersistentVolumeSpec) CodecEncodeSelf(e *codec1978.Encoder) { r.EncodeString(codecSelferC_UTF81234, "") } } else { - if yyq2[23] { + if yyq2[25] { z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("storageClassName")) z.EncSendContainerState(codecSelfer_containerMapValue1234) - yym74 := z.EncBinary() - _ = yym74 + yym80 := z.EncBinary() + _ = yym80 if false { } else { r.EncodeString(codecSelferC_UTF81234, string(x.StorageClassName)) @@ -8035,16 +8355,44 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromMap(l int, d *codec1978.Decode } x.ScaleIO.CodecDecodeSelf(d) } + case "local": + if x.PersistentVolumeSource.Local == nil { + x.PersistentVolumeSource.Local = new(LocalVolumeSource) + } + if r.TryDecodeAsNil() { + if x.Local != nil { + x.Local = nil + } + } else { + if x.Local == nil { + x.Local = new(LocalVolumeSource) + } + x.Local.CodecDecodeSelf(d) + } + case "storageos": + if x.PersistentVolumeSource.StorageOS == nil { + x.PersistentVolumeSource.StorageOS = new(StorageOSPersistentVolumeSource) + } + if r.TryDecodeAsNil() { + if x.StorageOS != nil { + x.StorageOS = nil + } + } else { + if x.StorageOS == nil { + x.StorageOS = new(StorageOSPersistentVolumeSource) + } + x.StorageOS.CodecDecodeSelf(d) + } case "accessModes": if r.TryDecodeAsNil() { x.AccessModes = nil } else { - yyv24 := &x.AccessModes - yym25 := z.DecBinary() - _ = yym25 + yyv26 := &x.AccessModes + yym27 := z.DecBinary() + _ = yym27 if false { } else { - h.decSlicePersistentVolumeAccessMode((*[]PersistentVolumeAccessMode)(yyv24), d) + h.decSlicePersistentVolumeAccessMode((*[]PersistentVolumeAccessMode)(yyv26), d) } } case "claimRef": @@ -8062,19 +8410,19 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromMap(l int, d *codec1978.Decode if r.TryDecodeAsNil() { x.PersistentVolumeReclaimPolicy = "" } else { - yyv27 := &x.PersistentVolumeReclaimPolicy - yyv27.CodecDecodeSelf(d) + yyv29 := &x.PersistentVolumeReclaimPolicy + yyv29.CodecDecodeSelf(d) } case "storageClassName": if r.TryDecodeAsNil() { x.StorageClassName = "" } else { - yyv28 := &x.StorageClassName - yym29 := z.DecBinary() - _ = yym29 + yyv30 := &x.StorageClassName + yym31 := z.DecBinary() + _ = yym31 if false { } else { - *((*string)(yyv28)) = r.DecodeString() + *((*string)(yyv30)) = r.DecodeString() } } default: @@ -8088,16 +8436,16 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj30 int - var yyb30 bool - var yyhl30 bool = l >= 0 - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + var yyj32 int + var yyb32 bool + var yyhl32 bool = l >= 0 + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8105,19 +8453,19 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if r.TryDecodeAsNil() { x.Capacity = nil } else { - yyv31 := &x.Capacity - yyv31.CodecDecodeSelf(d) + yyv33 := &x.Capacity + yyv33.CodecDecodeSelf(d) } if x.PersistentVolumeSource.GCEPersistentDisk == nil { x.PersistentVolumeSource.GCEPersistentDisk = new(GCEPersistentDiskVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8135,13 +8483,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.AWSElasticBlockStore == nil { x.PersistentVolumeSource.AWSElasticBlockStore = new(AWSElasticBlockStoreVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8159,13 +8507,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.HostPath == nil { x.PersistentVolumeSource.HostPath = new(HostPathVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8183,13 +8531,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.Glusterfs == nil { x.PersistentVolumeSource.Glusterfs = new(GlusterfsVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8207,13 +8555,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.NFS == nil { x.PersistentVolumeSource.NFS = new(NFSVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8231,13 +8579,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.RBD == nil { x.PersistentVolumeSource.RBD = new(RBDVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8255,13 +8603,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.ISCSI == nil { x.PersistentVolumeSource.ISCSI = new(ISCSIVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8279,13 +8627,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.Cinder == nil { x.PersistentVolumeSource.Cinder = new(CinderVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8303,13 +8651,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.CephFS == nil { x.PersistentVolumeSource.CephFS = new(CephFSVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8327,13 +8675,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.FC == nil { x.PersistentVolumeSource.FC = new(FCVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8351,13 +8699,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.Flocker == nil { x.PersistentVolumeSource.Flocker = new(FlockerVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8375,13 +8723,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.FlexVolume == nil { x.PersistentVolumeSource.FlexVolume = new(FlexVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8399,13 +8747,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.AzureFile == nil { x.PersistentVolumeSource.AzureFile = new(AzureFileVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8423,13 +8771,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.VsphereVolume == nil { x.PersistentVolumeSource.VsphereVolume = new(VsphereVirtualDiskVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8447,13 +8795,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.Quobyte == nil { x.PersistentVolumeSource.Quobyte = new(QuobyteVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8471,13 +8819,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.AzureDisk == nil { x.PersistentVolumeSource.AzureDisk = new(AzureDiskVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8495,13 +8843,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.PhotonPersistentDisk == nil { x.PersistentVolumeSource.PhotonPersistentDisk = new(PhotonPersistentDiskVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8519,13 +8867,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.PortworxVolume == nil { x.PersistentVolumeSource.PortworxVolume = new(PortworxVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8543,13 +8891,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if x.PersistentVolumeSource.ScaleIO == nil { x.PersistentVolumeSource.ScaleIO = new(ScaleIOVolumeSource) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8564,13 +8912,61 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco } x.ScaleIO.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l - } else { - yyb30 = r.CheckBreak() + if x.PersistentVolumeSource.Local == nil { + x.PersistentVolumeSource.Local = new(LocalVolumeSource) } - if yyb30 { + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l + } else { + yyb32 = r.CheckBreak() + } + if yyb32 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.Local != nil { + x.Local = nil + } + } else { + if x.Local == nil { + x.Local = new(LocalVolumeSource) + } + x.Local.CodecDecodeSelf(d) + } + if x.PersistentVolumeSource.StorageOS == nil { + x.PersistentVolumeSource.StorageOS = new(StorageOSPersistentVolumeSource) + } + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l + } else { + yyb32 = r.CheckBreak() + } + if yyb32 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.StorageOS != nil { + x.StorageOS = nil + } + } else { + if x.StorageOS == nil { + x.StorageOS = new(StorageOSPersistentVolumeSource) + } + x.StorageOS.CodecDecodeSelf(d) + } + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l + } else { + yyb32 = r.CheckBreak() + } + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8578,21 +8974,21 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if r.TryDecodeAsNil() { x.AccessModes = nil } else { - yyv51 := &x.AccessModes - yym52 := z.DecBinary() - _ = yym52 + yyv55 := &x.AccessModes + yym56 := z.DecBinary() + _ = yym56 if false { } else { - h.decSlicePersistentVolumeAccessMode((*[]PersistentVolumeAccessMode)(yyv51), d) + h.decSlicePersistentVolumeAccessMode((*[]PersistentVolumeAccessMode)(yyv55), d) } } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8607,13 +9003,13 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco } x.ClaimRef.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8621,16 +9017,16 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if r.TryDecodeAsNil() { x.PersistentVolumeReclaimPolicy = "" } else { - yyv54 := &x.PersistentVolumeReclaimPolicy - yyv54.CodecDecodeSelf(d) + yyv58 := &x.PersistentVolumeReclaimPolicy + yyv58.CodecDecodeSelf(d) } - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8638,26 +9034,26 @@ func (x *PersistentVolumeSpec) codecDecodeSelfFromArray(l int, d *codec1978.Deco if r.TryDecodeAsNil() { x.StorageClassName = "" } else { - yyv55 := &x.StorageClassName - yym56 := z.DecBinary() - _ = yym56 + yyv59 := &x.StorageClassName + yym60 := z.DecBinary() + _ = yym60 if false { } else { - *((*string)(yyv55)) = r.DecodeString() + *((*string)(yyv59)) = r.DecodeString() } } for { - yyj30++ - if yyhl30 { - yyb30 = yyj30 > l + yyj32++ + if yyhl32 { + yyb32 = yyj32 > l } else { - yyb30 = r.CheckBreak() + yyb32 = r.CheckBreak() } - if yyb30 { + if yyb32 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj30-1, "") + z.DecStructFieldNotFound(yyj32-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -11088,13 +11484,14 @@ func (x *EmptyDirVolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [1]bool + var yyq2 [2]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[0] = x.Medium != "" + yyq2[1] = true var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(1) + r.EncodeArrayStart(2) } else { yynn2 = 0 for _, b := range yyq2 { @@ -11120,6 +11517,39 @@ func (x *EmptyDirVolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { x.Medium.CodecEncodeSelf(e) } } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + yy7 := &x.SizeLimit + yym8 := z.EncBinary() + _ = yym8 + if false { + } else if z.HasExtensions() && z.EncExt(yy7) { + } else if !yym8 && z.IsJSONHandle() { + z.EncJSONMarshal(yy7) + } else { + z.EncFallback(yy7) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("sizeLimit")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy9 := &x.SizeLimit + yym10 := z.EncBinary() + _ = yym10 + if false { + } else if z.HasExtensions() && z.EncExt(yy9) { + } else if !yym10 && z.IsJSONHandle() { + z.EncJSONMarshal(yy9) + } else { + z.EncFallback(yy9) + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -11188,6 +11618,21 @@ func (x *EmptyDirVolumeSource) codecDecodeSelfFromMap(l int, d *codec1978.Decode yyv4 := &x.Medium yyv4.CodecDecodeSelf(d) } + case "sizeLimit": + if r.TryDecodeAsNil() { + x.SizeLimit = pkg3_resource.Quantity{} + } else { + yyv5 := &x.SizeLimit + yym6 := z.DecBinary() + _ = yym6 + if false { + } else if z.HasExtensions() && z.DecExt(yyv5) { + } else if !yym6 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv5) + } else { + z.DecFallback(yyv5, false) + } + } default: z.DecStructFieldNotFound(-1, yys3) } // end switch yys3 @@ -11199,16 +11644,16 @@ func (x *EmptyDirVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Deco var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj5 int - var yyb5 bool - var yyhl5 bool = l >= 0 - yyj5++ - if yyhl5 { - yyb5 = yyj5 > l + var yyj7 int + var yyb7 bool + var yyhl7 bool = l >= 0 + yyj7++ + if yyhl7 { + yyb7 = yyj7 > l } else { - yyb5 = r.CheckBreak() + yyb7 = r.CheckBreak() } - if yyb5 { + if yyb7 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11216,21 +11661,46 @@ func (x *EmptyDirVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Deco if r.TryDecodeAsNil() { x.Medium = "" } else { - yyv6 := &x.Medium - yyv6.CodecDecodeSelf(d) + yyv8 := &x.Medium + yyv8.CodecDecodeSelf(d) + } + yyj7++ + if yyhl7 { + yyb7 = yyj7 > l + } else { + yyb7 = r.CheckBreak() + } + if yyb7 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.SizeLimit = pkg3_resource.Quantity{} + } else { + yyv9 := &x.SizeLimit + yym10 := z.DecBinary() + _ = yym10 + if false { + } else if z.HasExtensions() && z.DecExt(yyv9) { + } else if !yym10 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv9) + } else { + z.DecFallback(yyv9, false) + } } for { - yyj5++ - if yyhl5 { - yyb5 = yyj5 > l + yyj7++ + if yyhl7 { + yyb7 = yyj7 > l } else { - yyb5 = r.CheckBreak() + yyb7 = r.CheckBreak() } - if yyb5 { + if yyb7 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj5-1, "") + z.DecStructFieldNotFound(yyj7-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -17402,13 +17872,15 @@ func (x *VsphereVirtualDiskVolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [2]bool + var yyq2 [4]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[1] = x.FSType != "" + yyq2[2] = x.StoragePolicyName != "" + yyq2[3] = x.StoragePolicyID != "" var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(2) + r.EncodeArrayStart(4) } else { yynn2 = 1 for _, b := range yyq2 { @@ -17463,6 +17935,56 @@ func (x *VsphereVirtualDiskVolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { } } } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yym10 := z.EncBinary() + _ = yym10 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.StoragePolicyName)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("storagePolicyName")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym11 := z.EncBinary() + _ = yym11 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.StoragePolicyName)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[3] { + yym13 := z.EncBinary() + _ = yym13 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.StoragePolicyID)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[3] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("storagePolicyID")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym14 := z.EncBinary() + _ = yym14 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.StoragePolicyID)) + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -17548,6 +18070,30 @@ func (x *VsphereVirtualDiskVolumeSource) codecDecodeSelfFromMap(l int, d *codec1 *((*string)(yyv6)) = r.DecodeString() } } + case "storagePolicyName": + if r.TryDecodeAsNil() { + x.StoragePolicyName = "" + } else { + yyv8 := &x.StoragePolicyName + yym9 := z.DecBinary() + _ = yym9 + if false { + } else { + *((*string)(yyv8)) = r.DecodeString() + } + } + case "storagePolicyID": + if r.TryDecodeAsNil() { + x.StoragePolicyID = "" + } else { + yyv10 := &x.StoragePolicyID + yym11 := z.DecBinary() + _ = yym11 + if false { + } else { + *((*string)(yyv10)) = r.DecodeString() + } + } default: z.DecStructFieldNotFound(-1, yys3) } // end switch yys3 @@ -17559,16 +18105,16 @@ func (x *VsphereVirtualDiskVolumeSource) codecDecodeSelfFromArray(l int, d *code var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj8 int - var yyb8 bool - var yyhl8 bool = l >= 0 - yyj8++ - if yyhl8 { - yyb8 = yyj8 > l + var yyj12 int + var yyb12 bool + var yyhl12 bool = l >= 0 + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l } else { - yyb8 = r.CheckBreak() + yyb12 = r.CheckBreak() } - if yyb8 { + if yyb12 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -17576,21 +18122,21 @@ func (x *VsphereVirtualDiskVolumeSource) codecDecodeSelfFromArray(l int, d *code if r.TryDecodeAsNil() { x.VolumePath = "" } else { - yyv9 := &x.VolumePath - yym10 := z.DecBinary() - _ = yym10 + yyv13 := &x.VolumePath + yym14 := z.DecBinary() + _ = yym14 if false { } else { - *((*string)(yyv9)) = r.DecodeString() + *((*string)(yyv13)) = r.DecodeString() } } - yyj8++ - if yyhl8 { - yyb8 = yyj8 > l + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l } else { - yyb8 = r.CheckBreak() + yyb12 = r.CheckBreak() } - if yyb8 { + if yyb12 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -17598,26 +18144,70 @@ func (x *VsphereVirtualDiskVolumeSource) codecDecodeSelfFromArray(l int, d *code if r.TryDecodeAsNil() { x.FSType = "" } else { - yyv11 := &x.FSType - yym12 := z.DecBinary() - _ = yym12 + yyv15 := &x.FSType + yym16 := z.DecBinary() + _ = yym16 if false { } else { - *((*string)(yyv11)) = r.DecodeString() + *((*string)(yyv15)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.StoragePolicyName = "" + } else { + yyv17 := &x.StoragePolicyName + yym18 := z.DecBinary() + _ = yym18 + if false { + } else { + *((*string)(yyv17)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.StoragePolicyID = "" + } else { + yyv19 := &x.StoragePolicyID + yym20 := z.DecBinary() + _ = yym20 + if false { + } else { + *((*string)(yyv19)) = r.DecodeString() } } for { - yyj8++ - if yyhl8 { - yyb8 = yyj8 > l + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l } else { - yyb8 = r.CheckBreak() + yyb12 = r.CheckBreak() } - if yyb8 { + if yyb12 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj8-1, "") + z.DecStructFieldNotFound(yyj12-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -19397,6 +19987,840 @@ func (x *ScaleIOVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decod z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } +func (x *StorageOSVolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [5]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.VolumeName != "" + yyq2[1] = x.VolumeNamespace != "" + yyq2[2] = x.FSType != "" + yyq2[3] = x.ReadOnly != false + yyq2[4] = x.SecretRef != nil + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(5) + } else { + yynn2 = 0 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.VolumeName)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("volumeName")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.VolumeName)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.VolumeNamespace)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("volumeNamespace")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.VolumeNamespace)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yym10 := z.EncBinary() + _ = yym10 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.FSType)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("fsType")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym11 := z.EncBinary() + _ = yym11 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.FSType)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[3] { + yym13 := z.EncBinary() + _ = yym13 + if false { + } else { + r.EncodeBool(bool(x.ReadOnly)) + } + } else { + r.EncodeBool(false) + } + } else { + if yyq2[3] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("readOnly")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym14 := z.EncBinary() + _ = yym14 + if false { + } else { + r.EncodeBool(bool(x.ReadOnly)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[4] { + if x.SecretRef == nil { + r.EncodeNil() + } else { + x.SecretRef.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[4] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("secretRef")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.SecretRef == nil { + r.EncodeNil() + } else { + x.SecretRef.CodecEncodeSelf(e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *StorageOSVolumeSource) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *StorageOSVolumeSource) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "volumeName": + if r.TryDecodeAsNil() { + x.VolumeName = "" + } else { + yyv4 := &x.VolumeName + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "volumeNamespace": + if r.TryDecodeAsNil() { + x.VolumeNamespace = "" + } else { + yyv6 := &x.VolumeNamespace + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + case "fsType": + if r.TryDecodeAsNil() { + x.FSType = "" + } else { + yyv8 := &x.FSType + yym9 := z.DecBinary() + _ = yym9 + if false { + } else { + *((*string)(yyv8)) = r.DecodeString() + } + } + case "readOnly": + if r.TryDecodeAsNil() { + x.ReadOnly = false + } else { + yyv10 := &x.ReadOnly + yym11 := z.DecBinary() + _ = yym11 + if false { + } else { + *((*bool)(yyv10)) = r.DecodeBool() + } + } + case "secretRef": + if r.TryDecodeAsNil() { + if x.SecretRef != nil { + x.SecretRef = nil + } + } else { + if x.SecretRef == nil { + x.SecretRef = new(LocalObjectReference) + } + x.SecretRef.CodecDecodeSelf(d) + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *StorageOSVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj13 int + var yyb13 bool + var yyhl13 bool = l >= 0 + yyj13++ + if yyhl13 { + yyb13 = yyj13 > l + } else { + yyb13 = r.CheckBreak() + } + if yyb13 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.VolumeName = "" + } else { + yyv14 := &x.VolumeName + yym15 := z.DecBinary() + _ = yym15 + if false { + } else { + *((*string)(yyv14)) = r.DecodeString() + } + } + yyj13++ + if yyhl13 { + yyb13 = yyj13 > l + } else { + yyb13 = r.CheckBreak() + } + if yyb13 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.VolumeNamespace = "" + } else { + yyv16 := &x.VolumeNamespace + yym17 := z.DecBinary() + _ = yym17 + if false { + } else { + *((*string)(yyv16)) = r.DecodeString() + } + } + yyj13++ + if yyhl13 { + yyb13 = yyj13 > l + } else { + yyb13 = r.CheckBreak() + } + if yyb13 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.FSType = "" + } else { + yyv18 := &x.FSType + yym19 := z.DecBinary() + _ = yym19 + if false { + } else { + *((*string)(yyv18)) = r.DecodeString() + } + } + yyj13++ + if yyhl13 { + yyb13 = yyj13 > l + } else { + yyb13 = r.CheckBreak() + } + if yyb13 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ReadOnly = false + } else { + yyv20 := &x.ReadOnly + yym21 := z.DecBinary() + _ = yym21 + if false { + } else { + *((*bool)(yyv20)) = r.DecodeBool() + } + } + yyj13++ + if yyhl13 { + yyb13 = yyj13 > l + } else { + yyb13 = r.CheckBreak() + } + if yyb13 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.SecretRef != nil { + x.SecretRef = nil + } + } else { + if x.SecretRef == nil { + x.SecretRef = new(LocalObjectReference) + } + x.SecretRef.CodecDecodeSelf(d) + } + for { + yyj13++ + if yyhl13 { + yyb13 = yyj13 > l + } else { + yyb13 = r.CheckBreak() + } + if yyb13 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj13-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *StorageOSPersistentVolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [5]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.VolumeName != "" + yyq2[1] = x.VolumeNamespace != "" + yyq2[2] = x.FSType != "" + yyq2[3] = x.ReadOnly != false + yyq2[4] = x.SecretRef != nil + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(5) + } else { + yynn2 = 0 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.VolumeName)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("volumeName")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.VolumeName)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.VolumeNamespace)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("volumeNamespace")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.VolumeNamespace)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yym10 := z.EncBinary() + _ = yym10 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.FSType)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("fsType")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym11 := z.EncBinary() + _ = yym11 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.FSType)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[3] { + yym13 := z.EncBinary() + _ = yym13 + if false { + } else { + r.EncodeBool(bool(x.ReadOnly)) + } + } else { + r.EncodeBool(false) + } + } else { + if yyq2[3] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("readOnly")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym14 := z.EncBinary() + _ = yym14 + if false { + } else { + r.EncodeBool(bool(x.ReadOnly)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[4] { + if x.SecretRef == nil { + r.EncodeNil() + } else { + x.SecretRef.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[4] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("secretRef")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.SecretRef == nil { + r.EncodeNil() + } else { + x.SecretRef.CodecEncodeSelf(e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *StorageOSPersistentVolumeSource) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *StorageOSPersistentVolumeSource) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "volumeName": + if r.TryDecodeAsNil() { + x.VolumeName = "" + } else { + yyv4 := &x.VolumeName + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "volumeNamespace": + if r.TryDecodeAsNil() { + x.VolumeNamespace = "" + } else { + yyv6 := &x.VolumeNamespace + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + case "fsType": + if r.TryDecodeAsNil() { + x.FSType = "" + } else { + yyv8 := &x.FSType + yym9 := z.DecBinary() + _ = yym9 + if false { + } else { + *((*string)(yyv8)) = r.DecodeString() + } + } + case "readOnly": + if r.TryDecodeAsNil() { + x.ReadOnly = false + } else { + yyv10 := &x.ReadOnly + yym11 := z.DecBinary() + _ = yym11 + if false { + } else { + *((*bool)(yyv10)) = r.DecodeBool() + } + } + case "secretRef": + if r.TryDecodeAsNil() { + if x.SecretRef != nil { + x.SecretRef = nil + } + } else { + if x.SecretRef == nil { + x.SecretRef = new(ObjectReference) + } + x.SecretRef.CodecDecodeSelf(d) + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *StorageOSPersistentVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj13 int + var yyb13 bool + var yyhl13 bool = l >= 0 + yyj13++ + if yyhl13 { + yyb13 = yyj13 > l + } else { + yyb13 = r.CheckBreak() + } + if yyb13 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.VolumeName = "" + } else { + yyv14 := &x.VolumeName + yym15 := z.DecBinary() + _ = yym15 + if false { + } else { + *((*string)(yyv14)) = r.DecodeString() + } + } + yyj13++ + if yyhl13 { + yyb13 = yyj13 > l + } else { + yyb13 = r.CheckBreak() + } + if yyb13 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.VolumeNamespace = "" + } else { + yyv16 := &x.VolumeNamespace + yym17 := z.DecBinary() + _ = yym17 + if false { + } else { + *((*string)(yyv16)) = r.DecodeString() + } + } + yyj13++ + if yyhl13 { + yyb13 = yyj13 > l + } else { + yyb13 = r.CheckBreak() + } + if yyb13 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.FSType = "" + } else { + yyv18 := &x.FSType + yym19 := z.DecBinary() + _ = yym19 + if false { + } else { + *((*string)(yyv18)) = r.DecodeString() + } + } + yyj13++ + if yyhl13 { + yyb13 = yyj13 > l + } else { + yyb13 = r.CheckBreak() + } + if yyb13 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ReadOnly = false + } else { + yyv20 := &x.ReadOnly + yym21 := z.DecBinary() + _ = yym21 + if false { + } else { + *((*bool)(yyv20)) = r.DecodeBool() + } + } + yyj13++ + if yyhl13 { + yyb13 = yyj13 > l + } else { + yyb13 = r.CheckBreak() + } + if yyb13 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.SecretRef != nil { + x.SecretRef = nil + } + } else { + if x.SecretRef == nil { + x.SecretRef = new(ObjectReference) + } + x.SecretRef.CodecDecodeSelf(d) + } + for { + yyj13++ + if yyhl13 { + yyb13 = yyj13 > l + } else { + yyb13 = r.CheckBreak() + } + if yyb13 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj13-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + func (x *ConfigMapVolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { var h codecSelfer1234 z, r := codec1978.GenHelperEncoder(e) @@ -20983,6 +22407,180 @@ func (x *KeyToPath) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } +func (x *LocalVolumeSource) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [1]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(1) + } else { + yynn2 = 1 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Path)) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("path")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Path)) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *LocalVolumeSource) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *LocalVolumeSource) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "path": + if r.TryDecodeAsNil() { + x.Path = "" + } else { + yyv4 := &x.Path + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *LocalVolumeSource) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj6 int + var yyb6 bool + var yyhl6 bool = l >= 0 + yyj6++ + if yyhl6 { + yyb6 = yyj6 > l + } else { + yyb6 = r.CheckBreak() + } + if yyb6 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Path = "" + } else { + yyv7 := &x.Path + yym8 := z.DecBinary() + _ = yym8 + if false { + } else { + *((*string)(yyv7)) = r.DecodeString() + } + } + for { + yyj6++ + if yyhl6 { + yyb6 = yyj6 > l + } else { + yyb6 = r.CheckBreak() + } + if yyb6 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj6-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + func (x *ContainerPort) CodecEncodeSelf(e *codec1978.Encoder) { var h codecSelfer1234 z, r := codec1978.GenHelperEncoder(e) @@ -26660,7 +28258,6 @@ func (x *Container) CodecEncodeSelf(e *codec1978.Encoder) { var yyq2 [20]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false - yyq2[1] = x.Image != "" yyq2[2] = len(x.Command) != 0 yyq2[3] = len(x.Args) != 0 yyq2[4] = x.WorkingDir != "" @@ -26683,7 +28280,7 @@ func (x *Container) CodecEncodeSelf(e *codec1978.Encoder) { if yyr2 || yy2arr2 { r.EncodeArrayStart(20) } else { - yynn2 = 1 + yynn2 = 2 for _, b := range yyq2 { if b { yynn2++ @@ -26713,27 +28310,21 @@ func (x *Container) CodecEncodeSelf(e *codec1978.Encoder) { } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - if yyq2[1] { - yym7 := z.EncBinary() - _ = yym7 - if false { - } else { - r.EncodeString(codecSelferC_UTF81234, string(x.Image)) - } + yym7 := z.EncBinary() + _ = yym7 + if false { } else { - r.EncodeString(codecSelferC_UTF81234, "") + r.EncodeString(codecSelferC_UTF81234, string(x.Image)) } } else { - if yyq2[1] { - z.EncSendContainerState(codecSelfer_containerMapKey1234) - r.EncodeString(codecSelferC_UTF81234, string("image")) - z.EncSendContainerState(codecSelfer_containerMapValue1234) - yym8 := z.EncBinary() - _ = yym8 - if false { - } else { - r.EncodeString(codecSelferC_UTF81234, string(x.Image)) - } + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("image")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Image)) } } if yyr2 || yy2arr2 { @@ -68266,7 +69857,7 @@ func (x codecSelfer1234) decSlicePersistentVolume(v *[]PersistentVolume, d *code yyrg1 := len(yyv1) > 0 yyv21 := yyv1 - yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 536) + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 552) if yyrt1 { if yyrl1 <= cap(yyv1) { yyv1 = yyv1[:yyrl1] @@ -70045,7 +71636,7 @@ func (x codecSelfer1234) decSliceVolume(v *[]Volume, d *codec1978.Decoder) { yyrg1 := len(yyv1) > 0 yyv21 := yyv1 - yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 224) + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 232) if yyrt1 { if yyrl1 <= cap(yyv1) { yyv1 = yyv1[:yyrl1] diff --git a/vendor/k8s.io/kubernetes/pkg/api/v1/types.go b/vendor/k8s.io/kubernetes/pkg/api/v1/types.go index 0e9dfed4..ba772329 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/v1/types.go +++ b/vendor/k8s.io/kubernetes/pkg/api/v1/types.go @@ -91,7 +91,7 @@ type ObjectMeta struct { // should retry (optionally after the time indicated in the Retry-After header). // // Applied only if Name is not specified. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#idempotency + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency // +optional GenerateName string `json:"generateName,omitempty" protobuf:"bytes,2,opt,name=generateName"` @@ -131,7 +131,7 @@ type ObjectMeta struct { // Populated by the system. // Read-only. // Value must be treated as opaque by clients and . - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#concurrency-control-and-consistency + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency // +optional ResourceVersion string `json:"resourceVersion,omitempty" protobuf:"bytes,6,opt,name=resourceVersion"` @@ -147,7 +147,7 @@ type ObjectMeta struct { // Populated by the system. // Read-only. // Null for lists. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional CreationTimestamp metav1.Time `json:"creationTimestamp,omitempty" protobuf:"bytes,8,opt,name=creationTimestamp"` @@ -167,7 +167,7 @@ type ObjectMeta struct { // // Populated by the system when a graceful deletion is requested. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional DeletionTimestamp *metav1.Time `json:"deletionTimestamp,omitempty" protobuf:"bytes,9,opt,name=deletionTimestamp"` @@ -348,6 +348,9 @@ type VolumeSource struct { // ScaleIO represents a ScaleIO persistent volume attached and mounted on Kubernetes nodes. // +optional ScaleIO *ScaleIOVolumeSource `json:"scaleIO,omitempty" protobuf:"bytes,25,opt,name=scaleIO"` + // StorageOS represents a StorageOS volume attached and mounted on Kubernetes nodes. + // +optional + StorageOS *StorageOSVolumeSource `json:"storageos,omitempty" protobuf:"bytes,27,opt,name=storageos"` } // PersistentVolumeClaimVolumeSource references the user's PVC in the same namespace. @@ -439,6 +442,13 @@ type PersistentVolumeSource struct { // ScaleIO represents a ScaleIO persistent volume attached and mounted on Kubernetes nodes. // +optional ScaleIO *ScaleIOVolumeSource `json:"scaleIO,omitempty" protobuf:"bytes,19,opt,name=scaleIO"` + // Local represents directly-attached storage with node affinity + // +optional + Local *LocalVolumeSource `json:"local,omitempty" protobuf:"bytes,20,opt,name=local"` + // StorageOS represents a StorageOS volume that is attached to the kubelet's host machine and mounted into the pod + // More info: https://releases.k8s.io/HEAD/examples/volumes/storageos/README.md + // +optional + StorageOS *StorageOSPersistentVolumeSource `json:"storageos,omitempty" protobuf:"bytes,21,opt,name=storageos"` } const ( @@ -448,6 +458,10 @@ const ( // MountOptionAnnotation defines mount option annotation used in PVs MountOptionAnnotation = "volume.beta.kubernetes.io/mount-options" + + // AlphaStorageNodeAffinityAnnotation defines node affinity policies for a PersistentVolume. + // Value is a string of the json representation of type NodeAffinity + AlphaStorageNodeAffinityAnnotation = "volume.alpha.kubernetes.io/node-affinity" ) // +genclient=true @@ -459,7 +473,7 @@ const ( type PersistentVolume struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -541,7 +555,7 @@ type PersistentVolumeStatus struct { type PersistentVolumeList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // List of persistent volumes. @@ -555,7 +569,7 @@ type PersistentVolumeList struct { type PersistentVolumeClaim struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -575,7 +589,7 @@ type PersistentVolumeClaim struct { type PersistentVolumeClaimList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // A list of persistent volume claims. @@ -679,6 +693,14 @@ type EmptyDirVolumeSource struct { // More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir // +optional Medium StorageMedium `json:"medium,omitempty" protobuf:"bytes,1,opt,name=medium,casttype=StorageMedium"` + // Total amount of local storage required for this EmptyDir volume. + // The size limit is also applicable for memory medium. + // The maximum usage on memory medium EmptyDir would be the minimum value between + // the SizeLimit specified here and the sum of memory limits of all containers in a pod. + // The default is nil which means that the limit is undefined. + // More info: http://kubernetes.io/docs/user-guide/volumes#emptydir + // +optional + SizeLimit resource.Quantity `json:"sizeLimit,omitempty" protobuf:"bytes,2,opt,name=sizeLimit"` } // Represents a Glusterfs mount that lasts the lifetime of a pod. @@ -1111,6 +1133,12 @@ type VsphereVirtualDiskVolumeSource struct { // Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. // +optional FSType string `json:"fsType,omitempty" protobuf:"bytes,2,opt,name=fsType"` + // Storage Policy Based Management (SPBM) profile name. + // +optional + StoragePolicyName string `json:"storagePolicyName,omitempty" protobuf:"bytes,3,opt,name=storagePolicyName"` + // Storage Policy Based Management (SPBM) profile ID associated with the StoragePolicyName. + // +optional + StoragePolicyID string `json:"storagePolicyID,omitempty" protobuf:"bytes,4,opt,name=storagePolicyID"` } // Represents a Photon Controller persistent disk resource. @@ -1207,6 +1235,62 @@ type ScaleIOVolumeSource struct { ReadOnly bool `json:"readOnly,omitempty" protobuf:"varint,10,opt,name=readOnly"` } +// Represents a StorageOS persistent volume resource. +type StorageOSVolumeSource struct { + // VolumeName is the human-readable name of the StorageOS volume. Volume + // names are only unique within a namespace. + VolumeName string `json:"volumeName,omitempty" protobuf:"bytes,1,opt,name=volumeName"` + // VolumeNamespace specifies the scope of the volume within StorageOS. If no + // namespace is specified then the Pod's namespace will be used. This allows the + // Kubernetes name scoping to be mirrored within StorageOS for tighter integration. + // Set VolumeName to any name to override the default behaviour. + // Set to "default" if you are not using namespaces within StorageOS. + // Namespaces that do not pre-exist within StorageOS will be created. + // +optional + VolumeNamespace string `json:"volumeNamespace,omitempty" protobuf:"bytes,2,opt,name=volumeNamespace"` + // Filesystem type to mount. + // Must be a filesystem type supported by the host operating system. + // Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. + // +optional + FSType string `json:"fsType,omitempty" protobuf:"bytes,3,opt,name=fsType"` + // Defaults to false (read/write). ReadOnly here will force + // the ReadOnly setting in VolumeMounts. + // +optional + ReadOnly bool `json:"readOnly,omitempty" protobuf:"varint,4,opt,name=readOnly"` + // SecretRef specifies the secret to use for obtaining the StorageOS API + // credentials. If not specified, default values will be attempted. + // +optional + SecretRef *LocalObjectReference `json:"secretRef,omitempty" protobuf:"bytes,5,opt,name=secretRef"` +} + +// Represents a StorageOS persistent volume resource. +type StorageOSPersistentVolumeSource struct { + // VolumeName is the human-readable name of the StorageOS volume. Volume + // names are only unique within a namespace. + VolumeName string `json:"volumeName,omitempty" protobuf:"bytes,1,opt,name=volumeName"` + // VolumeNamespace specifies the scope of the volume within StorageOS. If no + // namespace is specified then the Pod's namespace will be used. This allows the + // Kubernetes name scoping to be mirrored within StorageOS for tighter integration. + // Set VolumeName to any name to override the default behaviour. + // Set to "default" if you are not using namespaces within StorageOS. + // Namespaces that do not pre-exist within StorageOS will be created. + // +optional + VolumeNamespace string `json:"volumeNamespace,omitempty" protobuf:"bytes,2,opt,name=volumeNamespace"` + // Filesystem type to mount. + // Must be a filesystem type supported by the host operating system. + // Ex. "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. + // +optional + FSType string `json:"fsType,omitempty" protobuf:"bytes,3,opt,name=fsType"` + // Defaults to false (read/write). ReadOnly here will force + // the ReadOnly setting in VolumeMounts. + // +optional + ReadOnly bool `json:"readOnly,omitempty" protobuf:"varint,4,opt,name=readOnly"` + // SecretRef specifies the secret to use for obtaining the StorageOS API + // credentials. If not specified, default values will be attempted. + // +optional + SecretRef *ObjectReference `json:"secretRef,omitempty" protobuf:"bytes,5,opt,name=secretRef"` +} + // Adapts a ConfigMap into a volume. // // The contents of the target ConfigMap's Data field will be presented in a @@ -1310,6 +1394,14 @@ type KeyToPath struct { Mode *int32 `json:"mode,omitempty" protobuf:"varint,3,opt,name=mode"` } +// Local represents directly-attached storage with node affinity +type LocalVolumeSource struct { + // The full path to the volume on the node + // For alpha, this path must be a directory + // Once block as a source is supported, then this path can point to a block device + Path string `json:"path" protobuf:"bytes,1,opt,name=path"` +} + // ContainerPort represents a network port in a single container. type ContainerPort struct { // If specified, this must be an IANA_SVC_NAME and unique within the pod. Each @@ -1629,8 +1721,7 @@ type Container struct { Name string `json:"name" protobuf:"bytes,1,opt,name=name"` // Docker image name. // More info: https://kubernetes.io/docs/concepts/containers/images - // +optional - Image string `json:"image,omitempty" protobuf:"bytes,2,opt,name=image"` + Image string `json:"image" protobuf:"bytes,2,opt,name=image"` // Entrypoint array. Not executed within a shell. // The docker image's ENTRYPOINT is used if this is not provided. // Variable references $(VAR_NAME) are expanded using the container's environment. If a variable @@ -1736,7 +1827,7 @@ type Container struct { ImagePullPolicy PullPolicy `json:"imagePullPolicy,omitempty" protobuf:"bytes,14,opt,name=imagePullPolicy,casttype=PullPolicy"` // Security options the pod should run with. // More info: https://kubernetes.io/docs/concepts/policy/security-context/ - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/security_context.md + // More info: https://git.k8s.io/community/contributors/design-proposals/security_context.md // +optional SecurityContext *SecurityContext `json:"securityContext,omitempty" protobuf:"bytes,15,opt,name=securityContext"` @@ -2436,7 +2527,7 @@ type PodSpec struct { type HostAlias struct { // IP address of the host file entry. IP string `json:"ip,omitempty" protobuf:"bytes,1,opt,name=ip"` - // Hostnames for the the above IP address. + // Hostnames for the above IP address. Hostnames []string `json:"hostnames,omitempty" protobuf:"bytes,2,rep,name=hostnames"` } @@ -2552,14 +2643,14 @@ type PodStatus struct { type PodStatusResult struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Most recently observed status of the pod. // This data may not be up to date. // Populated by the system. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status PodStatus `json:"status,omitempty" protobuf:"bytes,2,opt,name=status"` } @@ -2571,12 +2662,12 @@ type PodStatusResult struct { type Pod struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Specification of the desired behavior of the pod. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec PodSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` @@ -2584,7 +2675,7 @@ type Pod struct { // This data may not be up to date. // Populated by the system. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status PodStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } @@ -2593,24 +2684,24 @@ type Pod struct { type PodList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // List of pods. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md Items []Pod `json:"items" protobuf:"bytes,2,rep,name=items"` } // PodTemplateSpec describes the data a pod should have when created from a template type PodTemplateSpec struct { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Specification of the desired behavior of the pod. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec PodSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` } @@ -2621,12 +2712,12 @@ type PodTemplateSpec struct { type PodTemplate struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Template defines the pods that will be created from this pod template. - // https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Template PodTemplateSpec `json:"template,omitempty" protobuf:"bytes,2,opt,name=template"` } @@ -2635,7 +2726,7 @@ type PodTemplate struct { type PodTemplateList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -2744,12 +2835,12 @@ type ReplicationController struct { // If the Labels of a ReplicationController are empty, they are defaulted to // be the same as the Pod(s) that the replication controller manages. - // Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Spec defines the specification of the desired behavior of the replication controller. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec ReplicationControllerSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` @@ -2757,7 +2848,7 @@ type ReplicationController struct { // This data may be out of date by some window of time. // Populated by the system. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status ReplicationControllerStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } @@ -2766,7 +2857,7 @@ type ReplicationController struct { type ReplicationControllerList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -2813,10 +2904,10 @@ const ( type ServiceExternalTrafficPolicyType string const ( - // ServiceExternalTrafficPolicyTypeLocal specifies local endpoints behavior. + // ServiceExternalTrafficPolicyTypeLocal specifies node-local endpoints behavior. ServiceExternalTrafficPolicyTypeLocal ServiceExternalTrafficPolicyType = "Local" - // ServiceExternalTrafficPolicyTypeGlobal specifies global (legacy) behavior. - ServiceExternalTrafficPolicyTypeGlobal ServiceExternalTrafficPolicyType = "Global" + // ServiceExternalTrafficPolicyTypeCluster specifies node-global (legacy) behavior. + ServiceExternalTrafficPolicyTypeCluster ServiceExternalTrafficPolicyType = "Cluster" ) // ServiceStatus represents the current status of a service. @@ -2932,9 +3023,12 @@ type ServiceSpec struct { // +optional ExternalName string `json:"externalName,omitempty" protobuf:"bytes,10,opt,name=externalName"` - // externalTrafficPolicy denotes if this Service desires to route external traffic to - // local endpoints only. This preserves Source IP and avoids a second hop for - // LoadBalancer and Nodeport type services. + // externalTrafficPolicy denotes if this Service desires to route external + // traffic to node-local or cluster-wide endpoints. "Local" preserves the + // client source IP and avoids a second hop for LoadBalancer and Nodeport + // type services, but risks potentially imbalanced traffic spreading. + // "Cluster" obscures the client source IP and may cause a second hop to + // another node, but should have good overall load-spreading. // +optional ExternalTrafficPolicy ServiceExternalTrafficPolicyType `json:"externalTrafficPolicy,omitempty" protobuf:"bytes,11,opt,name=externalTrafficPolicy"` @@ -2992,19 +3086,19 @@ type ServicePort struct { type Service struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Spec defines the behavior of a service. - // https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec ServiceSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` // Most recently observed status of the service. // Populated by the system. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status ServiceStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } @@ -3019,7 +3113,7 @@ const ( type ServiceList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -3036,7 +3130,7 @@ type ServiceList struct { type ServiceAccount struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -3064,7 +3158,7 @@ type ServiceAccount struct { type ServiceAccountList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -3090,7 +3184,7 @@ type ServiceAccountList struct { type Endpoints struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -3171,7 +3265,7 @@ type EndpointPort struct { type EndpointsList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -3222,11 +3316,11 @@ type NodeDaemonEndpoints struct { // NodeSystemInfo is a set of ids/uuids to uniquely identify the node. type NodeSystemInfo struct { // MachineID reported by the node. For unique machine identification - // in the cluster this field is prefered. Learn more from man(5) + // in the cluster this field is preferred. Learn more from man(5) // machine-id: http://man7.org/linux/man-pages/man5/machine-id.5.html MachineID string `json:"machineID" protobuf:"bytes,1,opt,name=machineID"` // SystemUUID reported by the node. For unique machine identification - // MachineID is prefered. This field is specific to Red Hat hosts + // MachineID is preferred. This field is specific to Red Hat hosts // https://access.redhat.com/documentation/en-US/Red_Hat_Subscription_Management/1/html/RHSM/getting-system-uuid.html SystemUUID string `json:"systemUUID" protobuf:"bytes,2,opt,name=systemUUID"` // Boot ID reported by the node. @@ -3434,6 +3528,12 @@ const ( ResourceMemory ResourceName = "memory" // Volume size, in bytes (e,g. 5Gi = 5GiB = 5 * 1024 * 1024 * 1024) ResourceStorage ResourceName = "storage" + // Local Storage for container overlay filesystem, in bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024) + // The resource name for ResourceStorageOverlay is alpha and it can change across releases. + ResourceStorageOverlay ResourceName = "storage.kubernetes.io/overlay" + // Local Storage for scratch space, in bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024) + // The resource name for ResourceStorageScratch is alpha and it can change across releases. + ResourceStorageScratch ResourceName = "storage.kubernetes.io/scratch" // NVIDIA GPU, in devices. Alpha, might change: although fractional and allowing values >1, only one whole device per node is assigned. ResourceNvidiaGPU ResourceName = "alpha.kubernetes.io/nvidia-gpu" // Number of Pods that may be running on this Node: see ResourcePods @@ -3455,19 +3555,19 @@ type ResourceList map[ResourceName]resource.Quantity type Node struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Spec defines the behavior of a node. - // https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec NodeSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` // Most recently observed status of the node. // Populated by the system. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status NodeStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } @@ -3476,7 +3576,7 @@ type Node struct { type NodeList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -3496,7 +3596,7 @@ const ( // NamespaceSpec describes the attributes on a Namespace. type NamespaceSpec struct { // Finalizers is an opaque list of values that must be empty to permanently remove object from storage. - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/namespaces.md#finalizers + // More info: https://git.k8s.io/community/contributors/design-proposals/namespaces.md#finalizers // +optional Finalizers []FinalizerName `json:"finalizers,omitempty" protobuf:"bytes,1,rep,name=finalizers,casttype=FinalizerName"` } @@ -3504,7 +3604,7 @@ type NamespaceSpec struct { // NamespaceStatus is information about the current status of a Namespace. type NamespaceStatus struct { // Phase is the current lifecycle phase of the namespace. - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/namespaces.md#phases + // More info: https://git.k8s.io/community/contributors/design-proposals/namespaces.md#phases // +optional Phase NamespacePhase `json:"phase,omitempty" protobuf:"bytes,1,opt,name=phase,casttype=NamespacePhase"` } @@ -3527,17 +3627,17 @@ const ( type Namespace struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Spec defines the behavior of the Namespace. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec NamespaceSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` // Status describes the current status of a Namespace. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status NamespaceStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } @@ -3546,7 +3646,7 @@ type Namespace struct { type NamespaceList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -3555,12 +3655,12 @@ type NamespaceList struct { Items []Namespace `json:"items" protobuf:"bytes,2,rep,name=items"` } -// Binding ties one object to another. -// For example, a pod is bound to a node by a scheduler. +// Binding ties one object to another; for example, a pod is bound to a node by a scheduler. +// Deprecated in 1.7, please use the bindings subresource of pods instead. type Binding struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -3817,7 +3917,7 @@ type ServiceProxyOptions struct { // ObjectReference contains enough information to let you inspect or modify the referred object. type ObjectReference struct { // Kind of the referent. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional Kind string `json:"kind,omitempty" protobuf:"bytes,1,opt,name=kind"` // Namespace of the referent. @@ -3836,7 +3936,7 @@ type ObjectReference struct { // +optional APIVersion string `json:"apiVersion,omitempty" protobuf:"bytes,5,opt,name=apiVersion"` // Specific resourceVersion to which this reference is made, if any. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#concurrency-control-and-consistency + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency // +optional ResourceVersion string `json:"resourceVersion,omitempty" protobuf:"bytes,6,opt,name=resourceVersion"` @@ -3895,7 +3995,7 @@ const ( type Event struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata metav1.ObjectMeta `json:"metadata" protobuf:"bytes,1,opt,name=metadata"` // The object that this event is about. @@ -3937,7 +4037,7 @@ type Event struct { type EventList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -3949,7 +4049,7 @@ type EventList struct { type List struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -4003,12 +4103,12 @@ type LimitRangeSpec struct { type LimitRange struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Spec defines the limits enforced. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec LimitRangeSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` } @@ -4017,12 +4117,12 @@ type LimitRange struct { type LimitRangeList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Items is a list of LimitRange objects. - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/admission_control_limit_range.md + // More info: https://git.k8s.io/community/contributors/design-proposals/admission_control_limit_range.md Items []LimitRange `json:"items" protobuf:"bytes,2,rep,name=items"` } @@ -4075,7 +4175,7 @@ const ( // ResourceQuotaSpec defines the desired hard limits to enforce for Quota. type ResourceQuotaSpec struct { // Hard is the set of desired hard limits for each named resource. - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/admission_control_resource_quota.md + // More info: https://git.k8s.io/community/contributors/design-proposals/admission_control_resource_quota.md // +optional Hard ResourceList `json:"hard,omitempty" protobuf:"bytes,1,rep,name=hard,casttype=ResourceList,castkey=ResourceName"` // A collection of filters that must match each object tracked by a quota. @@ -4087,7 +4187,7 @@ type ResourceQuotaSpec struct { // ResourceQuotaStatus defines the enforced hard limits and observed use. type ResourceQuotaStatus struct { // Hard is the set of enforced hard limits for each named resource. - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/admission_control_resource_quota.md + // More info: https://git.k8s.io/community/contributors/design-proposals/admission_control_resource_quota.md // +optional Hard ResourceList `json:"hard,omitempty" protobuf:"bytes,1,rep,name=hard,casttype=ResourceList,castkey=ResourceName"` // Used is the current observed total usage of the resource in the namespace. @@ -4101,17 +4201,17 @@ type ResourceQuotaStatus struct { type ResourceQuota struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Spec defines the desired quota. - // https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec ResourceQuotaSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` // Status defines the actual enforced quota and its current usage. - // https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status ResourceQuotaStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } @@ -4120,12 +4220,12 @@ type ResourceQuota struct { type ResourceQuotaList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Items is a list of ResourceQuota objects. - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/admission_control_resource_quota.md + // More info: https://git.k8s.io/community/contributors/design-proposals/admission_control_resource_quota.md Items []ResourceQuota `json:"items" protobuf:"bytes,2,rep,name=items"` } @@ -4136,7 +4236,7 @@ type ResourceQuotaList struct { type Secret struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -4247,7 +4347,7 @@ const ( type SecretList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -4262,7 +4362,7 @@ type SecretList struct { type ConfigMap struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -4276,7 +4376,7 @@ type ConfigMap struct { type ConfigMapList struct { metav1.TypeMeta `json:",inline"` - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -4317,7 +4417,7 @@ type ComponentCondition struct { type ComponentStatus struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -4332,7 +4432,7 @@ type ComponentStatus struct { type ComponentStatusList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -4446,7 +4546,7 @@ type SELinuxOptions struct { type RangeAllocation struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -4465,10 +4565,6 @@ const ( // When the --hard-pod-affinity-weight scheduler flag is not specified, // DefaultHardPodAffinityWeight defines the weight of the implicit PreferredDuringScheduling affinity rule. DefaultHardPodAffinitySymmetricWeight int = 1 - - // When the --failure-domains scheduler flag is not specified, - // DefaultFailureDomains defines the set of label keys used when TopologyKey is empty in PreferredDuringScheduling anti-affinity. - DefaultFailureDomains string = metav1.LabelHostname + "," + metav1.LabelZoneFailureDomain + "," + metav1.LabelZoneRegion ) // Sysctl defines a kernel parameter to be set diff --git a/vendor/k8s.io/kubernetes/pkg/api/v1/types_swagger_doc_generated.go b/vendor/k8s.io/kubernetes/pkg/api/v1/types_swagger_doc_generated.go index 16cb5d51..73bcc619 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/v1/types_swagger_doc_generated.go +++ b/vendor/k8s.io/kubernetes/pkg/api/v1/types_swagger_doc_generated.go @@ -95,8 +95,8 @@ func (AzureFileVolumeSource) SwaggerDoc() map[string]string { } var map_Binding = map[string]string{ - "": "Binding ties one object to another. For example, a pod is bound to a node by a scheduler.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "": "Binding ties one object to another; for example, a pod is bound to a node by a scheduler. Deprecated in 1.7, please use the bindings subresource of pods instead.", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "target": "The target object that you want to bind to the standard object.", } @@ -153,7 +153,7 @@ func (ComponentCondition) SwaggerDoc() map[string]string { var map_ComponentStatus = map[string]string{ "": "ComponentStatus (and ComponentStatusList) holds the cluster validation info.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "conditions": "List of component conditions observed", } @@ -163,7 +163,7 @@ func (ComponentStatus) SwaggerDoc() map[string]string { var map_ComponentStatusList = map[string]string{ "": "Status of all the conditions for the component as a list of ComponentStatus objects.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", "items": "List of ComponentStatus objects.", } @@ -173,7 +173,7 @@ func (ComponentStatusList) SwaggerDoc() map[string]string { var map_ConfigMap = map[string]string{ "": "ConfigMap holds configuration data for pods to consume.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "data": "Data contains the configuration data. Each key must consist of alphanumeric characters, '-', '_' or '.'.", } @@ -202,7 +202,7 @@ func (ConfigMapKeySelector) SwaggerDoc() map[string]string { var map_ConfigMapList = map[string]string{ "": "ConfigMapList is a resource containing a list of ConfigMap objects.", - "metadata": "More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "items": "Items is the list of ConfigMaps.", } @@ -249,7 +249,7 @@ var map_Container = map[string]string{ "terminationMessagePath": "Optional: Path at which the file to which the container's termination message will be written is mounted into the container's filesystem. Message written is intended to be brief final status, such as an assertion failure message. Will be truncated by the node if greater than 4096 bytes. The total message length across all containers will be limited to 12kb. Defaults to /dev/termination-log. Cannot be updated.", "terminationMessagePolicy": "Indicate how the termination message should be populated. File will use the contents of terminationMessagePath to populate the container status message on both success and failure. FallbackToLogsOnError will use the last chunk of container log output if the termination message file is empty and the container exited with an error. The log output is limited to 2048 bytes or 80 lines, whichever is smaller. Defaults to File. Cannot be updated.", "imagePullPolicy": "Image pull policy. One of Always, Never, IfNotPresent. Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images", - "securityContext": "Security options the pod should run with. More info: https://kubernetes.io/docs/concepts/policy/security-context/ More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/security_context.md", + "securityContext": "Security options the pod should run with. More info: https://kubernetes.io/docs/concepts/policy/security-context/ More info: https://git.k8s.io/community/contributors/design-proposals/security_context.md", "stdin": "Whether this container should allocate a buffer for stdin in the container runtime. If this is not set, reads from stdin in the container will always result in EOF. Default is false.", "stdinOnce": "Whether the container runtime should close the stdin channel after it has been opened by a single attach. When stdin is true the stdin stream will remain open across multiple attach sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the first client attaches to stdin, and then remains open and accepts data until the client disconnects, at which time stdin is closed and remains closed until the container is restarted. If this flag is false, a container processes that reads from stdin will never receive an EOF. Default is false", "tty": "Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. Default is false.", @@ -396,8 +396,9 @@ func (DownwardAPIVolumeSource) SwaggerDoc() map[string]string { } var map_EmptyDirVolumeSource = map[string]string{ - "": "Represents an empty directory for a pod. Empty directory volumes support ownership management and SELinux relabeling.", - "medium": "What type of storage medium should back this directory. The default is \"\" which means to use the node's default medium. Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir", + "": "Represents an empty directory for a pod. Empty directory volumes support ownership management and SELinux relabeling.", + "medium": "What type of storage medium should back this directory. The default is \"\" which means to use the node's default medium. Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir", + "sizeLimit": "Total amount of local storage required for this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. The default is nil which means that the limit is undefined. More info: http://kubernetes.io/docs/user-guide/volumes#emptydir", } func (EmptyDirVolumeSource) SwaggerDoc() map[string]string { @@ -440,7 +441,7 @@ func (EndpointSubset) SwaggerDoc() map[string]string { var map_Endpoints = map[string]string{ "": "Endpoints is a collection of endpoints that implement the actual service. Example:\n Name: \"mysvc\",\n Subsets: [\n {\n Addresses: [{\"ip\": \"10.10.1.1\"}, {\"ip\": \"10.10.2.2\"}],\n Ports: [{\"name\": \"a\", \"port\": 8675}, {\"name\": \"b\", \"port\": 309}]\n },\n {\n Addresses: [{\"ip\": \"10.10.3.3\"}],\n Ports: [{\"name\": \"a\", \"port\": 93}, {\"name\": \"b\", \"port\": 76}]\n },\n ]", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "subsets": "The set of all endpoints is the union of all subsets. Addresses are placed into subsets according to the IPs they share. A single address with multiple ports, some of which are ready and some of which are not (because they come from different containers) will result in the address being displayed in different subsets for the different ports. No address will appear in both Addresses and NotReadyAddresses in the same subset. Sets of addresses and ports that comprise a service.", } @@ -450,7 +451,7 @@ func (Endpoints) SwaggerDoc() map[string]string { var map_EndpointsList = map[string]string{ "": "EndpointsList is a list of endpoints.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", "items": "List of endpoints.", } @@ -494,7 +495,7 @@ func (EnvVarSource) SwaggerDoc() map[string]string { var map_Event = map[string]string{ "": "Event is a report of an event somewhere in the cluster.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "involvedObject": "The object that this event is about.", "reason": "This should be a short, machine understandable string that gives the reason for the transition into the object's current status.", "message": "A human-readable description of the status of this operation.", @@ -511,7 +512,7 @@ func (Event) SwaggerDoc() map[string]string { var map_EventList = map[string]string{ "": "EventList is a list of events.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", "items": "List of events", } @@ -644,7 +645,7 @@ func (Handler) SwaggerDoc() map[string]string { var map_HostAlias = map[string]string{ "": "HostAlias holds the mapping between IP and hostnames that will be injected as an entry in the pod's hosts file.", "ip": "IP address of the host file entry.", - "hostnames": "Hostnames for the the above IP address.", + "hostnames": "Hostnames for the above IP address.", } func (HostAlias) SwaggerDoc() map[string]string { @@ -701,8 +702,8 @@ func (Lifecycle) SwaggerDoc() map[string]string { var map_LimitRange = map[string]string{ "": "LimitRange sets resource usage limits for each kind of resource in a Namespace.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "spec": "Spec defines the limits enforced. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "Spec defines the limits enforced. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (LimitRange) SwaggerDoc() map[string]string { @@ -725,8 +726,8 @@ func (LimitRangeItem) SwaggerDoc() map[string]string { var map_LimitRangeList = map[string]string{ "": "LimitRangeList is a list of LimitRange items.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", - "items": "Items is a list of LimitRange objects. More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/admission_control_limit_range.md", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", + "items": "Items is a list of LimitRange objects. More info: https://git.k8s.io/community/contributors/design-proposals/admission_control_limit_range.md", } func (LimitRangeList) SwaggerDoc() map[string]string { @@ -744,7 +745,7 @@ func (LimitRangeSpec) SwaggerDoc() map[string]string { var map_List = map[string]string{ "": "List holds a list of objects, which may not be known by the server.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", "items": "List of objects", } @@ -794,6 +795,15 @@ func (LocalObjectReference) SwaggerDoc() map[string]string { return map_LocalObjectReference } +var map_LocalVolumeSource = map[string]string{ + "": "Local represents directly-attached storage with node affinity", + "path": "The full path to the volume on the node For alpha, this path must be a directory Once block as a source is supported, then this path can point to a block device", +} + +func (LocalVolumeSource) SwaggerDoc() map[string]string { + return map_LocalVolumeSource +} + var map_NFSVolumeSource = map[string]string{ "": "Represents an NFS mount that lasts the lifetime of a pod. NFS volumes do not support ownership management or SELinux relabeling.", "server": "Server is the hostname or IP address of the NFS server. More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs", @@ -807,9 +817,9 @@ func (NFSVolumeSource) SwaggerDoc() map[string]string { var map_Namespace = map[string]string{ "": "Namespace provides a scope for Names. Use of multiple namespaces is optional.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "spec": "Spec defines the behavior of the Namespace. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", - "status": "Status describes the current status of a Namespace. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "Spec defines the behavior of the Namespace. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", + "status": "Status describes the current status of a Namespace. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (Namespace) SwaggerDoc() map[string]string { @@ -818,7 +828,7 @@ func (Namespace) SwaggerDoc() map[string]string { var map_NamespaceList = map[string]string{ "": "NamespaceList is a list of Namespaces.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", "items": "Items is the list of Namespace objects in the list. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", } @@ -828,7 +838,7 @@ func (NamespaceList) SwaggerDoc() map[string]string { var map_NamespaceSpec = map[string]string{ "": "NamespaceSpec describes the attributes on a Namespace.", - "finalizers": "Finalizers is an opaque list of values that must be empty to permanently remove object from storage. More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/namespaces.md#finalizers", + "finalizers": "Finalizers is an opaque list of values that must be empty to permanently remove object from storage. More info: https://git.k8s.io/community/contributors/design-proposals/namespaces.md#finalizers", } func (NamespaceSpec) SwaggerDoc() map[string]string { @@ -837,7 +847,7 @@ func (NamespaceSpec) SwaggerDoc() map[string]string { var map_NamespaceStatus = map[string]string{ "": "NamespaceStatus is information about the current status of a Namespace.", - "phase": "Phase is the current lifecycle phase of the namespace. More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/namespaces.md#phases", + "phase": "Phase is the current lifecycle phase of the namespace. More info: https://git.k8s.io/community/contributors/design-proposals/namespaces.md#phases", } func (NamespaceStatus) SwaggerDoc() map[string]string { @@ -846,9 +856,9 @@ func (NamespaceStatus) SwaggerDoc() map[string]string { var map_Node = map[string]string{ "": "Node is a worker node in Kubernetes. Each node will have a unique identifier in the cache (i.e. in etcd).", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "spec": "Spec defines the behavior of a node. https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", - "status": "Most recently observed status of the node. Populated by the system. Read-only. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "Spec defines the behavior of a node. https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", + "status": "Most recently observed status of the node. Populated by the system. Read-only. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (Node) SwaggerDoc() map[string]string { @@ -900,7 +910,7 @@ func (NodeDaemonEndpoints) SwaggerDoc() map[string]string { var map_NodeList = map[string]string{ "": "NodeList is the whole list of all Nodes which have been registered with master.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", "items": "List of nodes", } @@ -988,8 +998,8 @@ func (NodeStatus) SwaggerDoc() map[string]string { var map_NodeSystemInfo = map[string]string{ "": "NodeSystemInfo is a set of ids/uuids to uniquely identify the node.", - "machineID": "MachineID reported by the node. For unique machine identification in the cluster this field is prefered. Learn more from man(5) machine-id: http://man7.org/linux/man-pages/man5/machine-id.5.html", - "systemUUID": "SystemUUID reported by the node. For unique machine identification MachineID is prefered. This field is specific to Red Hat hosts https://access.redhat.com/documentation/en-US/Red_Hat_Subscription_Management/1/html/RHSM/getting-system-uuid.html", + "machineID": "MachineID reported by the node. For unique machine identification in the cluster this field is preferred. Learn more from man(5) machine-id: http://man7.org/linux/man-pages/man5/machine-id.5.html", + "systemUUID": "SystemUUID reported by the node. For unique machine identification MachineID is preferred. This field is specific to Red Hat hosts https://access.redhat.com/documentation/en-US/Red_Hat_Subscription_Management/1/html/RHSM/getting-system-uuid.html", "bootID": "Boot ID reported by the node.", "kernelVersion": "Kernel Version reported by the node from 'uname -r' (e.g. 3.16.0-0.bpo.4-amd64).", "osImage": "OS Image reported by the node from /etc/os-release (e.g. Debian GNU/Linux 7 (wheezy)).", @@ -1017,14 +1027,14 @@ func (ObjectFieldSelector) SwaggerDoc() map[string]string { var map_ObjectMeta = map[string]string{ "": "ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. DEPRECATED: Use k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta instead - this type will be removed soon.", "name": "Name must be unique within a namespace. Is required when creating resources, although some resources may allow a client to request the generation of an appropriate name automatically. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", - "generateName": "GenerateName is an optional prefix, used by the server, to generate a unique name ONLY IF the Name field has not been provided. If this field is used, the name returned to the client will be different than the name passed. This value will also be combined with a unique suffix. The provided value has the same validation rules as the Name field, and may be truncated by the length of the suffix required to make the value unique on the server.\n\nIf this field is specified and the generated name exists, the server will NOT return a 409 - instead, it will either return 201 Created or 500 with Reason ServerTimeout indicating a unique name could not be found in the time allotted, and the client should retry (optionally after the time indicated in the Retry-After header).\n\nApplied only if Name is not specified. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#idempotency", + "generateName": "GenerateName is an optional prefix, used by the server, to generate a unique name ONLY IF the Name field has not been provided. If this field is used, the name returned to the client will be different than the name passed. This value will also be combined with a unique suffix. The provided value has the same validation rules as the Name field, and may be truncated by the length of the suffix required to make the value unique on the server.\n\nIf this field is specified and the generated name exists, the server will NOT return a 409 - instead, it will either return 201 Created or 500 with Reason ServerTimeout indicating a unique name could not be found in the time allotted, and the client should retry (optionally after the time indicated in the Retry-After header).\n\nApplied only if Name is not specified. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency", "namespace": "Namespace defines the space within each name must be unique. An empty namespace is equivalent to the \"default\" namespace, but \"default\" is the canonical representation. Not all objects are required to be scoped to a namespace - the value of this field for those objects will be empty.\n\nMust be a DNS_LABEL. Cannot be updated. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", "selfLink": "SelfLink is a URL representing this object. Populated by the system. Read-only.", "uid": "UID is the unique in time and space value for this object. It is typically generated by the server on successful creation of a resource and is not allowed to change on PUT operations.\n\nPopulated by the system. Read-only. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids", - "resourceVersion": "An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. Clients must treat these values as opaque and passed unmodified back to the server. They may only be valid for a particular resource or set of resources.\n\nPopulated by the system. Read-only. Value must be treated as opaque by clients and . More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#concurrency-control-and-consistency", + "resourceVersion": "An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. Clients must treat these values as opaque and passed unmodified back to the server. They may only be valid for a particular resource or set of resources.\n\nPopulated by the system. Read-only. Value must be treated as opaque by clients and . More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency", "generation": "A sequence number representing a specific generation of the desired state. Populated by the system. Read-only.", - "creationTimestamp": "CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.\n\nPopulated by the system. Read-only. Null for lists. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "deletionTimestamp": "DeletionTimestamp is RFC 3339 date and time at which this resource will be deleted. This field is set by the server when a graceful deletion is requested by the user, and is not directly settable by a client. The resource is expected to be deleted (no longer visible from resource lists, and not reachable by name) after the time in this field. Once set, this value may not be unset or be set further into the future, although it may be shortened or the resource may be deleted prior to this time. For example, a user may request that a pod is deleted in 30 seconds. The Kubelet will react by sending a graceful termination signal to the containers in the pod. After that 30 seconds, the Kubelet will send a hard termination signal (SIGKILL) to the container and after cleanup, remove the pod from the API. In the presence of network partitions, this object may still exist after this timestamp, until an administrator or automated process can determine the resource is fully terminated. If not set, graceful deletion of the object has not been requested.\n\nPopulated by the system when a graceful deletion is requested. Read-only. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "creationTimestamp": "CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.\n\nPopulated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "deletionTimestamp": "DeletionTimestamp is RFC 3339 date and time at which this resource will be deleted. This field is set by the server when a graceful deletion is requested by the user, and is not directly settable by a client. The resource is expected to be deleted (no longer visible from resource lists, and not reachable by name) after the time in this field. Once set, this value may not be unset or be set further into the future, although it may be shortened or the resource may be deleted prior to this time. For example, a user may request that a pod is deleted in 30 seconds. The Kubelet will react by sending a graceful termination signal to the containers in the pod. After that 30 seconds, the Kubelet will send a hard termination signal (SIGKILL) to the container and after cleanup, remove the pod from the API. In the presence of network partitions, this object may still exist after this timestamp, until an administrator or automated process can determine the resource is fully terminated. If not set, graceful deletion of the object has not been requested.\n\nPopulated by the system when a graceful deletion is requested. Read-only. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "deletionGracePeriodSeconds": "Number of seconds allowed for this object to gracefully terminate before it will be removed from the system. Only set when deletionTimestamp is also set. May only be shortened. Read-only.", "labels": "Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/", "annotations": "Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/", @@ -1040,12 +1050,12 @@ func (ObjectMeta) SwaggerDoc() map[string]string { var map_ObjectReference = map[string]string{ "": "ObjectReference contains enough information to let you inspect or modify the referred object.", - "kind": "Kind of the referent. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", + "kind": "Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", "namespace": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", "name": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", "uid": "UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids", "apiVersion": "API version of the referent.", - "resourceVersion": "Specific resourceVersion to which this reference is made, if any. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#concurrency-control-and-consistency", + "resourceVersion": "Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency", "fieldPath": "If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: \"spec.containers{name}\" (where \"name\" refers to the name of the container that triggered the event) or if no container name is specified \"spec.containers[2]\" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object.", } @@ -1055,7 +1065,7 @@ func (ObjectReference) SwaggerDoc() map[string]string { var map_PersistentVolume = map[string]string{ "": "PersistentVolume (PV) is a storage resource provisioned by an administrator. It is analogous to a node. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "spec": "Spec defines a specification of a persistent volume owned by the cluster. Provisioned by an administrator. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistent-volumes", "status": "Status represents the current information/status for the persistent volume. Populated by the system. Read-only. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistent-volumes", } @@ -1066,7 +1076,7 @@ func (PersistentVolume) SwaggerDoc() map[string]string { var map_PersistentVolumeClaim = map[string]string{ "": "PersistentVolumeClaim is a user's request for and claim to a persistent volume", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "spec": "Spec defines the desired characteristics of a volume requested by a pod author. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims", "status": "Status represents the current information/status of a persistent volume claim. Read-only. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims", } @@ -1077,7 +1087,7 @@ func (PersistentVolumeClaim) SwaggerDoc() map[string]string { var map_PersistentVolumeClaimList = map[string]string{ "": "PersistentVolumeClaimList is a list of PersistentVolumeClaim items.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", "items": "A list of persistent volume claims. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims", } @@ -1121,7 +1131,7 @@ func (PersistentVolumeClaimVolumeSource) SwaggerDoc() map[string]string { var map_PersistentVolumeList = map[string]string{ "": "PersistentVolumeList is a list of PersistentVolume items.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", "items": "List of persistent volumes. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes", } @@ -1150,6 +1160,8 @@ var map_PersistentVolumeSource = map[string]string{ "photonPersistentDisk": "PhotonPersistentDisk represents a PhotonController persistent disk attached and mounted on kubelets host machine", "portworxVolume": "PortworxVolume represents a portworx volume attached and mounted on kubelets host machine", "scaleIO": "ScaleIO represents a ScaleIO persistent volume attached and mounted on Kubernetes nodes.", + "local": "Local represents directly-attached storage with node affinity", + "storageos": "StorageOS represents a StorageOS volume that is attached to the kubelet's host machine and mounted into the pod More info: https://releases.k8s.io/HEAD/examples/volumes/storageos/README.md", } func (PersistentVolumeSource) SwaggerDoc() map[string]string { @@ -1192,9 +1204,9 @@ func (PhotonPersistentDiskVolumeSource) SwaggerDoc() map[string]string { var map_Pod = map[string]string{ "": "Pod is a collection of containers that can run on a host. This resource is created by clients and scheduled onto hosts.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "spec": "Specification of the desired behavior of the pod. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", - "status": "Most recently observed status of the pod. This data may not be up to date. Populated by the system. Read-only. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "Specification of the desired behavior of the pod. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", + "status": "Most recently observed status of the pod. This data may not be up to date. Populated by the system. Read-only. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (Pod) SwaggerDoc() map[string]string { @@ -1275,8 +1287,8 @@ func (PodExecOptions) SwaggerDoc() map[string]string { var map_PodList = map[string]string{ "": "PodList is a list of Pods.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", - "items": "List of pods. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", + "items": "List of pods. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md", } func (PodList) SwaggerDoc() map[string]string { @@ -1390,8 +1402,8 @@ func (PodStatus) SwaggerDoc() map[string]string { var map_PodStatusResult = map[string]string{ "": "PodStatusResult is a wrapper for PodStatus returned by kubelet that can be encode/decoded", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "status": "Most recently observed status of the pod. This data may not be up to date. Populated by the system. Read-only. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "status": "Most recently observed status of the pod. This data may not be up to date. Populated by the system. Read-only. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (PodStatusResult) SwaggerDoc() map[string]string { @@ -1400,8 +1412,8 @@ func (PodStatusResult) SwaggerDoc() map[string]string { var map_PodTemplate = map[string]string{ "": "PodTemplate describes a template for creating copies of a predefined pod.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "template": "Template defines the pods that will be created from this pod template. https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "template": "Template defines the pods that will be created from this pod template. https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (PodTemplate) SwaggerDoc() map[string]string { @@ -1410,7 +1422,7 @@ func (PodTemplate) SwaggerDoc() map[string]string { var map_PodTemplateList = map[string]string{ "": "PodTemplateList is a list of PodTemplates.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", "items": "List of pod templates", } @@ -1420,8 +1432,8 @@ func (PodTemplateList) SwaggerDoc() map[string]string { var map_PodTemplateSpec = map[string]string{ "": "PodTemplateSpec describes the data a pod should have when created from a template", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "spec": "Specification of the desired behavior of the pod. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "Specification of the desired behavior of the pod. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (PodTemplateSpec) SwaggerDoc() map[string]string { @@ -1524,7 +1536,7 @@ func (RBDVolumeSource) SwaggerDoc() map[string]string { var map_RangeAllocation = map[string]string{ "": "RangeAllocation is not a public type.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "range": "Range is string that identifies the range represented by 'data'.", "data": "Data is a bit array containing all allocated addresses in the previous segment.", } @@ -1535,9 +1547,9 @@ func (RangeAllocation) SwaggerDoc() map[string]string { var map_ReplicationController = map[string]string{ "": "ReplicationController represents the configuration of a replication controller.", - "metadata": "If the Labels of a ReplicationController are empty, they are defaulted to be the same as the Pod(s) that the replication controller manages. Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "spec": "Spec defines the specification of the desired behavior of the replication controller. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", - "status": "Status is the most recently observed status of the replication controller. This data may be out of date by some window of time. Populated by the system. Read-only. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", + "metadata": "If the Labels of a ReplicationController are empty, they are defaulted to be the same as the Pod(s) that the replication controller manages. Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "Spec defines the specification of the desired behavior of the replication controller. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", + "status": "Status is the most recently observed status of the replication controller. This data may be out of date by some window of time. Populated by the system. Read-only. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (ReplicationController) SwaggerDoc() map[string]string { @@ -1559,7 +1571,7 @@ func (ReplicationControllerCondition) SwaggerDoc() map[string]string { var map_ReplicationControllerList = map[string]string{ "": "ReplicationControllerList is a collection of replication controllers.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", "items": "List of replication controllers. More info: https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller", } @@ -1606,9 +1618,9 @@ func (ResourceFieldSelector) SwaggerDoc() map[string]string { var map_ResourceQuota = map[string]string{ "": "ResourceQuota sets aggregate quota restrictions enforced per namespace", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "spec": "Spec defines the desired quota. https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", - "status": "Status defines the actual enforced quota and its current usage. https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "Spec defines the desired quota. https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", + "status": "Status defines the actual enforced quota and its current usage. https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (ResourceQuota) SwaggerDoc() map[string]string { @@ -1617,8 +1629,8 @@ func (ResourceQuota) SwaggerDoc() map[string]string { var map_ResourceQuotaList = map[string]string{ "": "ResourceQuotaList is a list of ResourceQuota items.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", - "items": "Items is a list of ResourceQuota objects. More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/admission_control_resource_quota.md", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", + "items": "Items is a list of ResourceQuota objects. More info: https://git.k8s.io/community/contributors/design-proposals/admission_control_resource_quota.md", } func (ResourceQuotaList) SwaggerDoc() map[string]string { @@ -1627,7 +1639,7 @@ func (ResourceQuotaList) SwaggerDoc() map[string]string { var map_ResourceQuotaSpec = map[string]string{ "": "ResourceQuotaSpec defines the desired hard limits to enforce for Quota.", - "hard": "Hard is the set of desired hard limits for each named resource. More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/admission_control_resource_quota.md", + "hard": "Hard is the set of desired hard limits for each named resource. More info: https://git.k8s.io/community/contributors/design-proposals/admission_control_resource_quota.md", "scopes": "A collection of filters that must match each object tracked by a quota. If not specified, the quota matches all objects.", } @@ -1637,7 +1649,7 @@ func (ResourceQuotaSpec) SwaggerDoc() map[string]string { var map_ResourceQuotaStatus = map[string]string{ "": "ResourceQuotaStatus defines the enforced hard limits and observed use.", - "hard": "Hard is the set of enforced hard limits for each named resource. More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/admission_control_resource_quota.md", + "hard": "Hard is the set of enforced hard limits for each named resource. More info: https://git.k8s.io/community/contributors/design-proposals/admission_control_resource_quota.md", "used": "Used is the current observed total usage of the resource in the namespace.", } @@ -1687,7 +1699,7 @@ func (ScaleIOVolumeSource) SwaggerDoc() map[string]string { var map_Secret = map[string]string{ "": "Secret holds secret data of a certain type. The total bytes of the values in the Data field must be less than MaxSecretSize bytes.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "data": "Data contains the secret data. Each key must consist of alphanumeric characters, '-', '_' or '.'. The serialized form of the secret data is a base64 encoded string, representing the arbitrary (possibly non-string) data value here. Described in https://tools.ietf.org/html/rfc4648#section-4", "stringData": "stringData allows specifying non-binary secret data in string form. It is provided as a write-only convenience method. All keys and values are merged into the data field on write, overwriting any existing values. It is never output when reading from the API.", "type": "Used to facilitate programmatic handling of secret data.", @@ -1718,7 +1730,7 @@ func (SecretKeySelector) SwaggerDoc() map[string]string { var map_SecretList = map[string]string{ "": "SecretList is a list of Secret.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", "items": "Items is a list of secret objects. More info: https://kubernetes.io/docs/concepts/configuration/secret", } @@ -1773,9 +1785,9 @@ func (SerializedReference) SwaggerDoc() map[string]string { var map_Service = map[string]string{ "": "Service is a named abstraction of software service (for example, mysql) consisting of local port (for example 3306) that the proxy listens on, and the selector that determines which pods will answer requests sent through the proxy.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "spec": "Spec defines the behavior of a service. https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", - "status": "Most recently observed status of the service. Populated by the system. Read-only. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "Spec defines the behavior of a service. https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", + "status": "Most recently observed status of the service. Populated by the system. Read-only. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (Service) SwaggerDoc() map[string]string { @@ -1784,7 +1796,7 @@ func (Service) SwaggerDoc() map[string]string { var map_ServiceAccount = map[string]string{ "": "ServiceAccount binds together: * a name, understood by users, and perhaps by peripheral systems, for an identity * a principal that can be authenticated and authorized * a set of secrets", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "secrets": "Secrets is the list of secrets allowed to be used by pods running using this ServiceAccount. More info: https://kubernetes.io/docs/concepts/configuration/secret", "imagePullSecrets": "ImagePullSecrets is a list of references to secrets in the same namespace to use for pulling any images in pods that reference this ServiceAccount. ImagePullSecrets are distinct from Secrets because Secrets can be mounted in the pod, but ImagePullSecrets are only accessed by the kubelet. More info: https://kubernetes.io/docs/concepts/containers/images/#specifying-imagepullsecrets-on-a-pod", "automountServiceAccountToken": "AutomountServiceAccountToken indicates whether pods running as this service account should have an API token automatically mounted. Can be overridden at the pod level.", @@ -1796,7 +1808,7 @@ func (ServiceAccount) SwaggerDoc() map[string]string { var map_ServiceAccountList = map[string]string{ "": "ServiceAccountList is a list of ServiceAccount objects", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", "items": "List of ServiceAccounts. More info: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/", } @@ -1806,7 +1818,7 @@ func (ServiceAccountList) SwaggerDoc() map[string]string { var map_ServiceList = map[string]string{ "": "ServiceList holds a list of services.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", "items": "List of services", } @@ -1847,7 +1859,7 @@ var map_ServiceSpec = map[string]string{ "loadBalancerIP": "Only applies to Service Type: LoadBalancer LoadBalancer will get created with the IP specified in this field. This feature depends on whether the underlying cloud-provider supports specifying the loadBalancerIP when a load balancer is created. This field will be ignored if the cloud-provider does not support the feature.", "loadBalancerSourceRanges": "If specified and supported by the platform, this will restrict traffic through the cloud-provider load-balancer will be restricted to the specified client IPs. This field will be ignored if the cloud-provider does not support the feature.\" More info: https://kubernetes.io/docs/tasks/access-application-cluster/configure-cloud-provider-firewall/", "externalName": "externalName is the external reference that kubedns or equivalent will return as a CNAME record for this service. No proxying will be involved. Must be a valid DNS name and requires Type to be ExternalName.", - "externalTrafficPolicy": "externalTrafficPolicy denotes if this Service desires to route external traffic to local endpoints only. This preserves Source IP and avoids a second hop for LoadBalancer and Nodeport type services.", + "externalTrafficPolicy": "externalTrafficPolicy denotes if this Service desires to route external traffic to node-local or cluster-wide endpoints. \"Local\" preserves the client source IP and avoids a second hop for LoadBalancer and Nodeport type services, but risks potentially imbalanced traffic spreading. \"Cluster\" obscures the client source IP and may cause a second hop to another node, but should have good overall load-spreading.", "healthCheckNodePort": "healthCheckNodePort specifies the healthcheck nodePort for the service. If not specified, HealthCheckNodePort is created by the service api backend with the allocated nodePort. Will use user-specified nodePort value if specified by the client. Only effects when Type is set to LoadBalancer and ExternalTrafficPolicy is set to Local.", } @@ -1864,6 +1876,32 @@ func (ServiceStatus) SwaggerDoc() map[string]string { return map_ServiceStatus } +var map_StorageOSPersistentVolumeSource = map[string]string{ + "": "Represents a StorageOS persistent volume resource.", + "volumeName": "VolumeName is the human-readable name of the StorageOS volume. Volume names are only unique within a namespace.", + "volumeNamespace": "VolumeNamespace specifies the scope of the volume within StorageOS. If no namespace is specified then the Pod's namespace will be used. This allows the Kubernetes name scoping to be mirrored within StorageOS for tighter integration. Set VolumeName to any name to override the default behaviour. Set to \"default\" if you are not using namespaces within StorageOS. Namespaces that do not pre-exist within StorageOS will be created.", + "fsType": "Filesystem type to mount. Must be a filesystem type supported by the host operating system. Ex. \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified.", + "readOnly": "Defaults to false (read/write). ReadOnly here will force the ReadOnly setting in VolumeMounts.", + "secretRef": "SecretRef specifies the secret to use for obtaining the StorageOS API credentials. If not specified, default values will be attempted.", +} + +func (StorageOSPersistentVolumeSource) SwaggerDoc() map[string]string { + return map_StorageOSPersistentVolumeSource +} + +var map_StorageOSVolumeSource = map[string]string{ + "": "Represents a StorageOS persistent volume resource.", + "volumeName": "VolumeName is the human-readable name of the StorageOS volume. Volume names are only unique within a namespace.", + "volumeNamespace": "VolumeNamespace specifies the scope of the volume within StorageOS. If no namespace is specified then the Pod's namespace will be used. This allows the Kubernetes name scoping to be mirrored within StorageOS for tighter integration. Set VolumeName to any name to override the default behaviour. Set to \"default\" if you are not using namespaces within StorageOS. Namespaces that do not pre-exist within StorageOS will be created.", + "fsType": "Filesystem type to mount. Must be a filesystem type supported by the host operating system. Ex. \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified.", + "readOnly": "Defaults to false (read/write). ReadOnly here will force the ReadOnly setting in VolumeMounts.", + "secretRef": "SecretRef specifies the secret to use for obtaining the StorageOS API credentials. If not specified, default values will be attempted.", +} + +func (StorageOSVolumeSource) SwaggerDoc() map[string]string { + return map_StorageOSVolumeSource +} + var map_Sysctl = map[string]string{ "": "Sysctl defines a kernel parameter to be set", "Name": "Name of a property to set", @@ -1969,6 +2007,7 @@ var map_VolumeSource = map[string]string{ "projected": "Items for all in one resources secrets, configmaps, and downward API", "portworxVolume": "PortworxVolume represents a portworx volume attached and mounted on kubelets host machine", "scaleIO": "ScaleIO represents a ScaleIO persistent volume attached and mounted on Kubernetes nodes.", + "storageos": "StorageOS represents a StorageOS volume attached and mounted on Kubernetes nodes.", } func (VolumeSource) SwaggerDoc() map[string]string { @@ -1976,9 +2015,11 @@ func (VolumeSource) SwaggerDoc() map[string]string { } var map_VsphereVirtualDiskVolumeSource = map[string]string{ - "": "Represents a vSphere volume resource.", - "volumePath": "Path that identifies vSphere volume vmdk", - "fsType": "Filesystem type to mount. Must be a filesystem type supported by the host operating system. Ex. \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified.", + "": "Represents a vSphere volume resource.", + "volumePath": "Path that identifies vSphere volume vmdk", + "fsType": "Filesystem type to mount. Must be a filesystem type supported by the host operating system. Ex. \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified.", + "storagePolicyName": "Storage Policy Based Management (SPBM) profile name.", + "storagePolicyID": "Storage Policy Based Management (SPBM) profile ID associated with the StoragePolicyName.", } func (VsphereVirtualDiskVolumeSource) SwaggerDoc() map[string]string { diff --git a/vendor/k8s.io/kubernetes/pkg/api/v1/zz_generated.conversion.go b/vendor/k8s.io/kubernetes/pkg/api/v1/zz_generated.conversion.go index 258068bf..c4083424 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/v1/zz_generated.conversion.go +++ b/vendor/k8s.io/kubernetes/pkg/api/v1/zz_generated.conversion.go @@ -173,6 +173,8 @@ func RegisterConversions(scheme *runtime.Scheme) error { Convert_api_LoadBalancerStatus_To_v1_LoadBalancerStatus, Convert_v1_LocalObjectReference_To_api_LocalObjectReference, Convert_api_LocalObjectReference_To_v1_LocalObjectReference, + Convert_v1_LocalVolumeSource_To_api_LocalVolumeSource, + Convert_api_LocalVolumeSource_To_v1_LocalVolumeSource, Convert_v1_NFSVolumeSource_To_api_NFSVolumeSource, Convert_api_NFSVolumeSource_To_v1_NFSVolumeSource, Convert_v1_Namespace_To_api_Namespace, @@ -353,6 +355,10 @@ func RegisterConversions(scheme *runtime.Scheme) error { Convert_api_ServiceSpec_To_v1_ServiceSpec, Convert_v1_ServiceStatus_To_api_ServiceStatus, Convert_api_ServiceStatus_To_v1_ServiceStatus, + Convert_v1_StorageOSPersistentVolumeSource_To_api_StorageOSPersistentVolumeSource, + Convert_api_StorageOSPersistentVolumeSource_To_v1_StorageOSPersistentVolumeSource, + Convert_v1_StorageOSVolumeSource_To_api_StorageOSVolumeSource, + Convert_api_StorageOSVolumeSource_To_v1_StorageOSVolumeSource, Convert_v1_Sysctl_To_api_Sysctl, Convert_api_Sysctl_To_v1_Sysctl, Convert_v1_TCPSocketAction_To_api_TCPSocketAction, @@ -1234,6 +1240,7 @@ func Convert_api_DownwardAPIVolumeSource_To_v1_DownwardAPIVolumeSource(in *api.D func autoConvert_v1_EmptyDirVolumeSource_To_api_EmptyDirVolumeSource(in *EmptyDirVolumeSource, out *api.EmptyDirVolumeSource, s conversion.Scope) error { out.Medium = api.StorageMedium(in.Medium) + out.SizeLimit = in.SizeLimit return nil } @@ -1244,6 +1251,7 @@ func Convert_v1_EmptyDirVolumeSource_To_api_EmptyDirVolumeSource(in *EmptyDirVol func autoConvert_api_EmptyDirVolumeSource_To_v1_EmptyDirVolumeSource(in *api.EmptyDirVolumeSource, out *EmptyDirVolumeSource, s conversion.Scope) error { out.Medium = StorageMedium(in.Medium) + out.SizeLimit = in.SizeLimit return nil } @@ -2166,6 +2174,26 @@ func Convert_api_LocalObjectReference_To_v1_LocalObjectReference(in *api.LocalOb return autoConvert_api_LocalObjectReference_To_v1_LocalObjectReference(in, out, s) } +func autoConvert_v1_LocalVolumeSource_To_api_LocalVolumeSource(in *LocalVolumeSource, out *api.LocalVolumeSource, s conversion.Scope) error { + out.Path = in.Path + return nil +} + +// Convert_v1_LocalVolumeSource_To_api_LocalVolumeSource is an autogenerated conversion function. +func Convert_v1_LocalVolumeSource_To_api_LocalVolumeSource(in *LocalVolumeSource, out *api.LocalVolumeSource, s conversion.Scope) error { + return autoConvert_v1_LocalVolumeSource_To_api_LocalVolumeSource(in, out, s) +} + +func autoConvert_api_LocalVolumeSource_To_v1_LocalVolumeSource(in *api.LocalVolumeSource, out *LocalVolumeSource, s conversion.Scope) error { + out.Path = in.Path + return nil +} + +// Convert_api_LocalVolumeSource_To_v1_LocalVolumeSource is an autogenerated conversion function. +func Convert_api_LocalVolumeSource_To_v1_LocalVolumeSource(in *api.LocalVolumeSource, out *LocalVolumeSource, s conversion.Scope) error { + return autoConvert_api_LocalVolumeSource_To_v1_LocalVolumeSource(in, out, s) +} + func autoConvert_v1_NFSVolumeSource_To_api_NFSVolumeSource(in *NFSVolumeSource, out *api.NFSVolumeSource, s conversion.Scope) error { out.Server = in.Server out.Path = in.Path @@ -3002,6 +3030,8 @@ func autoConvert_v1_PersistentVolumeSource_To_api_PersistentVolumeSource(in *Per out.PhotonPersistentDisk = (*api.PhotonPersistentDiskVolumeSource)(unsafe.Pointer(in.PhotonPersistentDisk)) out.PortworxVolume = (*api.PortworxVolumeSource)(unsafe.Pointer(in.PortworxVolume)) out.ScaleIO = (*api.ScaleIOVolumeSource)(unsafe.Pointer(in.ScaleIO)) + out.Local = (*api.LocalVolumeSource)(unsafe.Pointer(in.Local)) + out.StorageOS = (*api.StorageOSPersistentVolumeSource)(unsafe.Pointer(in.StorageOS)) return nil } @@ -3030,6 +3060,8 @@ func autoConvert_api_PersistentVolumeSource_To_v1_PersistentVolumeSource(in *api out.PhotonPersistentDisk = (*PhotonPersistentDiskVolumeSource)(unsafe.Pointer(in.PhotonPersistentDisk)) out.PortworxVolume = (*PortworxVolumeSource)(unsafe.Pointer(in.PortworxVolume)) out.ScaleIO = (*ScaleIOVolumeSource)(unsafe.Pointer(in.ScaleIO)) + out.Local = (*LocalVolumeSource)(unsafe.Pointer(in.Local)) + out.StorageOS = (*StorageOSPersistentVolumeSource)(unsafe.Pointer(in.StorageOS)) return nil } @@ -4781,6 +4813,62 @@ func Convert_api_ServiceStatus_To_v1_ServiceStatus(in *api.ServiceStatus, out *S return autoConvert_api_ServiceStatus_To_v1_ServiceStatus(in, out, s) } +func autoConvert_v1_StorageOSPersistentVolumeSource_To_api_StorageOSPersistentVolumeSource(in *StorageOSPersistentVolumeSource, out *api.StorageOSPersistentVolumeSource, s conversion.Scope) error { + out.VolumeName = in.VolumeName + out.VolumeNamespace = in.VolumeNamespace + out.FSType = in.FSType + out.ReadOnly = in.ReadOnly + out.SecretRef = (*api.ObjectReference)(unsafe.Pointer(in.SecretRef)) + return nil +} + +// Convert_v1_StorageOSPersistentVolumeSource_To_api_StorageOSPersistentVolumeSource is an autogenerated conversion function. +func Convert_v1_StorageOSPersistentVolumeSource_To_api_StorageOSPersistentVolumeSource(in *StorageOSPersistentVolumeSource, out *api.StorageOSPersistentVolumeSource, s conversion.Scope) error { + return autoConvert_v1_StorageOSPersistentVolumeSource_To_api_StorageOSPersistentVolumeSource(in, out, s) +} + +func autoConvert_api_StorageOSPersistentVolumeSource_To_v1_StorageOSPersistentVolumeSource(in *api.StorageOSPersistentVolumeSource, out *StorageOSPersistentVolumeSource, s conversion.Scope) error { + out.VolumeName = in.VolumeName + out.VolumeNamespace = in.VolumeNamespace + out.FSType = in.FSType + out.ReadOnly = in.ReadOnly + out.SecretRef = (*ObjectReference)(unsafe.Pointer(in.SecretRef)) + return nil +} + +// Convert_api_StorageOSPersistentVolumeSource_To_v1_StorageOSPersistentVolumeSource is an autogenerated conversion function. +func Convert_api_StorageOSPersistentVolumeSource_To_v1_StorageOSPersistentVolumeSource(in *api.StorageOSPersistentVolumeSource, out *StorageOSPersistentVolumeSource, s conversion.Scope) error { + return autoConvert_api_StorageOSPersistentVolumeSource_To_v1_StorageOSPersistentVolumeSource(in, out, s) +} + +func autoConvert_v1_StorageOSVolumeSource_To_api_StorageOSVolumeSource(in *StorageOSVolumeSource, out *api.StorageOSVolumeSource, s conversion.Scope) error { + out.VolumeName = in.VolumeName + out.VolumeNamespace = in.VolumeNamespace + out.FSType = in.FSType + out.ReadOnly = in.ReadOnly + out.SecretRef = (*api.LocalObjectReference)(unsafe.Pointer(in.SecretRef)) + return nil +} + +// Convert_v1_StorageOSVolumeSource_To_api_StorageOSVolumeSource is an autogenerated conversion function. +func Convert_v1_StorageOSVolumeSource_To_api_StorageOSVolumeSource(in *StorageOSVolumeSource, out *api.StorageOSVolumeSource, s conversion.Scope) error { + return autoConvert_v1_StorageOSVolumeSource_To_api_StorageOSVolumeSource(in, out, s) +} + +func autoConvert_api_StorageOSVolumeSource_To_v1_StorageOSVolumeSource(in *api.StorageOSVolumeSource, out *StorageOSVolumeSource, s conversion.Scope) error { + out.VolumeName = in.VolumeName + out.VolumeNamespace = in.VolumeNamespace + out.FSType = in.FSType + out.ReadOnly = in.ReadOnly + out.SecretRef = (*LocalObjectReference)(unsafe.Pointer(in.SecretRef)) + return nil +} + +// Convert_api_StorageOSVolumeSource_To_v1_StorageOSVolumeSource is an autogenerated conversion function. +func Convert_api_StorageOSVolumeSource_To_v1_StorageOSVolumeSource(in *api.StorageOSVolumeSource, out *StorageOSVolumeSource, s conversion.Scope) error { + return autoConvert_api_StorageOSVolumeSource_To_v1_StorageOSVolumeSource(in, out, s) +} + func autoConvert_v1_Sysctl_To_api_Sysctl(in *Sysctl, out *api.Sysctl, s conversion.Scope) error { out.Name = in.Name out.Value = in.Value @@ -4982,6 +5070,7 @@ func autoConvert_v1_VolumeSource_To_api_VolumeSource(in *VolumeSource, out *api. out.Projected = (*api.ProjectedVolumeSource)(unsafe.Pointer(in.Projected)) out.PortworxVolume = (*api.PortworxVolumeSource)(unsafe.Pointer(in.PortworxVolume)) out.ScaleIO = (*api.ScaleIOVolumeSource)(unsafe.Pointer(in.ScaleIO)) + out.StorageOS = (*api.StorageOSVolumeSource)(unsafe.Pointer(in.StorageOS)) return nil } @@ -5017,6 +5106,7 @@ func autoConvert_api_VolumeSource_To_v1_VolumeSource(in *api.VolumeSource, out * out.Projected = (*ProjectedVolumeSource)(unsafe.Pointer(in.Projected)) out.PortworxVolume = (*PortworxVolumeSource)(unsafe.Pointer(in.PortworxVolume)) out.ScaleIO = (*ScaleIOVolumeSource)(unsafe.Pointer(in.ScaleIO)) + out.StorageOS = (*StorageOSVolumeSource)(unsafe.Pointer(in.StorageOS)) return nil } @@ -5028,6 +5118,8 @@ func Convert_api_VolumeSource_To_v1_VolumeSource(in *api.VolumeSource, out *Volu func autoConvert_v1_VsphereVirtualDiskVolumeSource_To_api_VsphereVirtualDiskVolumeSource(in *VsphereVirtualDiskVolumeSource, out *api.VsphereVirtualDiskVolumeSource, s conversion.Scope) error { out.VolumePath = in.VolumePath out.FSType = in.FSType + out.StoragePolicyName = in.StoragePolicyName + out.StoragePolicyID = in.StoragePolicyID return nil } @@ -5039,6 +5131,8 @@ func Convert_v1_VsphereVirtualDiskVolumeSource_To_api_VsphereVirtualDiskVolumeSo func autoConvert_api_VsphereVirtualDiskVolumeSource_To_v1_VsphereVirtualDiskVolumeSource(in *api.VsphereVirtualDiskVolumeSource, out *VsphereVirtualDiskVolumeSource, s conversion.Scope) error { out.VolumePath = in.VolumePath out.FSType = in.FSType + out.StoragePolicyName = in.StoragePolicyName + out.StoragePolicyID = in.StoragePolicyID return nil } diff --git a/vendor/k8s.io/kubernetes/pkg/api/v1/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/api/v1/zz_generated.deepcopy.go index 08ec5ae8..38ee730e 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/v1/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/api/v1/zz_generated.deepcopy.go @@ -104,6 +104,7 @@ func RegisterDeepCopies(scheme *runtime.Scheme) error { conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_LoadBalancerIngress, InType: reflect.TypeOf(&LoadBalancerIngress{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_LoadBalancerStatus, InType: reflect.TypeOf(&LoadBalancerStatus{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_LocalObjectReference, InType: reflect.TypeOf(&LocalObjectReference{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_LocalVolumeSource, InType: reflect.TypeOf(&LocalVolumeSource{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_NFSVolumeSource, InType: reflect.TypeOf(&NFSVolumeSource{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_Namespace, InType: reflect.TypeOf(&Namespace{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_NamespaceList, InType: reflect.TypeOf(&NamespaceList{})}, @@ -194,6 +195,8 @@ func RegisterDeepCopies(scheme *runtime.Scheme) error { conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ServiceProxyOptions, InType: reflect.TypeOf(&ServiceProxyOptions{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ServiceSpec, InType: reflect.TypeOf(&ServiceSpec{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_ServiceStatus, InType: reflect.TypeOf(&ServiceStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_StorageOSPersistentVolumeSource, InType: reflect.TypeOf(&StorageOSPersistentVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_StorageOSVolumeSource, InType: reflect.TypeOf(&StorageOSVolumeSource{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_Sysctl, InType: reflect.TypeOf(&Sysctl{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_TCPSocketAction, InType: reflect.TypeOf(&TCPSocketAction{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_Taint, InType: reflect.TypeOf(&Taint{})}, @@ -855,6 +858,7 @@ func DeepCopy_v1_EmptyDirVolumeSource(in interface{}, out interface{}, c *conver in := in.(*EmptyDirVolumeSource) out := out.(*EmptyDirVolumeSource) *out = *in + out.SizeLimit = in.SizeLimit.DeepCopy() return nil } } @@ -1495,6 +1499,16 @@ func DeepCopy_v1_LocalObjectReference(in interface{}, out interface{}, c *conver } } +// DeepCopy_v1_LocalVolumeSource is an autogenerated deepcopy function. +func DeepCopy_v1_LocalVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*LocalVolumeSource) + out := out.(*LocalVolumeSource) + *out = *in + return nil + } +} + // DeepCopy_v1_NFSVolumeSource is an autogenerated deepcopy function. func DeepCopy_v1_NFSVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { { @@ -2165,6 +2179,18 @@ func DeepCopy_v1_PersistentVolumeSource(in interface{}, out interface{}, c *conv return err } } + if in.Local != nil { + in, out := &in.Local, &out.Local + *out = new(LocalVolumeSource) + **out = **in + } + if in.StorageOS != nil { + in, out := &in.StorageOS, &out.StorageOS + *out = new(StorageOSPersistentVolumeSource) + if err := DeepCopy_v1_StorageOSPersistentVolumeSource(*in, *out, c); err != nil { + return err + } + } return nil } } @@ -3419,6 +3445,36 @@ func DeepCopy_v1_ServiceStatus(in interface{}, out interface{}, c *conversion.Cl } } +// DeepCopy_v1_StorageOSPersistentVolumeSource is an autogenerated deepcopy function. +func DeepCopy_v1_StorageOSPersistentVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*StorageOSPersistentVolumeSource) + out := out.(*StorageOSPersistentVolumeSource) + *out = *in + if in.SecretRef != nil { + in, out := &in.SecretRef, &out.SecretRef + *out = new(ObjectReference) + **out = **in + } + return nil + } +} + +// DeepCopy_v1_StorageOSVolumeSource is an autogenerated deepcopy function. +func DeepCopy_v1_StorageOSVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*StorageOSVolumeSource) + out := out.(*StorageOSVolumeSource) + *out = *in + if in.SecretRef != nil { + in, out := &in.SecretRef, &out.SecretRef + *out = new(LocalObjectReference) + **out = **in + } + return nil + } +} + // DeepCopy_v1_Sysctl is an autogenerated deepcopy function. func DeepCopy_v1_Sysctl(in interface{}, out interface{}, c *conversion.Cloner) error { { @@ -3533,7 +3589,9 @@ func DeepCopy_v1_VolumeSource(in interface{}, out interface{}, c *conversion.Clo if in.EmptyDir != nil { in, out := &in.EmptyDir, &out.EmptyDir *out = new(EmptyDirVolumeSource) - **out = **in + if err := DeepCopy_v1_EmptyDirVolumeSource(*in, *out, c); err != nil { + return err + } } if in.GCEPersistentDisk != nil { in, out := &in.GCEPersistentDisk, &out.GCEPersistentDisk @@ -3677,6 +3735,13 @@ func DeepCopy_v1_VolumeSource(in interface{}, out interface{}, c *conversion.Clo return err } } + if in.StorageOS != nil { + in, out := &in.StorageOS, &out.StorageOS + *out = new(StorageOSVolumeSource) + if err := DeepCopy_v1_StorageOSVolumeSource(*in, *out, c); err != nil { + return err + } + } return nil } } diff --git a/vendor/k8s.io/kubernetes/pkg/api/validation/validation.go b/vendor/k8s.io/kubernetes/pkg/api/validation/validation.go index 4728b119..5cbabca1 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/validation/validation.go +++ b/vendor/k8s.io/kubernetes/pkg/api/validation/validation.go @@ -20,8 +20,8 @@ import ( "encoding/json" "fmt" "net" - "os" "path" + "path/filepath" "reflect" "regexp" "strconv" @@ -29,6 +29,8 @@ import ( "github.com/golang/glog" + "math" + apiequality "k8s.io/apimachinery/pkg/api/equality" "k8s.io/apimachinery/pkg/api/resource" apimachineryvalidation "k8s.io/apimachinery/pkg/api/validation" @@ -396,7 +398,12 @@ func validateVolumeSource(source *api.VolumeSource, fldPath *field.Path) field.E allErrs := field.ErrorList{} if source.EmptyDir != nil { numVolumes++ - // EmptyDirs have nothing to validate + if !utilfeature.DefaultFeatureGate.Enabled(features.LocalStorageCapacityIsolation) { + unsetSizeLimit := resource.Quantity{} + if unsetSizeLimit.Cmp(source.EmptyDir.SizeLimit) != 0 { + allErrs = append(allErrs, field.Forbidden(fldPath.Child("emptyDir").Child("sizeLimit"), "SizeLimit field disabled by feature-gate for EmptyDir volumes")) + } + } } if source.HostPath != nil { if numVolumes > 0 { @@ -584,6 +591,14 @@ func validateVolumeSource(source *api.VolumeSource, fldPath *field.Path) field.E allErrs = append(allErrs, validateAzureDisk(source.AzureDisk, fldPath.Child("azureDisk"))...) } } + if source.StorageOS != nil { + if numVolumes > 0 { + allErrs = append(allErrs, field.Forbidden(fldPath.Child("storageos"), "may not specify more than 1 volume type")) + } else { + numVolumes++ + allErrs = append(allErrs, validateStorageOSVolumeSource(source.StorageOS, fldPath.Child("storageos"))...) + } + } if source.Projected != nil { if numVolumes > 0 { allErrs = append(allErrs, field.Forbidden(fldPath.Child("projected"), "may not specify more than 1 volume type")) @@ -612,7 +627,10 @@ func validateHostPathVolumeSource(hostPath *api.HostPathVolumeSource, fldPath *f allErrs := field.ErrorList{} if len(hostPath.Path) == 0 { allErrs = append(allErrs, field.Required(fldPath.Child("path"), "")) + return allErrs } + + allErrs = append(allErrs, validatePathNoBacksteps(hostPath.Path, fldPath.Child("path"))...) return allErrs } @@ -943,8 +961,18 @@ func validateLocalDescendingPath(targetPath string, fldPath *field.Path) field.E allErrs = append(allErrs, field.Invalid(fldPath, targetPath, "must be a relative path")) } - // TODO: this assumes the OS of apiserver & nodes are the same - parts := strings.Split(targetPath, string(os.PathSeparator)) + allErrs = append(allErrs, validatePathNoBacksteps(targetPath, fldPath)...) + + return allErrs +} + +// validatePathNoBacksteps makes sure the targetPath does not have any `..` path elements when split +// +// This assumes the OS of the apiserver and the nodes are the same. The same check should be done +// on the node to ensure there are no backsteps. +func validatePathNoBacksteps(targetPath string, fldPath *field.Path) field.ErrorList { + allErrs := field.ErrorList{} + parts := strings.Split(filepath.ToSlash(targetPath), "/") for _, item := range parts { if item == ".." { allErrs = append(allErrs, field.Invalid(fldPath, targetPath, "must not contain '..'")) @@ -1101,6 +1129,53 @@ func validateScaleIOVolumeSource(sio *api.ScaleIOVolumeSource, fldPath *field.Pa return allErrs } +func validateLocalVolumeSource(ls *api.LocalVolumeSource, fldPath *field.Path) field.ErrorList { + allErrs := field.ErrorList{} + if ls.Path == "" { + allErrs = append(allErrs, field.Required(fldPath.Child("path"), "")) + } + return allErrs +} + +func validateStorageOSVolumeSource(storageos *api.StorageOSVolumeSource, fldPath *field.Path) field.ErrorList { + allErrs := field.ErrorList{} + if len(storageos.VolumeName) == 0 { + allErrs = append(allErrs, field.Required(fldPath.Child("volumeName"), "")) + } else { + allErrs = append(allErrs, ValidateDNS1123Label(storageos.VolumeName, fldPath.Child("volumeName"))...) + } + if len(storageos.VolumeNamespace) > 0 { + allErrs = append(allErrs, ValidateDNS1123Label(storageos.VolumeNamespace, fldPath.Child("volumeNamespace"))...) + } + if storageos.SecretRef != nil { + if len(storageos.SecretRef.Name) == 0 { + allErrs = append(allErrs, field.Required(fldPath.Child("secretRef", "name"), "")) + } + } + return allErrs +} + +func validateStorageOSPersistentVolumeSource(storageos *api.StorageOSPersistentVolumeSource, fldPath *field.Path) field.ErrorList { + allErrs := field.ErrorList{} + if len(storageos.VolumeName) == 0 { + allErrs = append(allErrs, field.Required(fldPath.Child("volumeName"), "")) + } else { + allErrs = append(allErrs, ValidateDNS1123Label(storageos.VolumeName, fldPath.Child("volumeName"))...) + } + if len(storageos.VolumeNamespace) > 0 { + allErrs = append(allErrs, ValidateDNS1123Label(storageos.VolumeNamespace, fldPath.Child("volumeNamespace"))...) + } + if storageos.SecretRef != nil { + if len(storageos.SecretRef.Name) == 0 { + allErrs = append(allErrs, field.Required(fldPath.Child("secretRef", "name"), "")) + } + if len(storageos.SecretRef.Namespace) == 0 { + allErrs = append(allErrs, field.Required(fldPath.Child("secretRef", "namespace"), "")) + } + } + return allErrs +} + // ValidatePersistentVolumeName checks that a name is appropriate for a // PersistentVolumeName object. var ValidatePersistentVolumeName = NameIsDNSSubdomain @@ -1110,7 +1185,8 @@ var supportedAccessModes = sets.NewString(string(api.ReadWriteOnce), string(api. var supportedReclaimPolicy = sets.NewString(string(api.PersistentVolumeReclaimDelete), string(api.PersistentVolumeReclaimRecycle), string(api.PersistentVolumeReclaimRetain)) func ValidatePersistentVolume(pv *api.PersistentVolume) field.ErrorList { - allErrs := ValidateObjectMeta(&pv.ObjectMeta, false, ValidatePersistentVolumeName, field.NewPath("metadata")) + metaPath := field.NewPath("metadata") + allErrs := ValidateObjectMeta(&pv.ObjectMeta, false, ValidatePersistentVolumeName, metaPath) specPath := field.NewPath("spec") if len(pv.Spec.AccessModes) == 0 { @@ -1139,6 +1215,9 @@ func ValidatePersistentVolume(pv *api.PersistentVolume) field.ErrorList { } } + nodeAffinitySpecified, errs := validateStorageNodeAffinityAnnotation(pv.ObjectMeta.Annotations, metaPath.Child("annotations")) + allErrs = append(allErrs, errs...) + numVolumes := 0 if pv.Spec.HostPath != nil { if numVolumes > 0 { @@ -1290,6 +1369,30 @@ func ValidatePersistentVolume(pv *api.PersistentVolume) field.ErrorList { allErrs = append(allErrs, validateScaleIOVolumeSource(pv.Spec.ScaleIO, specPath.Child("scaleIO"))...) } } + if pv.Spec.Local != nil { + if numVolumes > 0 { + allErrs = append(allErrs, field.Forbidden(specPath.Child("local"), "may not specify more than 1 volume type")) + } else { + numVolumes++ + if !utilfeature.DefaultFeatureGate.Enabled(features.PersistentLocalVolumes) { + allErrs = append(allErrs, field.Forbidden(specPath.Child("local"), "Local volumes are disabled by feature-gate")) + } + allErrs = append(allErrs, validateLocalVolumeSource(pv.Spec.Local, specPath.Child("local"))...) + + // NodeAffinity is required + if !nodeAffinitySpecified { + allErrs = append(allErrs, field.Required(metaPath.Child("annotations"), "Local volume requires node affinity")) + } + } + } + if pv.Spec.StorageOS != nil { + if numVolumes > 0 { + allErrs = append(allErrs, field.Forbidden(specPath.Child("storageos"), "may not specify more than 1 volume type")) + } else { + numVolumes++ + allErrs = append(allErrs, validateStorageOSPersistentVolumeSource(pv.Spec.StorageOS, specPath.Child("storageos"))...) + } + } if numVolumes == 0 { allErrs = append(allErrs, field.Required(specPath, "must specify a volume type")) @@ -1365,7 +1468,7 @@ func ValidatePersistentVolumeClaimSpec(spec *api.PersistentVolumeClaimSpec, fldP return allErrs } -// ValidatePersistentVolumeClaimUpdate validates an update to a PeristentVolumeClaim +// ValidatePersistentVolumeClaimUpdate validates an update to a PersistentVolumeClaim func ValidatePersistentVolumeClaimUpdate(newPvc, oldPvc *api.PersistentVolumeClaim) field.ErrorList { allErrs := ValidateObjectMetaUpdate(&newPvc.ObjectMeta, &oldPvc.ObjectMeta, field.NewPath("metadata")) allErrs = append(allErrs, ValidatePersistentVolumeClaim(newPvc)...) @@ -1391,7 +1494,7 @@ func ValidatePersistentVolumeClaimUpdate(newPvc, oldPvc *api.PersistentVolumeCla return allErrs } -// ValidatePersistentVolumeClaimStatusUpdate validates an update to status of a PeristentVolumeClaim +// ValidatePersistentVolumeClaimStatusUpdate validates an update to status of a PersistentVolumeClaim func ValidatePersistentVolumeClaimStatusUpdate(newPvc, oldPvc *api.PersistentVolumeClaim) field.ErrorList { allErrs := ValidateObjectMetaUpdate(&newPvc.ObjectMeta, &oldPvc.ObjectMeta, field.NewPath("metadata")) if len(newPvc.ResourceVersion) == 0 { @@ -1448,6 +1551,7 @@ func validateContainerPorts(ports []api.ContainerPort, fldPath *field.Path) fiel return allErrs } +// ValidateEnv validates env vars func ValidateEnv(vars []api.EnvVar, fldPath *field.Path) field.ErrorList { allErrs := field.ErrorList{} @@ -1618,8 +1722,9 @@ func validateContainerResourceDivisor(rName string, divisor resource.Quantity, f func validateConfigMapKeySelector(s *api.ConfigMapKeySelector, fldPath *field.Path) field.ErrorList { allErrs := field.ErrorList{} - if len(s.Name) == 0 { - allErrs = append(allErrs, field.Required(fldPath.Child("name"), "")) + nameFn := ValidateNameFunc(ValidateSecretName) + for _, msg := range nameFn(s.Name, false) { + allErrs = append(allErrs, field.Invalid(fldPath.Child("name"), s.Name, msg)) } if len(s.Key) == 0 { allErrs = append(allErrs, field.Required(fldPath.Child("key"), "")) @@ -1635,8 +1740,9 @@ func validateConfigMapKeySelector(s *api.ConfigMapKeySelector, fldPath *field.Pa func validateSecretKeySelector(s *api.SecretKeySelector, fldPath *field.Path) field.ErrorList { allErrs := field.ErrorList{} - if len(s.Name) == 0 { - allErrs = append(allErrs, field.Required(fldPath.Child("name"), "")) + nameFn := ValidateNameFunc(ValidateSecretName) + for _, msg := range nameFn(s.Name, false) { + allErrs = append(allErrs, field.Invalid(fldPath.Child("name"), s.Name, msg)) } if len(s.Key) == 0 { allErrs = append(allErrs, field.Required(fldPath.Child("key"), "")) @@ -1882,6 +1988,9 @@ func validateContainers(containers []api.Container, volumes sets.String, fldPath } else { allNames.Insert(ctr.Name) } + // TODO: do not validate leading and trailing whitespace to preserve backward compatibility. + // for example: https://github.com/openshift/origin/issues/14659 image = " " is special token in pod template + // others may have done similar if len(ctr.Image) == 0 { allErrs = append(allErrs, field.Required(idxPath.Child("image"), "")) } @@ -1905,6 +2014,7 @@ func validateContainers(containers []api.Container, volumes sets.String, fldPath allErrs = append(allErrs, validateProbe(ctr.ReadinessProbe, idxPath.Child("readinessProbe"))...) allErrs = append(allErrs, validateContainerPorts(ctr.Ports, idxPath.Child("ports"))...) allErrs = append(allErrs, ValidateEnv(ctr.Env, idxPath.Child("env"))...) + allErrs = append(allErrs, ValidateEnvFrom(ctr.EnvFrom, idxPath.Child("envFrom"))...) allErrs = append(allErrs, ValidateVolumeMounts(ctr.VolumeMounts, volumes, idxPath.Child("volumeMounts"))...) allErrs = append(allErrs, validatePullPolicy(ctr.ImagePullPolicy, idxPath.Child("imagePullPolicy"))...) allErrs = append(allErrs, ValidateResourceRequirements(&ctr.Resources, idxPath.Child("resources"))...) @@ -2070,7 +2180,7 @@ func ValidateHostAliases(hostAliases []api.HostAlias, fldPath *field.Path) field allErrs = append(allErrs, field.Invalid(fldPath.Child("ip"), hostAlias.IP, "must be valid IP address")) } for _, hostname := range hostAlias.Hostnames { - allErrs = append(allErrs, ValidateDNS1123Label(hostname, fldPath.Child("hostnames"))...) + allErrs = append(allErrs, ValidateDNS1123Subdomain(hostname, fldPath.Child("hostnames"))...) } } return allErrs @@ -2121,12 +2231,33 @@ func ValidateTolerations(tolerations []api.Toleration, fldPath *field.Path) fiel return allErrors } +// validateContainersOnlyForPod does additional validation for containers on a pod versus a pod template +// it only does additive validation of fields not covered in validateContainers +func validateContainersOnlyForPod(containers []api.Container, fldPath *field.Path) field.ErrorList { + allErrs := field.ErrorList{} + for i, ctr := range containers { + idxPath := fldPath.Index(i) + if len(ctr.Image) != len(strings.TrimSpace(ctr.Image)) { + allErrs = append(allErrs, field.Invalid(idxPath.Child("image"), ctr.Image, "must not have leading or trailing whitespace")) + } + } + return allErrs +} + // ValidatePod tests if required fields in the pod are set. func ValidatePod(pod *api.Pod) field.ErrorList { fldPath := field.NewPath("metadata") allErrs := ValidateObjectMeta(&pod.ObjectMeta, true, ValidatePodName, fldPath) allErrs = append(allErrs, ValidatePodSpecificAnnotations(pod.ObjectMeta.Annotations, &pod.Spec, fldPath.Child("annotations"))...) allErrs = append(allErrs, ValidatePodSpec(&pod.Spec, field.NewPath("spec"))...) + + // we do additional validation only pertinent for pods and not pod templates + // this was done to preserve backwards compatibility + specPath := field.NewPath("spec") + + allErrs = append(allErrs, validateContainersOnlyForPod(pod.Spec.Containers, specPath.Child("containers"))...) + allErrs = append(allErrs, validateContainersOnlyForPod(pod.Spec.InitContainers, specPath.Child("initContainers"))...) + return allErrs } @@ -2160,8 +2291,9 @@ func ValidatePodSpec(spec *api.PodSpec, fldPath *field.Path) field.ErrorList { } if spec.ActiveDeadlineSeconds != nil { - if *spec.ActiveDeadlineSeconds <= 0 { - allErrs = append(allErrs, field.Invalid(fldPath.Child("activeDeadlineSeconds"), spec.ActiveDeadlineSeconds, "must be greater than 0")) + value := *spec.ActiveDeadlineSeconds + if value < 1 || value > math.MaxInt32 { + allErrs = append(allErrs, field.Invalid(fldPath.Child("activeDeadlineSeconds"), value, validation.InclusiveRangeError(1, math.MaxInt32))) } } @@ -2514,6 +2646,10 @@ func ValidateContainerUpdates(newContainers, oldContainers []api.Container, fldP if len(ctr.Image) == 0 { allErrs = append(allErrs, field.Required(fldPath.Index(i).Child("image"), "")) } + // this is only called from ValidatePodUpdate so its safe to check leading/trailing whitespace. + if len(strings.TrimSpace(ctr.Image)) != len(ctr.Image) { + allErrs = append(allErrs, field.Invalid(fldPath.Index(i).Child("image"), ctr.Image, "must not have leading or trailing whitespace")) + } } return allErrs, false } @@ -2547,8 +2683,8 @@ func ValidatePodUpdate(newPod, oldPod *api.Pod) field.ErrorList { // 2. from a positive value to a lesser, non-negative value if newPod.Spec.ActiveDeadlineSeconds != nil { newActiveDeadlineSeconds := *newPod.Spec.ActiveDeadlineSeconds - if newActiveDeadlineSeconds < 0 { - allErrs = append(allErrs, field.Invalid(specPath.Child("activeDeadlineSeconds"), newActiveDeadlineSeconds, isNegativeErrorMsg)) + if newActiveDeadlineSeconds < 0 || newActiveDeadlineSeconds > math.MaxInt32 { + allErrs = append(allErrs, field.Invalid(specPath.Child("activeDeadlineSeconds"), newActiveDeadlineSeconds, validation.InclusiveRangeError(0, math.MaxInt32))) return allErrs } if oldPod.Spec.ActiveDeadlineSeconds != nil { @@ -2865,10 +3001,10 @@ func validateServiceExternalTrafficFieldsValue(service *api.Service) field.Error // Check first class fields. if service.Spec.ExternalTrafficPolicy != "" && - service.Spec.ExternalTrafficPolicy != api.ServiceExternalTrafficPolicyTypeGlobal && + service.Spec.ExternalTrafficPolicy != api.ServiceExternalTrafficPolicyTypeCluster && service.Spec.ExternalTrafficPolicy != api.ServiceExternalTrafficPolicyTypeLocal { allErrs = append(allErrs, field.Invalid(field.NewPath("spec").Child("externalTrafficPolicy"), service.Spec.ExternalTrafficPolicy, - fmt.Sprintf("ExternalTrafficPolicy must be empty, %v or %v", api.ServiceExternalTrafficPolicyTypeGlobal, api.ServiceExternalTrafficPolicyTypeLocal))) + fmt.Sprintf("ExternalTrafficPolicy must be empty, %v or %v", api.ServiceExternalTrafficPolicyTypeCluster, api.ServiceExternalTrafficPolicyTypeLocal))) } if service.Spec.HealthCheckNodePort < 0 { allErrs = append(allErrs, field.Invalid(field.NewPath("spec").Child("healthCheckNodePort"), service.Spec.HealthCheckNodePort, @@ -3263,6 +3399,7 @@ func validateResourceName(value string, fldPath *field.Path) field.ErrorList { // Refer to docs/design/resources.md for more details. func validateContainerResourceName(value string, fldPath *field.Path) field.ErrorList { allErrs := validateResourceName(value, fldPath) + if len(strings.Split(value, "/")) == 1 { if !helper.IsStandardContainerResourceName(value) { return append(allErrs, field.Invalid(fldPath, value, "must be a standard resource for containers")) @@ -3605,6 +3742,9 @@ func ValidateResourceRequirements(requirements *api.ResourceRequirements, fldPat allErrs = append(allErrs, field.Invalid(limPath, quantity.String(), fmt.Sprintf("must be greater than or equal to %s request", resourceName))) } } + if resourceName == api.ResourceStorageOverlay && !utilfeature.DefaultFeatureGate.Enabled(features.LocalStorageCapacityIsolation) { + allErrs = append(allErrs, field.Forbidden(limPath, "ResourceStorageOverlay field disabled by feature-gate for ResourceRequirements")) + } } for resourceName, quantity := range requirements.Requests { fldPath := reqPath.Key(string(resourceName)) @@ -4044,3 +4184,32 @@ func sysctlIntersection(a []api.Sysctl, b []api.Sysctl) []string { } return result } + +// validateStorageNodeAffinityAnnotation tests that the serialized TopologyConstraints in PersistentVolume.Annotations has valid data +func validateStorageNodeAffinityAnnotation(annotations map[string]string, fldPath *field.Path) (bool, field.ErrorList) { + allErrs := field.ErrorList{} + + na, err := helper.GetStorageNodeAffinityFromAnnotation(annotations) + if err != nil { + allErrs = append(allErrs, field.Invalid(fldPath, api.AlphaStorageNodeAffinityAnnotation, err.Error())) + return false, allErrs + } + if na == nil { + return false, allErrs + } + + if !utilfeature.DefaultFeatureGate.Enabled(features.PersistentLocalVolumes) { + allErrs = append(allErrs, field.Forbidden(fldPath, "Storage node affinity is disabled by feature-gate")) + } + + policySpecified := false + if na.RequiredDuringSchedulingIgnoredDuringExecution != nil { + allErrs = append(allErrs, ValidateNodeSelector(na.RequiredDuringSchedulingIgnoredDuringExecution, fldPath.Child("requiredDuringSchedulingIgnoredDuringExecution"))...) + policySpecified = true + } + + if len(na.PreferredDuringSchedulingIgnoredDuringExecution) > 0 { + allErrs = append(allErrs, field.Forbidden(fldPath.Child("preferredDuringSchedulingIgnoredDuringExection"), "Storage node affinity does not support preferredDuringSchedulingIgnoredDuringExecution")) + } + return policySpecified, allErrs +} diff --git a/vendor/k8s.io/kubernetes/pkg/api/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/api/zz_generated.deepcopy.go index 20b0c64c..b9b24716 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/api/zz_generated.deepcopy.go @@ -106,6 +106,7 @@ func RegisterDeepCopies(scheme *runtime.Scheme) error { conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_LoadBalancerIngress, InType: reflect.TypeOf(&LoadBalancerIngress{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_LoadBalancerStatus, InType: reflect.TypeOf(&LoadBalancerStatus{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_LocalObjectReference, InType: reflect.TypeOf(&LocalObjectReference{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_LocalVolumeSource, InType: reflect.TypeOf(&LocalVolumeSource{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NFSVolumeSource, InType: reflect.TypeOf(&NFSVolumeSource{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Namespace, InType: reflect.TypeOf(&Namespace{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_NamespaceList, InType: reflect.TypeOf(&NamespaceList{})}, @@ -196,6 +197,8 @@ func RegisterDeepCopies(scheme *runtime.Scheme) error { conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ServiceProxyOptions, InType: reflect.TypeOf(&ServiceProxyOptions{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ServiceSpec, InType: reflect.TypeOf(&ServiceSpec{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_ServiceStatus, InType: reflect.TypeOf(&ServiceStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_StorageOSPersistentVolumeSource, InType: reflect.TypeOf(&StorageOSPersistentVolumeSource{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_StorageOSVolumeSource, InType: reflect.TypeOf(&StorageOSVolumeSource{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Sysctl, InType: reflect.TypeOf(&Sysctl{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_TCPSocketAction, InType: reflect.TypeOf(&TCPSocketAction{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_api_Taint, InType: reflect.TypeOf(&Taint{})}, @@ -857,6 +860,7 @@ func DeepCopy_api_EmptyDirVolumeSource(in interface{}, out interface{}, c *conve in := in.(*EmptyDirVolumeSource) out := out.(*EmptyDirVolumeSource) *out = *in + out.SizeLimit = in.SizeLimit.DeepCopy() return nil } } @@ -1513,6 +1517,16 @@ func DeepCopy_api_LocalObjectReference(in interface{}, out interface{}, c *conve } } +// DeepCopy_api_LocalVolumeSource is an autogenerated deepcopy function. +func DeepCopy_api_LocalVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*LocalVolumeSource) + out := out.(*LocalVolumeSource) + *out = *in + return nil + } +} + // DeepCopy_api_NFSVolumeSource is an autogenerated deepcopy function. func DeepCopy_api_NFSVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { { @@ -2183,6 +2197,18 @@ func DeepCopy_api_PersistentVolumeSource(in interface{}, out interface{}, c *con return err } } + if in.Local != nil { + in, out := &in.Local, &out.Local + *out = new(LocalVolumeSource) + **out = **in + } + if in.StorageOS != nil { + in, out := &in.StorageOS, &out.StorageOS + *out = new(StorageOSPersistentVolumeSource) + if err := DeepCopy_api_StorageOSPersistentVolumeSource(*in, *out, c); err != nil { + return err + } + } return nil } } @@ -3425,6 +3451,36 @@ func DeepCopy_api_ServiceStatus(in interface{}, out interface{}, c *conversion.C } } +// DeepCopy_api_StorageOSPersistentVolumeSource is an autogenerated deepcopy function. +func DeepCopy_api_StorageOSPersistentVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*StorageOSPersistentVolumeSource) + out := out.(*StorageOSPersistentVolumeSource) + *out = *in + if in.SecretRef != nil { + in, out := &in.SecretRef, &out.SecretRef + *out = new(ObjectReference) + **out = **in + } + return nil + } +} + +// DeepCopy_api_StorageOSVolumeSource is an autogenerated deepcopy function. +func DeepCopy_api_StorageOSVolumeSource(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*StorageOSVolumeSource) + out := out.(*StorageOSVolumeSource) + *out = *in + if in.SecretRef != nil { + in, out := &in.SecretRef, &out.SecretRef + *out = new(LocalObjectReference) + **out = **in + } + return nil + } +} + // DeepCopy_api_Sysctl is an autogenerated deepcopy function. func DeepCopy_api_Sysctl(in interface{}, out interface{}, c *conversion.Cloner) error { { @@ -3539,7 +3595,9 @@ func DeepCopy_api_VolumeSource(in interface{}, out interface{}, c *conversion.Cl if in.EmptyDir != nil { in, out := &in.EmptyDir, &out.EmptyDir *out = new(EmptyDirVolumeSource) - **out = **in + if err := DeepCopy_api_EmptyDirVolumeSource(*in, *out, c); err != nil { + return err + } } if in.GCEPersistentDisk != nil { in, out := &in.GCEPersistentDisk, &out.GCEPersistentDisk @@ -3683,6 +3741,13 @@ func DeepCopy_api_VolumeSource(in interface{}, out interface{}, c *conversion.Cl return err } } + if in.StorageOS != nil { + in, out := &in.StorageOS, &out.StorageOS + *out = new(StorageOSVolumeSource) + if err := DeepCopy_api_StorageOSVolumeSource(*in, *out, c); err != nil { + return err + } + } return nil } } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/doc.go b/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/doc.go new file mode 100644 index 00000000..5dfc4e74 --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/doc.go @@ -0,0 +1,24 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// +k8s:deepcopy-gen=package,register + +// Package admissionregistration is the internal version of the API. +// AdmissionConfiguration and AdmissionPluginConfiguration are legacy static admission plugin configuration +// InitializerConfiguration and ExternalAdmissionHookConfiguration is for the +// new dynamic admission controller configuration. +// +groupName=admissionregistration.k8s.io +package admissionregistration // import "k8s.io/kubernetes/pkg/apis/admissionregistration" diff --git a/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/register.go b/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/register.go new file mode 100644 index 00000000..1fe291a8 --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/register.go @@ -0,0 +1,53 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package admissionregistration + +import ( + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/apimachinery/pkg/runtime/schema" +) + +const GroupName = "admissionregistration.k8s.io" + +// SchemeGroupVersion is group version used to register these objects +var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: runtime.APIVersionInternal} + +// Kind takes an unqualified kind and returns back a Group qualified GroupKind +func Kind(kind string) schema.GroupKind { + return SchemeGroupVersion.WithKind(kind).GroupKind() +} + +// Resource takes an unqualified resource and returns back a Group qualified GroupResource +func Resource(resource string) schema.GroupResource { + return SchemeGroupVersion.WithResource(resource).GroupResource() +} + +var ( + SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) + AddToScheme = SchemeBuilder.AddToScheme +) + +// Adds the list of known types to scheme. +func addKnownTypes(scheme *runtime.Scheme) error { + scheme.AddKnownTypes(SchemeGroupVersion, + &InitializerConfiguration{}, + &InitializerConfigurationList{}, + &ExternalAdmissionHookConfiguration{}, + &ExternalAdmissionHookConfigurationList{}, + ) + return nil +} diff --git a/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/types.go b/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/types.go new file mode 100644 index 00000000..27b72072 --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/types.go @@ -0,0 +1,216 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package admissionregistration + +import ( + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" +) + +// +genclient=true +// +nonNamespaced=true + +// InitializerConfiguration describes the configuration of initializers. +type InitializerConfiguration struct { + metav1.TypeMeta + // Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. + // +optional + metav1.ObjectMeta + + // Initializers is a list of resources and their default initializers + // Order-sensitive. + // When merging multiple InitializerConfigurations, we sort the initializers + // from different InitializerConfigurations by the name of the + // InitializerConfigurations; the order of the initializers from the same + // InitializerConfiguration is preserved. + // +optional + Initializers []Initializer +} + +// InitializerConfigurationList is a list of InitializerConfiguration. +type InitializerConfigurationList struct { + metav1.TypeMeta + // Standard list metadata. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + // +optional + metav1.ListMeta + + // List of InitializerConfiguration. + Items []InitializerConfiguration +} + +// Initializer describes the name and the failure policy of an initializer, and +// what resources it applies to. +type Initializer struct { + // 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 + Name string + + // 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. + 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 +// to make sure that all the tuple expansions are valid. +type Rule struct { + // APIGroups is the API groups the resources belong to. '*' is all groups. + // If '*' is present, the length of the slice must be one. + // Required. + APIGroups []string + + // APIVersions is the API versions the resources belong to. '*' is all versions. + // If '*' is present, the length of the slice must be one. + // Required. + APIVersions []string + + // Resources is a list of resources this rule applies to. + // + // For example: + // 'pods' means pods. + // 'pods/log' means the log subresource of pods. + // '*' means all resources, but not subresources. + // 'pods/*' means all subresources of pods. + // '*/scale' means all scale subresources. + // '*/*' means all resources and their subresources. + // + // If wildcard is present, the validation rule will ensure resources do not + // overlap with each other. + // + // Depending on the enclosing object, subresources might not be allowed. + // Required. + Resources []string +} + +type FailurePolicyType string + +const ( + // Ignore means the initilizer is removed from the initializers list of an + // object if the initializer is timed out. + Ignore FailurePolicyType = "Ignore" + // For 1.7, only "Ignore" is allowed. "Fail" will be allowed when the + // extensible admission feature is beta. + Fail FailurePolicyType = "Fail" +) + +// +genclient=true +// +nonNamespaced=true + +// ExternalAdmissionHookConfiguration describes the configuration of initializers. +type ExternalAdmissionHookConfiguration struct { + metav1.TypeMeta + // Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. + // +optional + metav1.ObjectMeta + // ExternalAdmissionHooks is a list of external admission webhooks and the + // affected resources and operations. + // +optional + ExternalAdmissionHooks []ExternalAdmissionHook +} + +// ExternalAdmissionHookConfigurationList is a list of ExternalAdmissionHookConfiguration. +type ExternalAdmissionHookConfigurationList struct { + metav1.TypeMeta + // Standard list metadata. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + // +optional + metav1.ListMeta + // List of ExternalAdmissionHookConfiguration. + Items []ExternalAdmissionHookConfiguration +} + +// ExternalAdmissionHook describes an external admission webhook and the +// resources and operations it applies to. +type ExternalAdmissionHook struct { + // The name of the external admission webhook. + // Name should be fully qualified, e.g., imagepolicy.kubernetes.io, where + // "imagepolicy" is the name of the webhook, and kubernetes.io is the name + // of the organization. + // Required. + Name string + + // ClientConfig defines how to communicate with the hook. + // Required + ClientConfig AdmissionHookClientConfig + + // Rules describes what operations on what resources/subresources the webhook cares about. + // The webhook cares about an operation if it matches _any_ Rule. + Rules []RuleWithOperations + + // FailurePolicy defines how unrecognized errors from the admission endpoint are handled - + // allowed values are Ignore or Fail. Defaults to Ignore. + // +optional + FailurePolicy *FailurePolicyType +} + +// RuleWithOperations is a tuple of Operations and Resources. It is recommended to make +// sure that all the tuple expansions are valid. +type RuleWithOperations struct { + // Operations is the operations the admission hook cares about - CREATE, UPDATE, or * + // for all operations. + // If '*' is present, the length of the slice must be one. + // Required. + Operations []OperationType + // Rule is embedded, it describes other criteria of the rule, like + // APIGroups, APIVersions, Resources, etc. + Rule +} + +type OperationType string + +// The constants should be kept in sync with those defined in k8s.io/kubernetes/pkg/admission/interface.go. +const ( + OperationAll OperationType = "*" + Create OperationType = "CREATE" + Update OperationType = "UPDATE" + Delete OperationType = "DELETE" + Connect OperationType = "CONNECT" +) + +// AdmissionHookClientConfig contains the information to make a TLS +// connection with the webhook +type AdmissionHookClientConfig struct { + // Service is a reference to the service for this webhook. If there is only + // one port open for the service, that port will be used. If there are multiple + // ports open, port 443 will be used if it is open, otherwise it is an error. + // Required + Service ServiceReference + // CABundle is a PEM encoded CA bundle which will be used to validate webhook's server certificate. + // Required + CABundle []byte +} + +// ServiceReference holds a reference to Service.legacy.k8s.io +type ServiceReference struct { + // Namespace is the namespace of the service + // Required + Namespace string + // Name is the name of the service + // Required + Name string +} diff --git a/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/defaults.go b/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/defaults.go new file mode 100644 index 00000000..5aed8f1d --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/defaults.go @@ -0,0 +1,39 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1alpha1 + +import ( + "k8s.io/apimachinery/pkg/runtime" +) + +func addDefaultingFuncs(scheme *runtime.Scheme) error { + return RegisterDefaults(scheme) +} + +func SetDefaults_Initializer(obj *Initializer) { + if obj.FailurePolicy == nil { + policy := Ignore + obj.FailurePolicy = &policy + } +} + +func SetDefaults_ExternalAdmissionHook(obj *ExternalAdmissionHook) { + if obj.FailurePolicy == nil { + policy := Ignore + obj.FailurePolicy = &policy + } +} diff --git a/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/doc.go b/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/doc.go new file mode 100644 index 00000000..9f75528f --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/doc.go @@ -0,0 +1,27 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// +k8s:deepcopy-gen=package,register +// +k8s:conversion-gen=k8s.io/kubernetes/pkg/apis/admissionregistration +// +k8s:openapi-gen=true +// +k8s:defaulter-gen=TypeMeta + +// Package v1alpha1 is the v1alpha1 version of the API. +// AdmissionConfiguration and AdmissionPluginConfiguration are legacy static admission plugin configuration +// InitializerConfiguration and ExternalAdmissionHookConfiguration is for the +// new dynamic admission controller configuration. +// +groupName=admissionregistration.k8s.io +package v1alpha1 // import "k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1" diff --git a/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/generated.pb.go new file mode 100644 index 00000000..94450a45 --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/generated.pb.go @@ -0,0 +1,2228 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// Code generated by protoc-gen-gogo. +// source: k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/generated.proto +// DO NOT EDIT! + +/* + Package v1alpha1 is a generated protocol buffer package. + + It is generated from these files: + k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/generated.proto + + It has these top-level messages: + AdmissionHookClientConfig + ExternalAdmissionHook + ExternalAdmissionHookConfiguration + ExternalAdmissionHookConfigurationList + Initializer + InitializerConfiguration + InitializerConfigurationList + Rule + RuleWithOperations + ServiceReference +*/ +package v1alpha1 + +import proto "github.com/gogo/protobuf/proto" +import fmt "fmt" +import math "math" + +import strings "strings" +import reflect "reflect" + +import io "io" + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion2 // please upgrade the proto package + +func (m *AdmissionHookClientConfig) Reset() { *m = AdmissionHookClientConfig{} } +func (*AdmissionHookClientConfig) ProtoMessage() {} +func (*AdmissionHookClientConfig) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{0} +} + +func (m *ExternalAdmissionHook) Reset() { *m = ExternalAdmissionHook{} } +func (*ExternalAdmissionHook) ProtoMessage() {} +func (*ExternalAdmissionHook) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{1} } + +func (m *ExternalAdmissionHookConfiguration) Reset() { *m = ExternalAdmissionHookConfiguration{} } +func (*ExternalAdmissionHookConfiguration) ProtoMessage() {} +func (*ExternalAdmissionHookConfiguration) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{2} +} + +func (m *ExternalAdmissionHookConfigurationList) Reset() { + *m = ExternalAdmissionHookConfigurationList{} +} +func (*ExternalAdmissionHookConfigurationList) ProtoMessage() {} +func (*ExternalAdmissionHookConfigurationList) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{3} +} + +func (m *Initializer) Reset() { *m = Initializer{} } +func (*Initializer) ProtoMessage() {} +func (*Initializer) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{4} } + +func (m *InitializerConfiguration) Reset() { *m = InitializerConfiguration{} } +func (*InitializerConfiguration) ProtoMessage() {} +func (*InitializerConfiguration) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{5} +} + +func (m *InitializerConfigurationList) Reset() { *m = InitializerConfigurationList{} } +func (*InitializerConfigurationList) ProtoMessage() {} +func (*InitializerConfigurationList) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{6} +} + +func (m *Rule) Reset() { *m = Rule{} } +func (*Rule) ProtoMessage() {} +func (*Rule) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{7} } + +func (m *RuleWithOperations) Reset() { *m = RuleWithOperations{} } +func (*RuleWithOperations) ProtoMessage() {} +func (*RuleWithOperations) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{8} } + +func (m *ServiceReference) Reset() { *m = ServiceReference{} } +func (*ServiceReference) ProtoMessage() {} +func (*ServiceReference) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{9} } + +func init() { + proto.RegisterType((*AdmissionHookClientConfig)(nil), "k8s.io.kubernetes.pkg.apis.admissionregistration.v1alpha1.AdmissionHookClientConfig") + proto.RegisterType((*ExternalAdmissionHook)(nil), "k8s.io.kubernetes.pkg.apis.admissionregistration.v1alpha1.ExternalAdmissionHook") + proto.RegisterType((*ExternalAdmissionHookConfiguration)(nil), "k8s.io.kubernetes.pkg.apis.admissionregistration.v1alpha1.ExternalAdmissionHookConfiguration") + proto.RegisterType((*ExternalAdmissionHookConfigurationList)(nil), "k8s.io.kubernetes.pkg.apis.admissionregistration.v1alpha1.ExternalAdmissionHookConfigurationList") + proto.RegisterType((*Initializer)(nil), "k8s.io.kubernetes.pkg.apis.admissionregistration.v1alpha1.Initializer") + proto.RegisterType((*InitializerConfiguration)(nil), "k8s.io.kubernetes.pkg.apis.admissionregistration.v1alpha1.InitializerConfiguration") + proto.RegisterType((*InitializerConfigurationList)(nil), "k8s.io.kubernetes.pkg.apis.admissionregistration.v1alpha1.InitializerConfigurationList") + proto.RegisterType((*Rule)(nil), "k8s.io.kubernetes.pkg.apis.admissionregistration.v1alpha1.Rule") + proto.RegisterType((*RuleWithOperations)(nil), "k8s.io.kubernetes.pkg.apis.admissionregistration.v1alpha1.RuleWithOperations") + proto.RegisterType((*ServiceReference)(nil), "k8s.io.kubernetes.pkg.apis.admissionregistration.v1alpha1.ServiceReference") +} +func (m *AdmissionHookClientConfig) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *AdmissionHookClientConfig) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Service.Size())) + n1, err := m.Service.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n1 + if m.CABundle != nil { + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.CABundle))) + i += copy(dAtA[i:], m.CABundle) + } + return i, nil +} + +func (m *ExternalAdmissionHook) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ExternalAdmissionHook) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.Name))) + i += copy(dAtA[i:], m.Name) + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.ClientConfig.Size())) + n2, err := m.ClientConfig.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n2 + if len(m.Rules) > 0 { + for _, msg := range m.Rules { + dAtA[i] = 0x1a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(msg.Size())) + n, err := msg.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n + } + } + if m.FailurePolicy != nil { + dAtA[i] = 0x22 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(*m.FailurePolicy))) + i += copy(dAtA[i:], *m.FailurePolicy) + } + return i, nil +} + +func (m *ExternalAdmissionHookConfiguration) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ExternalAdmissionHookConfiguration) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) + n3, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n3 + if len(m.ExternalAdmissionHooks) > 0 { + for _, msg := range m.ExternalAdmissionHooks { + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(msg.Size())) + n, err := msg.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n + } + } + return i, nil +} + +func (m *ExternalAdmissionHookConfigurationList) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ExternalAdmissionHookConfigurationList) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) + n4, err := m.ListMeta.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n4 + if len(m.Items) > 0 { + for _, msg := range m.Items { + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(msg.Size())) + n, err := msg.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n + } + } + return i, nil +} + +func (m *Initializer) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *Initializer) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.Name))) + i += copy(dAtA[i:], m.Name) + if len(m.Rules) > 0 { + for _, msg := range m.Rules { + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(msg.Size())) + n, err := msg.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + 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 +} + +func (m *InitializerConfiguration) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *InitializerConfiguration) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) + n5, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n5 + if len(m.Initializers) > 0 { + for _, msg := range m.Initializers { + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(msg.Size())) + n, err := msg.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n + } + } + return i, nil +} + +func (m *InitializerConfigurationList) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *InitializerConfigurationList) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) + n6, err := m.ListMeta.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n6 + if len(m.Items) > 0 { + for _, msg := range m.Items { + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(msg.Size())) + n, err := msg.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n + } + } + return i, nil +} + +func (m *Rule) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *Rule) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + if len(m.APIGroups) > 0 { + for _, s := range m.APIGroups { + dAtA[i] = 0xa + 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) + } + } + if len(m.APIVersions) > 0 { + for _, s := range m.APIVersions { + dAtA[i] = 0x12 + 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) + } + } + if len(m.Resources) > 0 { + for _, s := range m.Resources { + dAtA[i] = 0x1a + 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 +} + +func (m *RuleWithOperations) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *RuleWithOperations) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + if len(m.Operations) > 0 { + for _, s := range m.Operations { + dAtA[i] = 0xa + 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) + } + } + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Rule.Size())) + n7, err := m.Rule.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n7 + return i, nil +} + +func (m *ServiceReference) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ServiceReference) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.Namespace))) + i += copy(dAtA[i:], m.Namespace) + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.Name))) + i += copy(dAtA[i:], m.Name) + return i, nil +} + +func encodeFixed64Generated(dAtA []byte, offset int, v uint64) int { + dAtA[offset] = uint8(v) + dAtA[offset+1] = uint8(v >> 8) + dAtA[offset+2] = uint8(v >> 16) + dAtA[offset+3] = uint8(v >> 24) + dAtA[offset+4] = uint8(v >> 32) + dAtA[offset+5] = uint8(v >> 40) + dAtA[offset+6] = uint8(v >> 48) + dAtA[offset+7] = uint8(v >> 56) + return offset + 8 +} +func encodeFixed32Generated(dAtA []byte, offset int, v uint32) int { + dAtA[offset] = uint8(v) + dAtA[offset+1] = uint8(v >> 8) + dAtA[offset+2] = uint8(v >> 16) + dAtA[offset+3] = uint8(v >> 24) + return offset + 4 +} +func encodeVarintGenerated(dAtA []byte, offset int, v uint64) int { + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return offset + 1 +} +func (m *AdmissionHookClientConfig) Size() (n int) { + var l int + _ = l + l = m.Service.Size() + n += 1 + l + sovGenerated(uint64(l)) + if m.CABundle != nil { + l = len(m.CABundle) + n += 1 + l + sovGenerated(uint64(l)) + } + return n +} + +func (m *ExternalAdmissionHook) Size() (n int) { + var l int + _ = l + l = len(m.Name) + n += 1 + l + sovGenerated(uint64(l)) + l = m.ClientConfig.Size() + n += 1 + l + sovGenerated(uint64(l)) + if len(m.Rules) > 0 { + for _, e := range m.Rules { + l = e.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + } + if m.FailurePolicy != nil { + l = len(*m.FailurePolicy) + n += 1 + l + sovGenerated(uint64(l)) + } + return n +} + +func (m *ExternalAdmissionHookConfiguration) Size() (n int) { + var l int + _ = l + l = m.ObjectMeta.Size() + n += 1 + l + sovGenerated(uint64(l)) + if len(m.ExternalAdmissionHooks) > 0 { + for _, e := range m.ExternalAdmissionHooks { + l = e.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + } + return n +} + +func (m *ExternalAdmissionHookConfigurationList) Size() (n int) { + var l int + _ = l + l = m.ListMeta.Size() + n += 1 + l + sovGenerated(uint64(l)) + if len(m.Items) > 0 { + for _, e := range m.Items { + l = e.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + } + return n +} + +func (m *Initializer) Size() (n int) { + var l int + _ = l + l = len(m.Name) + n += 1 + l + sovGenerated(uint64(l)) + if len(m.Rules) > 0 { + for _, e := range m.Rules { + l = e.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + } + if m.FailurePolicy != nil { + l = len(*m.FailurePolicy) + n += 1 + l + sovGenerated(uint64(l)) + } + return n +} + +func (m *InitializerConfiguration) Size() (n int) { + var l int + _ = l + l = m.ObjectMeta.Size() + n += 1 + l + sovGenerated(uint64(l)) + if len(m.Initializers) > 0 { + for _, e := range m.Initializers { + l = e.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + } + return n +} + +func (m *InitializerConfigurationList) Size() (n int) { + var l int + _ = l + l = m.ListMeta.Size() + n += 1 + l + sovGenerated(uint64(l)) + if len(m.Items) > 0 { + for _, e := range m.Items { + l = e.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + } + return n +} + +func (m *Rule) Size() (n int) { + var l int + _ = l + if len(m.APIGroups) > 0 { + for _, s := range m.APIGroups { + l = len(s) + n += 1 + l + sovGenerated(uint64(l)) + } + } + if len(m.APIVersions) > 0 { + for _, s := range m.APIVersions { + l = len(s) + n += 1 + l + sovGenerated(uint64(l)) + } + } + if len(m.Resources) > 0 { + for _, s := range m.Resources { + l = len(s) + n += 1 + l + sovGenerated(uint64(l)) + } + } + return n +} + +func (m *RuleWithOperations) Size() (n int) { + var l int + _ = l + if len(m.Operations) > 0 { + for _, s := range m.Operations { + l = len(s) + n += 1 + l + sovGenerated(uint64(l)) + } + } + l = m.Rule.Size() + n += 1 + l + sovGenerated(uint64(l)) + return n +} + +func (m *ServiceReference) Size() (n int) { + var l int + _ = l + l = len(m.Namespace) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.Name) + n += 1 + l + sovGenerated(uint64(l)) + return n +} + +func sovGenerated(x uint64) (n int) { + for { + n++ + x >>= 7 + if x == 0 { + break + } + } + return n +} +func sozGenerated(x uint64) (n int) { + return sovGenerated(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *AdmissionHookClientConfig) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&AdmissionHookClientConfig{`, + `Service:` + strings.Replace(strings.Replace(this.Service.String(), "ServiceReference", "ServiceReference", 1), `&`, ``, 1) + `,`, + `CABundle:` + valueToStringGenerated(this.CABundle) + `,`, + `}`, + }, "") + return s +} +func (this *ExternalAdmissionHook) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ExternalAdmissionHook{`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `ClientConfig:` + strings.Replace(strings.Replace(this.ClientConfig.String(), "AdmissionHookClientConfig", "AdmissionHookClientConfig", 1), `&`, ``, 1) + `,`, + `Rules:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.Rules), "RuleWithOperations", "RuleWithOperations", 1), `&`, ``, 1) + `,`, + `FailurePolicy:` + valueToStringGenerated(this.FailurePolicy) + `,`, + `}`, + }, "") + return s +} +func (this *ExternalAdmissionHookConfiguration) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ExternalAdmissionHookConfiguration{`, + `ObjectMeta:` + strings.Replace(strings.Replace(this.ObjectMeta.String(), "ObjectMeta", "k8s_io_apimachinery_pkg_apis_meta_v1.ObjectMeta", 1), `&`, ``, 1) + `,`, + `ExternalAdmissionHooks:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.ExternalAdmissionHooks), "ExternalAdmissionHook", "ExternalAdmissionHook", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func (this *ExternalAdmissionHookConfigurationList) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ExternalAdmissionHookConfigurationList{`, + `ListMeta:` + strings.Replace(strings.Replace(this.ListMeta.String(), "ListMeta", "k8s_io_apimachinery_pkg_apis_meta_v1.ListMeta", 1), `&`, ``, 1) + `,`, + `Items:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.Items), "ExternalAdmissionHookConfiguration", "ExternalAdmissionHookConfiguration", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func (this *Initializer) String() string { + if this == nil { + return "nil" + } + 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 +} +func (this *InitializerConfiguration) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&InitializerConfiguration{`, + `ObjectMeta:` + strings.Replace(strings.Replace(this.ObjectMeta.String(), "ObjectMeta", "k8s_io_apimachinery_pkg_apis_meta_v1.ObjectMeta", 1), `&`, ``, 1) + `,`, + `Initializers:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.Initializers), "Initializer", "Initializer", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func (this *InitializerConfigurationList) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&InitializerConfigurationList{`, + `ListMeta:` + strings.Replace(strings.Replace(this.ListMeta.String(), "ListMeta", "k8s_io_apimachinery_pkg_apis_meta_v1.ListMeta", 1), `&`, ``, 1) + `,`, + `Items:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.Items), "InitializerConfiguration", "InitializerConfiguration", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func (this *Rule) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&Rule{`, + `APIGroups:` + fmt.Sprintf("%v", this.APIGroups) + `,`, + `APIVersions:` + fmt.Sprintf("%v", this.APIVersions) + `,`, + `Resources:` + fmt.Sprintf("%v", this.Resources) + `,`, + `}`, + }, "") + return s +} +func (this *RuleWithOperations) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&RuleWithOperations{`, + `Operations:` + fmt.Sprintf("%v", this.Operations) + `,`, + `Rule:` + strings.Replace(strings.Replace(this.Rule.String(), "Rule", "Rule", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func (this *ServiceReference) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ServiceReference{`, + `Namespace:` + fmt.Sprintf("%v", this.Namespace) + `,`, + `Name:` + fmt.Sprintf("%v", this.Name) + `,`, + `}`, + }, "") + return s +} +func valueToStringGenerated(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *AdmissionHookClientConfig) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: AdmissionHookClientConfig: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: AdmissionHookClientConfig: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Service", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Service.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CABundle", wireType) + } + var byteLen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + byteLen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if byteLen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + byteLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.CABundle = append(m.CABundle[:0], dAtA[iNdEx:postIndex]...) + if m.CABundle == nil { + m.CABundle = []byte{} + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ExternalAdmissionHook) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ExternalAdmissionHook: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ExternalAdmissionHook: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", 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.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ClientConfig", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.ClientConfig.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Rules", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Rules = append(m.Rules, RuleWithOperations{}) + if err := m.Rules[len(m.Rules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + 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:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ExternalAdmissionHookConfiguration) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ExternalAdmissionHookConfiguration: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ExternalAdmissionHookConfiguration: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectMeta", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.ObjectMeta.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ExternalAdmissionHooks", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ExternalAdmissionHooks = append(m.ExternalAdmissionHooks, ExternalAdmissionHook{}) + if err := m.ExternalAdmissionHooks[len(m.ExternalAdmissionHooks)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ExternalAdmissionHookConfigurationList) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ExternalAdmissionHookConfigurationList: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ExternalAdmissionHookConfigurationList: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ListMeta", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.ListMeta.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Items", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Items = append(m.Items, ExternalAdmissionHookConfiguration{}) + if err := m.Items[len(m.Items)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *Initializer) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: Initializer: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: Initializer: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", 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.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Rules", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Rules = append(m.Rules, Rule{}) + if err := m.Rules[len(m.Rules)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + 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:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *InitializerConfiguration) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: InitializerConfiguration: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: InitializerConfiguration: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectMeta", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.ObjectMeta.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Initializers", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Initializers = append(m.Initializers, Initializer{}) + if err := m.Initializers[len(m.Initializers)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *InitializerConfigurationList) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: InitializerConfigurationList: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: InitializerConfigurationList: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ListMeta", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.ListMeta.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Items", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Items = append(m.Items, InitializerConfiguration{}) + if err := m.Items[len(m.Items)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *Rule) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: Rule: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: Rule: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field APIGroups", 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.APIGroups = append(m.APIGroups, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field APIVersions", 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.APIVersions = append(m.APIVersions, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Resources", 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.Resources = append(m.Resources, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *RuleWithOperations) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: RuleWithOperations: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: RuleWithOperations: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Operations", 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.Operations = append(m.Operations, OperationType(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Rule", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Rule.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ServiceReference) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ServiceReference: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ServiceReference: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespace", 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.Namespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Name", 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.Name = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipGenerated(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenerated + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenerated + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + return iNdEx, nil + case 1: + iNdEx += 8 + return iNdEx, nil + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenerated + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + iNdEx += length + if length < 0 { + return 0, ErrInvalidLengthGenerated + } + return iNdEx, nil + case 3: + for { + var innerWire uint64 + var start int = iNdEx + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenerated + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + innerWire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + innerWireType := int(innerWire & 0x7) + if innerWireType == 4 { + break + } + next, err := skipGenerated(dAtA[start:]) + if err != nil { + return 0, err + } + iNdEx = start + next + } + return iNdEx, nil + case 4: + return iNdEx, nil + case 5: + iNdEx += 4 + return iNdEx, nil + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + } + panic("unreachable") +} + +var ( + ErrInvalidLengthGenerated = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowGenerated = fmt.Errorf("proto: integer overflow") +) + +func init() { + proto.RegisterFile("k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/generated.proto", fileDescriptorGenerated) +} + +var fileDescriptorGenerated = []byte{ + // 877 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x56, 0xcf, 0x6f, 0x1b, 0x45, + 0x14, 0xce, 0xd8, 0x8e, 0x6a, 0x8f, 0x6d, 0xb5, 0x1d, 0x41, 0x65, 0x22, 0xb4, 0x6b, 0xed, 0xa1, + 0xb2, 0x84, 0xd8, 0x25, 0x01, 0x21, 0x38, 0x55, 0xd9, 0x88, 0x82, 0x45, 0x7f, 0x44, 0xd3, 0x0a, + 0x24, 0x04, 0x12, 0x93, 0xf5, 0x8b, 0x3d, 0x78, 0x7f, 0x69, 0x66, 0xd6, 0x6a, 0x38, 0x55, 0x5c, + 0x41, 0x08, 0x89, 0x7f, 0x82, 0x2b, 0x37, 0x2e, 0xdc, 0x73, 0xec, 0xb1, 0x27, 0x8b, 0x6c, 0xff, + 0x07, 0x0e, 0xbd, 0x80, 0xf6, 0x97, 0x77, 0x5d, 0xdb, 0x6a, 0x54, 0x57, 0xbd, 0x65, 0xde, 0xdb, + 0xf7, 0xbd, 0xef, 0xfb, 0xf2, 0xde, 0x8c, 0xf1, 0x70, 0xfa, 0x89, 0x34, 0x79, 0x60, 0x4d, 0xa3, + 0x13, 0x10, 0x3e, 0x28, 0x90, 0x56, 0x38, 0x1d, 0x5b, 0x2c, 0xe4, 0xd2, 0x62, 0x23, 0x8f, 0x4b, + 0xc9, 0x03, 0x5f, 0xc0, 0x98, 0x4b, 0x25, 0x98, 0xe2, 0x81, 0x6f, 0xcd, 0xf6, 0x99, 0x1b, 0x4e, + 0xd8, 0xbe, 0x35, 0x06, 0x1f, 0x04, 0x53, 0x30, 0x32, 0x43, 0x11, 0xa8, 0x80, 0x7c, 0x9a, 0x41, + 0x99, 0x25, 0x94, 0x19, 0x4e, 0xc7, 0x66, 0x02, 0x65, 0xae, 0x85, 0x32, 0x0b, 0xa8, 0xbd, 0xf7, + 0xc7, 0x5c, 0x4d, 0xa2, 0x13, 0xd3, 0x09, 0x3c, 0x6b, 0x1c, 0x8c, 0x03, 0x2b, 0x45, 0x3c, 0x89, + 0x4e, 0xd3, 0x53, 0x7a, 0x48, 0xff, 0xca, 0x3a, 0xed, 0x7d, 0x94, 0x93, 0x66, 0x21, 0xf7, 0x98, + 0x33, 0xe1, 0x3e, 0x88, 0xb3, 0x92, 0xb6, 0x07, 0x8a, 0x59, 0xb3, 0x15, 0x7e, 0x7b, 0xd6, 0xa6, + 0x2a, 0x11, 0xf9, 0x8a, 0x7b, 0xb0, 0x52, 0xf0, 0xf1, 0xcb, 0x0a, 0xa4, 0x33, 0x01, 0x8f, 0xad, + 0xd4, 0x7d, 0xb8, 0xa9, 0x2e, 0x52, 0xdc, 0xb5, 0xb8, 0xaf, 0xa4, 0x12, 0x2f, 0x16, 0x19, 0x7f, + 0x23, 0xfc, 0xce, 0x61, 0xe1, 0xd2, 0x17, 0x41, 0x30, 0x3d, 0x72, 0x39, 0xf8, 0xea, 0x28, 0xf0, + 0x4f, 0xf9, 0x98, 0xcc, 0xf0, 0x15, 0x09, 0x62, 0xc6, 0x1d, 0xe8, 0xa1, 0x3e, 0x1a, 0xb4, 0x0f, + 0xbe, 0x34, 0x5f, 0xd9, 0x6d, 0xf3, 0x41, 0x86, 0x44, 0xe1, 0x14, 0x04, 0xf8, 0x0e, 0xd8, 0x57, + 0xcf, 0xe7, 0xfa, 0x4e, 0x3c, 0xd7, 0xaf, 0x14, 0x99, 0xa2, 0x19, 0x19, 0xe0, 0xa6, 0xc3, 0xec, + 0xc8, 0x1f, 0xb9, 0xd0, 0xab, 0xf5, 0xd1, 0xa0, 0x63, 0x77, 0xe2, 0xb9, 0xde, 0x3c, 0x3a, 0xcc, + 0x62, 0x74, 0x91, 0x35, 0x7e, 0xa9, 0xe3, 0xb7, 0x3f, 0x7b, 0xa4, 0x40, 0xf8, 0xcc, 0x5d, 0xd2, + 0x41, 0xfa, 0xb8, 0xe1, 0x33, 0x2f, 0x23, 0xde, 0xb2, 0x3b, 0x79, 0xaf, 0xc6, 0x3d, 0xe6, 0x01, + 0x4d, 0x33, 0xe4, 0x57, 0x84, 0x3b, 0x4e, 0x45, 0x6e, 0xda, 0xaa, 0x7d, 0xf0, 0x70, 0x0b, 0x8d, + 0x1b, 0xad, 0xb4, 0xdf, 0xca, 0x09, 0x74, 0xaa, 0x51, 0xba, 0xd4, 0x9f, 0x08, 0xbc, 0x2b, 0x22, + 0x17, 0x64, 0xaf, 0xde, 0xaf, 0x0f, 0xda, 0x07, 0x77, 0xb7, 0x20, 0x42, 0x23, 0x17, 0xbe, 0xe6, + 0x6a, 0x72, 0x3f, 0x84, 0x2c, 0x25, 0xed, 0x6e, 0xce, 0x60, 0x37, 0xc9, 0x49, 0x9a, 0xb5, 0x22, + 0x77, 0x70, 0xf7, 0x94, 0x71, 0x37, 0x12, 0x70, 0x1c, 0xb8, 0xdc, 0x39, 0xeb, 0x35, 0x52, 0xbf, + 0x6e, 0xc6, 0x73, 0xbd, 0x7b, 0xbb, 0x9a, 0x78, 0x3e, 0xd7, 0xaf, 0x2f, 0x05, 0x1e, 0x9e, 0x85, + 0x40, 0x97, 0x8b, 0x8d, 0x3f, 0x6b, 0xd8, 0x58, 0xfb, 0xef, 0xc8, 0x14, 0x46, 0x19, 0x17, 0xf2, + 0x3d, 0x6e, 0x26, 0xeb, 0x32, 0x62, 0x8a, 0xe5, 0x83, 0xf5, 0x41, 0xa1, 0xb5, 0x3a, 0xbd, 0xa5, + 0xda, 0xe4, 0x6b, 0x73, 0xb6, 0x6f, 0xde, 0x3f, 0xf9, 0x01, 0x1c, 0x75, 0x17, 0x14, 0xb3, 0x49, + 0x2e, 0x07, 0x97, 0x31, 0xba, 0x40, 0x25, 0x7f, 0x20, 0x7c, 0x03, 0xd6, 0x11, 0x91, 0xbd, 0x5a, + 0x6a, 0xee, 0xf1, 0x16, 0xe6, 0xae, 0x55, 0x68, 0x6b, 0x39, 0xa1, 0x1b, 0x6b, 0xd3, 0x92, 0x6e, + 0xe0, 0x63, 0xfc, 0x5c, 0xc3, 0x37, 0x5f, 0xee, 0xd9, 0x1d, 0x2e, 0x15, 0xf9, 0x76, 0xc5, 0x37, + 0xf3, 0x72, 0xbe, 0x25, 0xd5, 0xa9, 0x6b, 0xd7, 0x72, 0x92, 0xcd, 0x22, 0x52, 0xf1, 0xec, 0x27, + 0x84, 0x77, 0xb9, 0x02, 0xaf, 0xb0, 0xe8, 0xbb, 0xd7, 0x6d, 0xd1, 0x92, 0xa0, 0x72, 0x1e, 0x87, + 0x49, 0x4f, 0x9a, 0xb5, 0x36, 0x9e, 0x21, 0xdc, 0x1e, 0xfa, 0x5c, 0x71, 0xe6, 0xf2, 0x1f, 0x41, + 0x5c, 0x62, 0x8d, 0x47, 0xc5, 0xd6, 0x64, 0xac, 0x6f, 0x6d, 0xb9, 0x35, 0x97, 0xdd, 0x93, 0xfa, + 0x36, 0x7b, 0xf2, 0x1f, 0xc2, 0xbd, 0x8a, 0xca, 0x37, 0xbd, 0x1d, 0x8f, 0x11, 0xee, 0xf0, 0xb2, + 0x7d, 0x61, 0xdd, 0xed, 0x2d, 0xac, 0xab, 0xa8, 0x29, 0xef, 0xba, 0x4a, 0x50, 0xd2, 0xa5, 0x8e, + 0xc6, 0xbf, 0x08, 0xbf, 0xbb, 0xc9, 0x81, 0x37, 0x30, 0xeb, 0x8f, 0x96, 0x47, 0xfd, 0xc1, 0xeb, + 0x51, 0x7e, 0x99, 0x01, 0xff, 0x1d, 0xe1, 0x46, 0x32, 0x59, 0xe4, 0x3d, 0xdc, 0x62, 0x21, 0xff, + 0x5c, 0x04, 0x51, 0x28, 0x7b, 0xa8, 0x5f, 0x1f, 0xb4, 0xec, 0x6e, 0x3c, 0xd7, 0x5b, 0x87, 0xc7, + 0xc3, 0x2c, 0x48, 0xcb, 0x3c, 0xd9, 0xc7, 0x6d, 0x16, 0xf2, 0xaf, 0x40, 0x24, 0x3c, 0x32, 0xd6, + 0x2d, 0xfb, 0x6a, 0x3c, 0xd7, 0xdb, 0x87, 0xc7, 0xc3, 0x22, 0x4c, 0xab, 0xdf, 0x24, 0xf8, 0x02, + 0x64, 0x10, 0x09, 0x27, 0x7f, 0x51, 0x72, 0x7c, 0x5a, 0x04, 0x69, 0x99, 0x37, 0xfe, 0x42, 0x98, + 0xac, 0xbe, 0x19, 0xe4, 0x16, 0xc6, 0xc1, 0xe2, 0x94, 0x93, 0xd4, 0xd3, 0xb1, 0x5a, 0x44, 0x9f, + 0xcf, 0xf5, 0xee, 0xe2, 0x94, 0xce, 0x7a, 0xa5, 0x84, 0x30, 0xdc, 0x48, 0xf6, 0x27, 0x7f, 0x5a, + 0xb7, 0xde, 0xcd, 0xc5, 0xfe, 0x27, 0x27, 0x9a, 0x42, 0x1b, 0x80, 0xaf, 0xbd, 0xf8, 0xd3, 0x82, + 0x58, 0xb8, 0x95, 0xdc, 0x0d, 0x32, 0x64, 0x4e, 0x71, 0x75, 0x5c, 0xcf, 0x4b, 0x5b, 0xf7, 0x8a, + 0x04, 0x2d, 0xbf, 0x59, 0x5c, 0x33, 0xb5, 0x4d, 0xd7, 0x8c, 0x6d, 0x9e, 0x5f, 0x68, 0x3b, 0x4f, + 0x2e, 0xb4, 0x9d, 0xa7, 0x17, 0xda, 0xce, 0xe3, 0x58, 0x43, 0xe7, 0xb1, 0x86, 0x9e, 0xc4, 0x1a, + 0x7a, 0x1a, 0x6b, 0xe8, 0x9f, 0x58, 0x43, 0xbf, 0x3d, 0xd3, 0x76, 0xbe, 0x69, 0x16, 0x7c, 0xff, + 0x0f, 0x00, 0x00, 0xff, 0xff, 0x2c, 0x2c, 0x38, 0x31, 0xe3, 0x0a, 0x00, 0x00, +} diff --git a/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/generated.proto b/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/generated.proto new file mode 100644 index 00000000..42ee4fb6 --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/generated.proto @@ -0,0 +1,203 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + + +// This file was autogenerated by go-to-protobuf. Do not edit it manually! + +syntax = 'proto2'; + +package k8s.io.kubernetes.pkg.apis.admissionregistration.v1alpha1; + +import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; +import "k8s.io/apimachinery/pkg/runtime/generated.proto"; +import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; +import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; + +// Package-wide variables from generator "generated". +option go_package = "v1alpha1"; + +// AdmissionHookClientConfig contains the information to make a TLS +// connection with the webhook +message AdmissionHookClientConfig { + // Service is a reference to the service for this webhook. If there is only + // one port open for the service, that port will be used. If there are multiple + // ports open, port 443 will be used if it is open, otherwise it is an error. + // Required + optional ServiceReference service = 1; + + // CABundle is a PEM encoded CA bundle which will be used to validate webhook's server certificate. + // Required + optional bytes caBundle = 2; +} + +// ExternalAdmissionHook describes an external admission webhook and the +// resources and operations it applies to. +message ExternalAdmissionHook { + // The name of the external admission webhook. + // Name should be fully qualified, e.g., imagepolicy.kubernetes.io, where + // "imagepolicy" is the name of the webhook, and kubernetes.io is the name + // of the organization. + // Required. + optional string name = 1; + + // ClientConfig defines how to communicate with the hook. + // Required + optional AdmissionHookClientConfig clientConfig = 2; + + // Rules describes what operations on what resources/subresources the webhook cares about. + // The webhook cares about an operation if it matches _any_ Rule. + repeated RuleWithOperations rules = 3; + + // FailurePolicy defines how unrecognized errors from the admission endpoint are handled - + // allowed values are Ignore or Fail. Defaults to Ignore. + // +optional + optional string failurePolicy = 4; +} + +// ExternalAdmissionHookConfiguration describes the configuration of initializers. +message ExternalAdmissionHookConfiguration { + // Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. + // +optional + optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; + + // ExternalAdmissionHooks is a list of external admission webhooks and the + // affected resources and operations. + // +optional + // +patchMergeKey=name + // +patchStrategy=merge + repeated ExternalAdmissionHook externalAdmissionHooks = 2; +} + +// ExternalAdmissionHookConfigurationList is a list of ExternalAdmissionHookConfiguration. +message ExternalAdmissionHookConfigurationList { + // Standard list metadata. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + // +optional + optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; + + // List of ExternalAdmissionHookConfiguration. + repeated ExternalAdmissionHookConfiguration items = 2; +} + +// Initializer describes the name and the failure policy of an initializer, and +// what resources it applies to. +message Initializer { + // 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 + optional string name = 1; + + // 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. + 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. +message InitializerConfiguration { + // Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. + // +optional + optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; + + // Initializers is a list of resources and their default initializers + // Order-sensitive. + // When merging multiple InitializerConfigurations, we sort the initializers + // from different InitializerConfigurations by the name of the + // InitializerConfigurations; the order of the initializers from the same + // InitializerConfiguration is preserved. + // +patchMergeKey=name + // +patchStrategy=merge + // +optional + repeated Initializer initializers = 2; +} + +// InitializerConfigurationList is a list of InitializerConfiguration. +message InitializerConfigurationList { + // Standard list metadata. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + // +optional + optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; + + // List of InitializerConfiguration. + repeated InitializerConfiguration items = 2; +} + +// Rule is a tuple of APIGroups, APIVersion, and Resources.It is recommended +// to make sure that all the tuple expansions are valid. +message Rule { + // APIGroups is the API groups the resources belong to. '*' is all groups. + // If '*' is present, the length of the slice must be one. + // Required. + repeated string apiGroups = 1; + + // APIVersions is the API versions the resources belong to. '*' is all versions. + // If '*' is present, the length of the slice must be one. + // Required. + repeated string apiVersions = 2; + + // Resources is a list of resources this rule applies to. + // + // For example: + // 'pods' means pods. + // 'pods/log' means the log subresource of pods. + // '*' means all resources, but not subresources. + // 'pods/*' means all subresources of pods. + // '*/scale' means all scale subresources. + // '*/*' means all resources and their subresources. + // + // If wildcard is present, the validation rule will ensure resources do not + // overlap with each other. + // + // Depending on the enclosing object, subresources might not be allowed. + // Required. + repeated string resources = 3; +} + +// RuleWithOperations is a tuple of Operations and Resources. It is recommended to make +// sure that all the tuple expansions are valid. +message RuleWithOperations { + // Operations is the operations the admission hook cares about - CREATE, UPDATE, or * + // for all operations. + // If '*' is present, the length of the slice must be one. + // Required. + repeated string operations = 1; + + // Rule is embedded, it describes other criteria of the rule, like + // APIGroups, APIVersions, Resources, etc. + optional Rule rule = 2; +} + +// ServiceReference holds a reference to Service.legacy.k8s.io +message ServiceReference { + // Namespace is the namespace of the service + // Required + optional string namespace = 1; + + // Name is the name of the service + // Required + optional string name = 2; +} + diff --git a/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/register.go b/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/register.go new file mode 100644 index 00000000..10fa4a16 --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/register.go @@ -0,0 +1,60 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1alpha1 + +import ( + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/apimachinery/pkg/runtime/schema" +) + +const GroupName = "admissionregistration.k8s.io" + +// SchemeGroupVersion is group version used to register these objects +var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1alpha1"} + +// Resource takes an unqualified resource and returns a Group qualified GroupResource +func Resource(resource string) schema.GroupResource { + return SchemeGroupVersion.WithResource(resource).GroupResource() +} + +var ( + // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. + // localSchemeBuilder and AddToScheme will stay in k8s.io/kubernetes. + SchemeBuilder runtime.SchemeBuilder + localSchemeBuilder = &SchemeBuilder + AddToScheme = localSchemeBuilder.AddToScheme +) + +func init() { + // We only register manually written functions here. The registration of the + // generated functions takes place in the generated files. The separation + // makes the code compile even when the generated files are missing. + localSchemeBuilder.Register(addKnownTypes, addDefaultingFuncs) +} + +// Adds the list of known types to scheme. +func addKnownTypes(scheme *runtime.Scheme) error { + scheme.AddKnownTypes(SchemeGroupVersion, + &InitializerConfiguration{}, + &InitializerConfigurationList{}, + &ExternalAdmissionHookConfiguration{}, + &ExternalAdmissionHookConfigurationList{}, + ) + metav1.AddToGroupVersion(scheme, SchemeGroupVersion) + return nil +} diff --git a/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/types.generated.go b/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/types.generated.go new file mode 100644 index 00000000..8a656373 --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/types.generated.go @@ -0,0 +1,4232 @@ +/* +Copyright 2016 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// ************************************************************ +// DO NOT EDIT. +// THIS FILE IS AUTO-GENERATED BY codecgen. +// ************************************************************ + +package v1alpha1 + +import ( + "errors" + "fmt" + codec1978 "github.com/ugorji/go/codec" + pkg1_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + pkg2_types "k8s.io/apimachinery/pkg/types" + "reflect" + "runtime" + time "time" +) + +const ( + // ----- content types ---- + codecSelferC_UTF81234 = 1 + codecSelferC_RAW1234 = 0 + // ----- value types used ---- + codecSelferValueTypeArray1234 = 10 + codecSelferValueTypeMap1234 = 9 + // ----- containerStateValues ---- + codecSelfer_containerMapKey1234 = 2 + codecSelfer_containerMapValue1234 = 3 + codecSelfer_containerMapEnd1234 = 4 + codecSelfer_containerArrayElem1234 = 6 + codecSelfer_containerArrayEnd1234 = 7 +) + +var ( + codecSelferBitsize1234 = uint8(reflect.TypeOf(uint(0)).Bits()) + codecSelferOnlyMapOrArrayEncodeToStructErr1234 = errors.New(`only encoded map or array can be decoded into a struct`) +) + +type codecSelfer1234 struct{} + +func init() { + if codec1978.GenVersion != 5 { + _, file, _, _ := runtime.Caller(0) + err := fmt.Errorf("codecgen version mismatch: current: %v, need %v. Re-generate file: %v", + 5, codec1978.GenVersion, file) + panic(err) + } + if false { // reference the types, but skip this branch at build/run time + var v0 pkg1_v1.TypeMeta + var v1 pkg2_types.UID + var v2 time.Time + _, _, _ = v0, v1, v2 + } +} + +func (x *InitializerConfiguration) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [4]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.Kind != "" + yyq2[1] = x.APIVersion != "" + yyq2[2] = true + yyq2[3] = len(x.Initializers) != 0 + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(4) + } else { + yynn2 = 0 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("kind")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("apiVersion")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yy10 := &x.ObjectMeta + yym11 := z.EncBinary() + _ = yym11 + if false { + } else if z.HasExtensions() && z.EncExt(yy10) { + } else { + z.EncFallback(yy10) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("metadata")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy12 := &x.ObjectMeta + yym13 := z.EncBinary() + _ = yym13 + if false { + } else if z.HasExtensions() && z.EncExt(yy12) { + } else { + z.EncFallback(yy12) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[3] { + if x.Initializers == nil { + r.EncodeNil() + } else { + yym15 := z.EncBinary() + _ = yym15 + if false { + } else { + h.encSliceInitializer(([]Initializer)(x.Initializers), e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[3] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("initializers")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Initializers == nil { + r.EncodeNil() + } else { + yym16 := z.EncBinary() + _ = yym16 + if false { + } else { + h.encSliceInitializer(([]Initializer)(x.Initializers), e) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *InitializerConfiguration) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *InitializerConfiguration) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "kind": + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv4 := &x.Kind + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "apiVersion": + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv6 := &x.APIVersion + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + case "metadata": + if r.TryDecodeAsNil() { + x.ObjectMeta = pkg1_v1.ObjectMeta{} + } else { + yyv8 := &x.ObjectMeta + yym9 := z.DecBinary() + _ = yym9 + if false { + } else if z.HasExtensions() && z.DecExt(yyv8) { + } else { + z.DecFallback(yyv8, false) + } + } + case "initializers": + if r.TryDecodeAsNil() { + x.Initializers = nil + } else { + yyv10 := &x.Initializers + yym11 := z.DecBinary() + _ = yym11 + if false { + } else { + h.decSliceInitializer((*[]Initializer)(yyv10), d) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *InitializerConfiguration) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj12 int + var yyb12 bool + var yyhl12 bool = l >= 0 + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv13 := &x.Kind + yym14 := z.DecBinary() + _ = yym14 + if false { + } else { + *((*string)(yyv13)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv15 := &x.APIVersion + yym16 := z.DecBinary() + _ = yym16 + if false { + } else { + *((*string)(yyv15)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ObjectMeta = pkg1_v1.ObjectMeta{} + } else { + yyv17 := &x.ObjectMeta + yym18 := z.DecBinary() + _ = yym18 + if false { + } else if z.HasExtensions() && z.DecExt(yyv17) { + } else { + z.DecFallback(yyv17, false) + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Initializers = nil + } else { + yyv19 := &x.Initializers + yym20 := z.DecBinary() + _ = yym20 + if false { + } else { + h.decSliceInitializer((*[]Initializer)(yyv19), d) + } + } + for { + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj12-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *InitializerConfigurationList) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [4]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.Kind != "" + yyq2[1] = x.APIVersion != "" + yyq2[2] = true + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(4) + } else { + yynn2 = 1 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("kind")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("apiVersion")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yy10 := &x.ListMeta + yym11 := z.EncBinary() + _ = yym11 + if false { + } else if z.HasExtensions() && z.EncExt(yy10) { + } else { + z.EncFallback(yy10) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("metadata")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy12 := &x.ListMeta + yym13 := z.EncBinary() + _ = yym13 + if false { + } else if z.HasExtensions() && z.EncExt(yy12) { + } else { + z.EncFallback(yy12) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if x.Items == nil { + r.EncodeNil() + } else { + yym15 := z.EncBinary() + _ = yym15 + if false { + } else { + h.encSliceInitializerConfiguration(([]InitializerConfiguration)(x.Items), e) + } + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("items")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Items == nil { + r.EncodeNil() + } else { + yym16 := z.EncBinary() + _ = yym16 + if false { + } else { + h.encSliceInitializerConfiguration(([]InitializerConfiguration)(x.Items), e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *InitializerConfigurationList) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *InitializerConfigurationList) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "kind": + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv4 := &x.Kind + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "apiVersion": + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv6 := &x.APIVersion + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + case "metadata": + if r.TryDecodeAsNil() { + x.ListMeta = pkg1_v1.ListMeta{} + } else { + yyv8 := &x.ListMeta + yym9 := z.DecBinary() + _ = yym9 + if false { + } else if z.HasExtensions() && z.DecExt(yyv8) { + } else { + z.DecFallback(yyv8, false) + } + } + case "items": + if r.TryDecodeAsNil() { + x.Items = nil + } else { + yyv10 := &x.Items + yym11 := z.DecBinary() + _ = yym11 + if false { + } else { + h.decSliceInitializerConfiguration((*[]InitializerConfiguration)(yyv10), d) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *InitializerConfigurationList) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj12 int + var yyb12 bool + var yyhl12 bool = l >= 0 + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv13 := &x.Kind + yym14 := z.DecBinary() + _ = yym14 + if false { + } else { + *((*string)(yyv13)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv15 := &x.APIVersion + yym16 := z.DecBinary() + _ = yym16 + if false { + } else { + *((*string)(yyv15)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ListMeta = pkg1_v1.ListMeta{} + } else { + yyv17 := &x.ListMeta + yym18 := z.DecBinary() + _ = yym18 + if false { + } else if z.HasExtensions() && z.DecExt(yyv17) { + } else { + z.DecFallback(yyv17, false) + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Items = nil + } else { + yyv19 := &x.Items + yym20 := z.DecBinary() + _ = yym20 + if false { + } else { + h.decSliceInitializerConfiguration((*[]InitializerConfiguration)(yyv19), d) + } + } + for { + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj12-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *Initializer) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [3]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) + } else { + yynn2 = 1 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Name)) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("name")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Name)) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + if x.Rules == nil { + r.EncodeNil() + } else { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + h.encSliceRule(([]Rule)(x.Rules), e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("rules")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Rules == nil { + r.EncodeNil() + } else { + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + h.encSliceRule(([]Rule)(x.Rules), e) + } + } + } + } + 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 { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *Initializer) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *Initializer) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "name": + if r.TryDecodeAsNil() { + x.Name = "" + } else { + yyv4 := &x.Name + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "rules": + if r.TryDecodeAsNil() { + x.Rules = nil + } else { + yyv6 := &x.Rules + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + 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 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +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 + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Name = "" + } else { + yyv10 := &x.Name + yym11 := z.DecBinary() + _ = yym11 + if false { + } else { + *((*string)(yyv10)) = r.DecodeString() + } + } + yyj9++ + if yyhl9 { + yyb9 = yyj9 > l + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Rules = nil + } else { + yyv12 := &x.Rules + yym13 := z.DecBinary() + _ = yym13 + if false { + } else { + h.decSliceRule((*[]Rule)(yyv12), 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 + } else { + yyb9 = r.CheckBreak() + } + if yyb9 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj9-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *Rule) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [3]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = len(x.APIGroups) != 0 + yyq2[1] = len(x.APIVersions) != 0 + yyq2[2] = len(x.Resources) != 0 + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(3) + } else { + yynn2 = 0 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + if x.APIGroups == nil { + r.EncodeNil() + } else { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + z.F.EncSliceStringV(x.APIGroups, false, e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("apiGroups")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.APIGroups == nil { + r.EncodeNil() + } else { + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + z.F.EncSliceStringV(x.APIGroups, false, e) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + if x.APIVersions == nil { + r.EncodeNil() + } else { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + z.F.EncSliceStringV(x.APIVersions, false, e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("apiVersions")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.APIVersions == nil { + r.EncodeNil() + } else { + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + z.F.EncSliceStringV(x.APIVersions, false, e) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + if x.Resources == nil { + r.EncodeNil() + } else { + yym10 := z.EncBinary() + _ = yym10 + if false { + } else { + z.F.EncSliceStringV(x.Resources, false, e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("resources")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Resources == nil { + r.EncodeNil() + } else { + yym11 := z.EncBinary() + _ = yym11 + if false { + } else { + z.F.EncSliceStringV(x.Resources, false, e) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *Rule) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *Rule) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "apiGroups": + if r.TryDecodeAsNil() { + x.APIGroups = nil + } else { + yyv4 := &x.APIGroups + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + z.F.DecSliceStringX(yyv4, false, d) + } + } + case "apiVersions": + if r.TryDecodeAsNil() { + x.APIVersions = nil + } else { + yyv6 := &x.APIVersions + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + z.F.DecSliceStringX(yyv6, false, d) + } + } + case "resources": + if r.TryDecodeAsNil() { + x.Resources = nil + } else { + yyv8 := &x.Resources + yym9 := z.DecBinary() + _ = yym9 + if false { + } else { + z.F.DecSliceStringX(yyv8, false, d) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *Rule) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj10 int + var yyb10 bool + var yyhl10 bool = l >= 0 + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l + } else { + yyb10 = r.CheckBreak() + } + if yyb10 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.APIGroups = nil + } else { + yyv11 := &x.APIGroups + yym12 := z.DecBinary() + _ = yym12 + if false { + } else { + z.F.DecSliceStringX(yyv11, false, d) + } + } + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l + } else { + yyb10 = r.CheckBreak() + } + if yyb10 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.APIVersions = nil + } else { + yyv13 := &x.APIVersions + yym14 := z.DecBinary() + _ = yym14 + if false { + } else { + z.F.DecSliceStringX(yyv13, false, d) + } + } + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l + } else { + yyb10 = r.CheckBreak() + } + if yyb10 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Resources = nil + } else { + yyv15 := &x.Resources + yym16 := z.DecBinary() + _ = yym16 + if false { + } else { + z.F.DecSliceStringX(yyv15, false, d) + } + } + for { + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l + } else { + yyb10 = r.CheckBreak() + } + if yyb10 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj10-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x FailurePolicyType) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x)) + } +} + +func (x *FailurePolicyType) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + *((*string)(x)) = r.DecodeString() + } +} + +func (x *ExternalAdmissionHookConfiguration) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [4]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.Kind != "" + yyq2[1] = x.APIVersion != "" + yyq2[2] = true + yyq2[3] = len(x.ExternalAdmissionHooks) != 0 + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(4) + } else { + yynn2 = 0 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("kind")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("apiVersion")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yy10 := &x.ObjectMeta + yym11 := z.EncBinary() + _ = yym11 + if false { + } else if z.HasExtensions() && z.EncExt(yy10) { + } else { + z.EncFallback(yy10) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("metadata")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy12 := &x.ObjectMeta + yym13 := z.EncBinary() + _ = yym13 + if false { + } else if z.HasExtensions() && z.EncExt(yy12) { + } else { + z.EncFallback(yy12) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[3] { + if x.ExternalAdmissionHooks == nil { + r.EncodeNil() + } else { + yym15 := z.EncBinary() + _ = yym15 + if false { + } else { + h.encSliceExternalAdmissionHook(([]ExternalAdmissionHook)(x.ExternalAdmissionHooks), e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[3] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("externalAdmissionHooks")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.ExternalAdmissionHooks == nil { + r.EncodeNil() + } else { + yym16 := z.EncBinary() + _ = yym16 + if false { + } else { + h.encSliceExternalAdmissionHook(([]ExternalAdmissionHook)(x.ExternalAdmissionHooks), e) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *ExternalAdmissionHookConfiguration) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *ExternalAdmissionHookConfiguration) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "kind": + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv4 := &x.Kind + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "apiVersion": + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv6 := &x.APIVersion + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + case "metadata": + if r.TryDecodeAsNil() { + x.ObjectMeta = pkg1_v1.ObjectMeta{} + } else { + yyv8 := &x.ObjectMeta + yym9 := z.DecBinary() + _ = yym9 + if false { + } else if z.HasExtensions() && z.DecExt(yyv8) { + } else { + z.DecFallback(yyv8, false) + } + } + case "externalAdmissionHooks": + if r.TryDecodeAsNil() { + x.ExternalAdmissionHooks = nil + } else { + yyv10 := &x.ExternalAdmissionHooks + yym11 := z.DecBinary() + _ = yym11 + if false { + } else { + h.decSliceExternalAdmissionHook((*[]ExternalAdmissionHook)(yyv10), d) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *ExternalAdmissionHookConfiguration) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj12 int + var yyb12 bool + var yyhl12 bool = l >= 0 + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv13 := &x.Kind + yym14 := z.DecBinary() + _ = yym14 + if false { + } else { + *((*string)(yyv13)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv15 := &x.APIVersion + yym16 := z.DecBinary() + _ = yym16 + if false { + } else { + *((*string)(yyv15)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ObjectMeta = pkg1_v1.ObjectMeta{} + } else { + yyv17 := &x.ObjectMeta + yym18 := z.DecBinary() + _ = yym18 + if false { + } else if z.HasExtensions() && z.DecExt(yyv17) { + } else { + z.DecFallback(yyv17, false) + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ExternalAdmissionHooks = nil + } else { + yyv19 := &x.ExternalAdmissionHooks + yym20 := z.DecBinary() + _ = yym20 + if false { + } else { + h.decSliceExternalAdmissionHook((*[]ExternalAdmissionHook)(yyv19), d) + } + } + for { + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj12-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *ExternalAdmissionHookConfigurationList) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [4]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.Kind != "" + yyq2[1] = x.APIVersion != "" + yyq2[2] = true + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(4) + } else { + yynn2 = 1 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("kind")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("apiVersion")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yy10 := &x.ListMeta + yym11 := z.EncBinary() + _ = yym11 + if false { + } else if z.HasExtensions() && z.EncExt(yy10) { + } else { + z.EncFallback(yy10) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("metadata")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy12 := &x.ListMeta + yym13 := z.EncBinary() + _ = yym13 + if false { + } else if z.HasExtensions() && z.EncExt(yy12) { + } else { + z.EncFallback(yy12) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if x.Items == nil { + r.EncodeNil() + } else { + yym15 := z.EncBinary() + _ = yym15 + if false { + } else { + h.encSliceExternalAdmissionHookConfiguration(([]ExternalAdmissionHookConfiguration)(x.Items), e) + } + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("items")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Items == nil { + r.EncodeNil() + } else { + yym16 := z.EncBinary() + _ = yym16 + if false { + } else { + h.encSliceExternalAdmissionHookConfiguration(([]ExternalAdmissionHookConfiguration)(x.Items), e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *ExternalAdmissionHookConfigurationList) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *ExternalAdmissionHookConfigurationList) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "kind": + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv4 := &x.Kind + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "apiVersion": + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv6 := &x.APIVersion + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + case "metadata": + if r.TryDecodeAsNil() { + x.ListMeta = pkg1_v1.ListMeta{} + } else { + yyv8 := &x.ListMeta + yym9 := z.DecBinary() + _ = yym9 + if false { + } else if z.HasExtensions() && z.DecExt(yyv8) { + } else { + z.DecFallback(yyv8, false) + } + } + case "items": + if r.TryDecodeAsNil() { + x.Items = nil + } else { + yyv10 := &x.Items + yym11 := z.DecBinary() + _ = yym11 + if false { + } else { + h.decSliceExternalAdmissionHookConfiguration((*[]ExternalAdmissionHookConfiguration)(yyv10), d) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *ExternalAdmissionHookConfigurationList) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj12 int + var yyb12 bool + var yyhl12 bool = l >= 0 + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv13 := &x.Kind + yym14 := z.DecBinary() + _ = yym14 + if false { + } else { + *((*string)(yyv13)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv15 := &x.APIVersion + yym16 := z.DecBinary() + _ = yym16 + if false { + } else { + *((*string)(yyv15)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ListMeta = pkg1_v1.ListMeta{} + } else { + yyv17 := &x.ListMeta + yym18 := z.DecBinary() + _ = yym18 + if false { + } else if z.HasExtensions() && z.DecExt(yyv17) { + } else { + z.DecFallback(yyv17, false) + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Items = nil + } else { + yyv19 := &x.Items + yym20 := z.DecBinary() + _ = yym20 + if false { + } else { + h.decSliceExternalAdmissionHookConfiguration((*[]ExternalAdmissionHookConfiguration)(yyv19), d) + } + } + for { + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj12-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *ExternalAdmissionHook) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [4]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[2] = len(x.Rules) != 0 + yyq2[3] = x.FailurePolicy != nil + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(4) + } else { + yynn2 = 2 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Name)) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("name")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Name)) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy7 := &x.ClientConfig + yy7.CodecEncodeSelf(e) + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("clientConfig")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy9 := &x.ClientConfig + yy9.CodecEncodeSelf(e) + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + if x.Rules == nil { + r.EncodeNil() + } else { + yym12 := z.EncBinary() + _ = yym12 + if false { + } else { + h.encSliceRuleWithOperations(([]RuleWithOperations)(x.Rules), e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("rules")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Rules == nil { + r.EncodeNil() + } else { + yym13 := z.EncBinary() + _ = yym13 + if false { + } else { + h.encSliceRuleWithOperations(([]RuleWithOperations)(x.Rules), e) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[3] { + if x.FailurePolicy == nil { + r.EncodeNil() + } else { + yy15 := *x.FailurePolicy + yy15.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[3] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("failurePolicy")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.FailurePolicy == nil { + r.EncodeNil() + } else { + yy17 := *x.FailurePolicy + yy17.CodecEncodeSelf(e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *ExternalAdmissionHook) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *ExternalAdmissionHook) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "name": + if r.TryDecodeAsNil() { + x.Name = "" + } else { + yyv4 := &x.Name + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "clientConfig": + if r.TryDecodeAsNil() { + x.ClientConfig = AdmissionHookClientConfig{} + } else { + yyv6 := &x.ClientConfig + yyv6.CodecDecodeSelf(d) + } + case "rules": + if r.TryDecodeAsNil() { + x.Rules = nil + } else { + yyv7 := &x.Rules + yym8 := z.DecBinary() + _ = yym8 + if false { + } else { + h.decSliceRuleWithOperations((*[]RuleWithOperations)(yyv7), 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 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *ExternalAdmissionHook) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj10 int + var yyb10 bool + var yyhl10 bool = l >= 0 + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l + } else { + yyb10 = r.CheckBreak() + } + if yyb10 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Name = "" + } else { + yyv11 := &x.Name + yym12 := z.DecBinary() + _ = yym12 + if false { + } else { + *((*string)(yyv11)) = r.DecodeString() + } + } + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l + } else { + yyb10 = r.CheckBreak() + } + if yyb10 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ClientConfig = AdmissionHookClientConfig{} + } else { + yyv13 := &x.ClientConfig + yyv13.CodecDecodeSelf(d) + } + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l + } else { + yyb10 = r.CheckBreak() + } + if yyb10 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Rules = nil + } else { + yyv14 := &x.Rules + yym15 := z.DecBinary() + _ = yym15 + if false { + } else { + h.decSliceRuleWithOperations((*[]RuleWithOperations)(yyv14), d) + } + } + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l + } else { + yyb10 = r.CheckBreak() + } + if yyb10 { + 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 { + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l + } else { + yyb10 = r.CheckBreak() + } + if yyb10 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj10-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *RuleWithOperations) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [4]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = len(x.Operations) != 0 + yyq2[1] = len(x.APIGroups) != 0 + yyq2[2] = len(x.APIVersions) != 0 + yyq2[3] = len(x.Resources) != 0 + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(4) + } else { + yynn2 = 0 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + if x.Operations == nil { + r.EncodeNil() + } else { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + h.encSliceOperationType(([]OperationType)(x.Operations), e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("operations")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Operations == nil { + r.EncodeNil() + } else { + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + h.encSliceOperationType(([]OperationType)(x.Operations), e) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + if x.APIGroups == nil { + r.EncodeNil() + } else { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + z.F.EncSliceStringV(x.APIGroups, false, e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("apiGroups")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.APIGroups == nil { + r.EncodeNil() + } else { + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + z.F.EncSliceStringV(x.APIGroups, false, e) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + if x.APIVersions == nil { + r.EncodeNil() + } else { + yym10 := z.EncBinary() + _ = yym10 + if false { + } else { + z.F.EncSliceStringV(x.APIVersions, false, e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("apiVersions")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.APIVersions == nil { + r.EncodeNil() + } else { + yym11 := z.EncBinary() + _ = yym11 + if false { + } else { + z.F.EncSliceStringV(x.APIVersions, false, e) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[3] { + if x.Resources == nil { + r.EncodeNil() + } else { + yym13 := z.EncBinary() + _ = yym13 + if false { + } else { + z.F.EncSliceStringV(x.Resources, false, e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[3] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("resources")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Resources == nil { + r.EncodeNil() + } else { + yym14 := z.EncBinary() + _ = yym14 + if false { + } else { + z.F.EncSliceStringV(x.Resources, false, e) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *RuleWithOperations) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *RuleWithOperations) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "operations": + if r.TryDecodeAsNil() { + x.Operations = nil + } else { + yyv4 := &x.Operations + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + h.decSliceOperationType((*[]OperationType)(yyv4), d) + } + } + case "apiGroups": + if r.TryDecodeAsNil() { + x.APIGroups = nil + } else { + yyv6 := &x.APIGroups + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + z.F.DecSliceStringX(yyv6, false, d) + } + } + case "apiVersions": + if r.TryDecodeAsNil() { + x.APIVersions = nil + } else { + yyv8 := &x.APIVersions + yym9 := z.DecBinary() + _ = yym9 + if false { + } else { + z.F.DecSliceStringX(yyv8, false, d) + } + } + case "resources": + if r.TryDecodeAsNil() { + x.Resources = nil + } else { + yyv10 := &x.Resources + yym11 := z.DecBinary() + _ = yym11 + if false { + } else { + z.F.DecSliceStringX(yyv10, false, d) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *RuleWithOperations) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj12 int + var yyb12 bool + var yyhl12 bool = l >= 0 + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Operations = nil + } else { + yyv13 := &x.Operations + yym14 := z.DecBinary() + _ = yym14 + if false { + } else { + h.decSliceOperationType((*[]OperationType)(yyv13), d) + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.APIGroups = nil + } else { + yyv15 := &x.APIGroups + yym16 := z.DecBinary() + _ = yym16 + if false { + } else { + z.F.DecSliceStringX(yyv15, false, d) + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.APIVersions = nil + } else { + yyv17 := &x.APIVersions + yym18 := z.DecBinary() + _ = yym18 + if false { + } else { + z.F.DecSliceStringX(yyv17, false, d) + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Resources = nil + } else { + yyv19 := &x.Resources + yym20 := z.DecBinary() + _ = yym20 + if false { + } else { + z.F.DecSliceStringX(yyv19, false, d) + } + } + for { + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj12-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x OperationType) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x)) + } +} + +func (x *OperationType) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + *((*string)(x)) = r.DecodeString() + } +} + +func (x *AdmissionHookClientConfig) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [2]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(2) + } else { + yynn2 = 2 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy4 := &x.Service + yy4.CodecEncodeSelf(e) + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("service")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy6 := &x.Service + yy6.CodecEncodeSelf(e) + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if x.CABundle == nil { + r.EncodeNil() + } else { + yym9 := z.EncBinary() + _ = yym9 + if false { + } else { + r.EncodeStringBytes(codecSelferC_RAW1234, []byte(x.CABundle)) + } + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("caBundle")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.CABundle == nil { + r.EncodeNil() + } else { + yym10 := z.EncBinary() + _ = yym10 + if false { + } else { + r.EncodeStringBytes(codecSelferC_RAW1234, []byte(x.CABundle)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *AdmissionHookClientConfig) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *AdmissionHookClientConfig) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "service": + if r.TryDecodeAsNil() { + x.Service = ServiceReference{} + } else { + yyv4 := &x.Service + yyv4.CodecDecodeSelf(d) + } + case "caBundle": + if r.TryDecodeAsNil() { + x.CABundle = nil + } else { + yyv5 := &x.CABundle + yym6 := z.DecBinary() + _ = yym6 + if false { + } else { + *yyv5 = r.DecodeBytes(*(*[]byte)(yyv5), false, false) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *AdmissionHookClientConfig) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj7 int + var yyb7 bool + var yyhl7 bool = l >= 0 + yyj7++ + if yyhl7 { + yyb7 = yyj7 > l + } else { + yyb7 = r.CheckBreak() + } + if yyb7 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Service = ServiceReference{} + } else { + yyv8 := &x.Service + yyv8.CodecDecodeSelf(d) + } + yyj7++ + if yyhl7 { + yyb7 = yyj7 > l + } else { + yyb7 = r.CheckBreak() + } + if yyb7 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.CABundle = nil + } else { + yyv9 := &x.CABundle + yym10 := z.DecBinary() + _ = yym10 + if false { + } else { + *yyv9 = r.DecodeBytes(*(*[]byte)(yyv9), false, false) + } + } + for { + yyj7++ + if yyhl7 { + yyb7 = yyj7 > l + } else { + yyb7 = r.CheckBreak() + } + if yyb7 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj7-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *ServiceReference) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [2]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(2) + } else { + yynn2 = 2 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Namespace)) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("namespace")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Namespace)) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Name)) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("name")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Name)) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *ServiceReference) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *ServiceReference) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "namespace": + if r.TryDecodeAsNil() { + x.Namespace = "" + } else { + yyv4 := &x.Namespace + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "name": + if r.TryDecodeAsNil() { + x.Name = "" + } else { + yyv6 := &x.Name + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *ServiceReference) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj8 int + var yyb8 bool + var yyhl8 bool = l >= 0 + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Namespace = "" + } else { + yyv9 := &x.Namespace + yym10 := z.DecBinary() + _ = yym10 + if false { + } else { + *((*string)(yyv9)) = r.DecodeString() + } + } + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Name = "" + } else { + yyv11 := &x.Name + yym12 := z.DecBinary() + _ = yym12 + if false { + } else { + *((*string)(yyv11)) = r.DecodeString() + } + } + for { + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj8-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) encSliceInitializer(v []Initializer, e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + r.EncodeArrayStart(len(v)) + for _, yyv1 := range v { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy2 := &yyv1 + yy2.CodecEncodeSelf(e) + } + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) decSliceInitializer(v *[]Initializer, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + + yyv1 := *v + yyh1, yyl1 := z.DecSliceHelperStart() + var yyc1 bool + _ = yyc1 + if yyl1 == 0 { + if yyv1 == nil { + yyv1 = []Initializer{} + yyc1 = true + } else if len(yyv1) != 0 { + yyv1 = yyv1[:0] + yyc1 = true + } + } else if yyl1 > 0 { + var yyrr1, yyrl1 int + var yyrt1 bool + _, _ = yyrl1, yyrt1 + yyrr1 = yyl1 // len(yyv1) + if yyl1 > cap(yyv1) { + + yyrg1 := len(yyv1) > 0 + yyv21 := yyv1 + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 48) + if yyrt1 { + if yyrl1 <= cap(yyv1) { + yyv1 = yyv1[:yyrl1] + } else { + yyv1 = make([]Initializer, yyrl1) + } + } else { + yyv1 = make([]Initializer, yyrl1) + } + yyc1 = true + yyrr1 = len(yyv1) + if yyrg1 { + copy(yyv1, yyv21) + } + } else if yyl1 != len(yyv1) { + yyv1 = yyv1[:yyl1] + yyc1 = true + } + yyj1 := 0 + for ; yyj1 < yyrr1; yyj1++ { + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = Initializer{} + } else { + yyv2 := &yyv1[yyj1] + yyv2.CodecDecodeSelf(d) + } + + } + if yyrt1 { + for ; yyj1 < yyl1; yyj1++ { + yyv1 = append(yyv1, Initializer{}) + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = Initializer{} + } else { + yyv3 := &yyv1[yyj1] + yyv3.CodecDecodeSelf(d) + } + + } + } + + } else { + yyj1 := 0 + for ; !r.CheckBreak(); yyj1++ { + + if yyj1 >= len(yyv1) { + yyv1 = append(yyv1, Initializer{}) // var yyz1 Initializer + yyc1 = true + } + yyh1.ElemContainerState(yyj1) + if yyj1 < len(yyv1) { + if r.TryDecodeAsNil() { + yyv1[yyj1] = Initializer{} + } else { + yyv4 := &yyv1[yyj1] + yyv4.CodecDecodeSelf(d) + } + + } else { + z.DecSwallow() + } + + } + if yyj1 < len(yyv1) { + yyv1 = yyv1[:yyj1] + yyc1 = true + } else if yyj1 == 0 && yyv1 == nil { + yyv1 = []Initializer{} + yyc1 = true + } + } + yyh1.End() + if yyc1 { + *v = yyv1 + } +} + +func (x codecSelfer1234) encSliceInitializerConfiguration(v []InitializerConfiguration, e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + r.EncodeArrayStart(len(v)) + for _, yyv1 := range v { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy2 := &yyv1 + yy2.CodecEncodeSelf(e) + } + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) decSliceInitializerConfiguration(v *[]InitializerConfiguration, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + + yyv1 := *v + yyh1, yyl1 := z.DecSliceHelperStart() + var yyc1 bool + _ = yyc1 + if yyl1 == 0 { + if yyv1 == nil { + yyv1 = []InitializerConfiguration{} + yyc1 = true + } else if len(yyv1) != 0 { + yyv1 = yyv1[:0] + yyc1 = true + } + } else if yyl1 > 0 { + var yyrr1, yyrl1 int + var yyrt1 bool + _, _ = yyrl1, yyrt1 + yyrr1 = yyl1 // len(yyv1) + if yyl1 > cap(yyv1) { + + yyrg1 := len(yyv1) > 0 + yyv21 := yyv1 + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 288) + if yyrt1 { + if yyrl1 <= cap(yyv1) { + yyv1 = yyv1[:yyrl1] + } else { + yyv1 = make([]InitializerConfiguration, yyrl1) + } + } else { + yyv1 = make([]InitializerConfiguration, yyrl1) + } + yyc1 = true + yyrr1 = len(yyv1) + if yyrg1 { + copy(yyv1, yyv21) + } + } else if yyl1 != len(yyv1) { + yyv1 = yyv1[:yyl1] + yyc1 = true + } + yyj1 := 0 + for ; yyj1 < yyrr1; yyj1++ { + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = InitializerConfiguration{} + } else { + yyv2 := &yyv1[yyj1] + yyv2.CodecDecodeSelf(d) + } + + } + if yyrt1 { + for ; yyj1 < yyl1; yyj1++ { + yyv1 = append(yyv1, InitializerConfiguration{}) + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = InitializerConfiguration{} + } else { + yyv3 := &yyv1[yyj1] + yyv3.CodecDecodeSelf(d) + } + + } + } + + } else { + yyj1 := 0 + for ; !r.CheckBreak(); yyj1++ { + + if yyj1 >= len(yyv1) { + yyv1 = append(yyv1, InitializerConfiguration{}) // var yyz1 InitializerConfiguration + yyc1 = true + } + yyh1.ElemContainerState(yyj1) + if yyj1 < len(yyv1) { + if r.TryDecodeAsNil() { + yyv1[yyj1] = InitializerConfiguration{} + } else { + yyv4 := &yyv1[yyj1] + yyv4.CodecDecodeSelf(d) + } + + } else { + z.DecSwallow() + } + + } + if yyj1 < len(yyv1) { + yyv1 = yyv1[:yyj1] + yyc1 = true + } else if yyj1 == 0 && yyv1 == nil { + yyv1 = []InitializerConfiguration{} + yyc1 = true + } + } + yyh1.End() + if yyc1 { + *v = yyv1 + } +} + +func (x codecSelfer1234) encSliceRule(v []Rule, e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + r.EncodeArrayStart(len(v)) + for _, yyv1 := range v { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy2 := &yyv1 + yy2.CodecEncodeSelf(e) + } + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) decSliceRule(v *[]Rule, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + + yyv1 := *v + yyh1, yyl1 := z.DecSliceHelperStart() + var yyc1 bool + _ = yyc1 + if yyl1 == 0 { + if yyv1 == nil { + yyv1 = []Rule{} + yyc1 = true + } else if len(yyv1) != 0 { + yyv1 = yyv1[:0] + yyc1 = true + } + } else if yyl1 > 0 { + var yyrr1, yyrl1 int + var yyrt1 bool + _, _ = yyrl1, yyrt1 + yyrr1 = yyl1 // len(yyv1) + if yyl1 > cap(yyv1) { + + yyrg1 := len(yyv1) > 0 + yyv21 := yyv1 + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 72) + if yyrt1 { + if yyrl1 <= cap(yyv1) { + yyv1 = yyv1[:yyrl1] + } else { + yyv1 = make([]Rule, yyrl1) + } + } else { + yyv1 = make([]Rule, yyrl1) + } + yyc1 = true + yyrr1 = len(yyv1) + if yyrg1 { + copy(yyv1, yyv21) + } + } else if yyl1 != len(yyv1) { + yyv1 = yyv1[:yyl1] + yyc1 = true + } + yyj1 := 0 + for ; yyj1 < yyrr1; yyj1++ { + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = Rule{} + } else { + yyv2 := &yyv1[yyj1] + yyv2.CodecDecodeSelf(d) + } + + } + if yyrt1 { + for ; yyj1 < yyl1; yyj1++ { + yyv1 = append(yyv1, Rule{}) + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = Rule{} + } else { + yyv3 := &yyv1[yyj1] + yyv3.CodecDecodeSelf(d) + } + + } + } + + } else { + yyj1 := 0 + for ; !r.CheckBreak(); yyj1++ { + + if yyj1 >= len(yyv1) { + yyv1 = append(yyv1, Rule{}) // var yyz1 Rule + yyc1 = true + } + yyh1.ElemContainerState(yyj1) + if yyj1 < len(yyv1) { + if r.TryDecodeAsNil() { + yyv1[yyj1] = Rule{} + } else { + yyv4 := &yyv1[yyj1] + yyv4.CodecDecodeSelf(d) + } + + } else { + z.DecSwallow() + } + + } + if yyj1 < len(yyv1) { + yyv1 = yyv1[:yyj1] + yyc1 = true + } else if yyj1 == 0 && yyv1 == nil { + yyv1 = []Rule{} + yyc1 = true + } + } + yyh1.End() + if yyc1 { + *v = yyv1 + } +} + +func (x codecSelfer1234) encSliceExternalAdmissionHook(v []ExternalAdmissionHook, e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + r.EncodeArrayStart(len(v)) + for _, yyv1 := range v { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy2 := &yyv1 + yy2.CodecEncodeSelf(e) + } + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) decSliceExternalAdmissionHook(v *[]ExternalAdmissionHook, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + + yyv1 := *v + yyh1, yyl1 := z.DecSliceHelperStart() + var yyc1 bool + _ = yyc1 + if yyl1 == 0 { + if yyv1 == nil { + yyv1 = []ExternalAdmissionHook{} + yyc1 = true + } else if len(yyv1) != 0 { + yyv1 = yyv1[:0] + yyc1 = true + } + } else if yyl1 > 0 { + var yyrr1, yyrl1 int + var yyrt1 bool + _, _ = yyrl1, yyrt1 + yyrr1 = yyl1 // len(yyv1) + if yyl1 > cap(yyv1) { + + yyrg1 := len(yyv1) > 0 + yyv21 := yyv1 + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 104) + if yyrt1 { + if yyrl1 <= cap(yyv1) { + yyv1 = yyv1[:yyrl1] + } else { + yyv1 = make([]ExternalAdmissionHook, yyrl1) + } + } else { + yyv1 = make([]ExternalAdmissionHook, yyrl1) + } + yyc1 = true + yyrr1 = len(yyv1) + if yyrg1 { + copy(yyv1, yyv21) + } + } else if yyl1 != len(yyv1) { + yyv1 = yyv1[:yyl1] + yyc1 = true + } + yyj1 := 0 + for ; yyj1 < yyrr1; yyj1++ { + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = ExternalAdmissionHook{} + } else { + yyv2 := &yyv1[yyj1] + yyv2.CodecDecodeSelf(d) + } + + } + if yyrt1 { + for ; yyj1 < yyl1; yyj1++ { + yyv1 = append(yyv1, ExternalAdmissionHook{}) + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = ExternalAdmissionHook{} + } else { + yyv3 := &yyv1[yyj1] + yyv3.CodecDecodeSelf(d) + } + + } + } + + } else { + yyj1 := 0 + for ; !r.CheckBreak(); yyj1++ { + + if yyj1 >= len(yyv1) { + yyv1 = append(yyv1, ExternalAdmissionHook{}) // var yyz1 ExternalAdmissionHook + yyc1 = true + } + yyh1.ElemContainerState(yyj1) + if yyj1 < len(yyv1) { + if r.TryDecodeAsNil() { + yyv1[yyj1] = ExternalAdmissionHook{} + } else { + yyv4 := &yyv1[yyj1] + yyv4.CodecDecodeSelf(d) + } + + } else { + z.DecSwallow() + } + + } + if yyj1 < len(yyv1) { + yyv1 = yyv1[:yyj1] + yyc1 = true + } else if yyj1 == 0 && yyv1 == nil { + yyv1 = []ExternalAdmissionHook{} + yyc1 = true + } + } + yyh1.End() + if yyc1 { + *v = yyv1 + } +} + +func (x codecSelfer1234) encSliceExternalAdmissionHookConfiguration(v []ExternalAdmissionHookConfiguration, e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + r.EncodeArrayStart(len(v)) + for _, yyv1 := range v { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy2 := &yyv1 + yy2.CodecEncodeSelf(e) + } + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) decSliceExternalAdmissionHookConfiguration(v *[]ExternalAdmissionHookConfiguration, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + + yyv1 := *v + yyh1, yyl1 := z.DecSliceHelperStart() + var yyc1 bool + _ = yyc1 + if yyl1 == 0 { + if yyv1 == nil { + yyv1 = []ExternalAdmissionHookConfiguration{} + yyc1 = true + } else if len(yyv1) != 0 { + yyv1 = yyv1[:0] + yyc1 = true + } + } else if yyl1 > 0 { + var yyrr1, yyrl1 int + var yyrt1 bool + _, _ = yyrl1, yyrt1 + yyrr1 = yyl1 // len(yyv1) + if yyl1 > cap(yyv1) { + + yyrg1 := len(yyv1) > 0 + yyv21 := yyv1 + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 288) + if yyrt1 { + if yyrl1 <= cap(yyv1) { + yyv1 = yyv1[:yyrl1] + } else { + yyv1 = make([]ExternalAdmissionHookConfiguration, yyrl1) + } + } else { + yyv1 = make([]ExternalAdmissionHookConfiguration, yyrl1) + } + yyc1 = true + yyrr1 = len(yyv1) + if yyrg1 { + copy(yyv1, yyv21) + } + } else if yyl1 != len(yyv1) { + yyv1 = yyv1[:yyl1] + yyc1 = true + } + yyj1 := 0 + for ; yyj1 < yyrr1; yyj1++ { + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = ExternalAdmissionHookConfiguration{} + } else { + yyv2 := &yyv1[yyj1] + yyv2.CodecDecodeSelf(d) + } + + } + if yyrt1 { + for ; yyj1 < yyl1; yyj1++ { + yyv1 = append(yyv1, ExternalAdmissionHookConfiguration{}) + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = ExternalAdmissionHookConfiguration{} + } else { + yyv3 := &yyv1[yyj1] + yyv3.CodecDecodeSelf(d) + } + + } + } + + } else { + yyj1 := 0 + for ; !r.CheckBreak(); yyj1++ { + + if yyj1 >= len(yyv1) { + yyv1 = append(yyv1, ExternalAdmissionHookConfiguration{}) // var yyz1 ExternalAdmissionHookConfiguration + yyc1 = true + } + yyh1.ElemContainerState(yyj1) + if yyj1 < len(yyv1) { + if r.TryDecodeAsNil() { + yyv1[yyj1] = ExternalAdmissionHookConfiguration{} + } else { + yyv4 := &yyv1[yyj1] + yyv4.CodecDecodeSelf(d) + } + + } else { + z.DecSwallow() + } + + } + if yyj1 < len(yyv1) { + yyv1 = yyv1[:yyj1] + yyc1 = true + } else if yyj1 == 0 && yyv1 == nil { + yyv1 = []ExternalAdmissionHookConfiguration{} + yyc1 = true + } + } + yyh1.End() + if yyc1 { + *v = yyv1 + } +} + +func (x codecSelfer1234) encSliceRuleWithOperations(v []RuleWithOperations, e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + r.EncodeArrayStart(len(v)) + for _, yyv1 := range v { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy2 := &yyv1 + yy2.CodecEncodeSelf(e) + } + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) decSliceRuleWithOperations(v *[]RuleWithOperations, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + + yyv1 := *v + yyh1, yyl1 := z.DecSliceHelperStart() + var yyc1 bool + _ = yyc1 + if yyl1 == 0 { + if yyv1 == nil { + yyv1 = []RuleWithOperations{} + yyc1 = true + } else if len(yyv1) != 0 { + yyv1 = yyv1[:0] + yyc1 = true + } + } else if yyl1 > 0 { + var yyrr1, yyrl1 int + var yyrt1 bool + _, _ = yyrl1, yyrt1 + yyrr1 = yyl1 // len(yyv1) + if yyl1 > cap(yyv1) { + + yyrg1 := len(yyv1) > 0 + yyv21 := yyv1 + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 96) + if yyrt1 { + if yyrl1 <= cap(yyv1) { + yyv1 = yyv1[:yyrl1] + } else { + yyv1 = make([]RuleWithOperations, yyrl1) + } + } else { + yyv1 = make([]RuleWithOperations, yyrl1) + } + yyc1 = true + yyrr1 = len(yyv1) + if yyrg1 { + copy(yyv1, yyv21) + } + } else if yyl1 != len(yyv1) { + yyv1 = yyv1[:yyl1] + yyc1 = true + } + yyj1 := 0 + for ; yyj1 < yyrr1; yyj1++ { + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = RuleWithOperations{} + } else { + yyv2 := &yyv1[yyj1] + yyv2.CodecDecodeSelf(d) + } + + } + if yyrt1 { + for ; yyj1 < yyl1; yyj1++ { + yyv1 = append(yyv1, RuleWithOperations{}) + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = RuleWithOperations{} + } else { + yyv3 := &yyv1[yyj1] + yyv3.CodecDecodeSelf(d) + } + + } + } + + } else { + yyj1 := 0 + for ; !r.CheckBreak(); yyj1++ { + + if yyj1 >= len(yyv1) { + yyv1 = append(yyv1, RuleWithOperations{}) // var yyz1 RuleWithOperations + yyc1 = true + } + yyh1.ElemContainerState(yyj1) + if yyj1 < len(yyv1) { + if r.TryDecodeAsNil() { + yyv1[yyj1] = RuleWithOperations{} + } else { + yyv4 := &yyv1[yyj1] + yyv4.CodecDecodeSelf(d) + } + + } else { + z.DecSwallow() + } + + } + if yyj1 < len(yyv1) { + yyv1 = yyv1[:yyj1] + yyc1 = true + } else if yyj1 == 0 && yyv1 == nil { + yyv1 = []RuleWithOperations{} + yyc1 = true + } + } + yyh1.End() + if yyc1 { + *v = yyv1 + } +} + +func (x codecSelfer1234) encSliceOperationType(v []OperationType, e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + r.EncodeArrayStart(len(v)) + for _, yyv1 := range v { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yyv1.CodecEncodeSelf(e) + } + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) decSliceOperationType(v *[]OperationType, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + + yyv1 := *v + yyh1, yyl1 := z.DecSliceHelperStart() + var yyc1 bool + _ = yyc1 + if yyl1 == 0 { + if yyv1 == nil { + yyv1 = []OperationType{} + yyc1 = true + } else if len(yyv1) != 0 { + yyv1 = yyv1[:0] + yyc1 = true + } + } else if yyl1 > 0 { + var yyrr1, yyrl1 int + var yyrt1 bool + _, _ = yyrl1, yyrt1 + yyrr1 = yyl1 // len(yyv1) + if yyl1 > cap(yyv1) { + + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 16) + if yyrt1 { + if yyrl1 <= cap(yyv1) { + yyv1 = yyv1[:yyrl1] + } else { + yyv1 = make([]OperationType, yyrl1) + } + } else { + yyv1 = make([]OperationType, yyrl1) + } + yyc1 = true + yyrr1 = len(yyv1) + } else if yyl1 != len(yyv1) { + yyv1 = yyv1[:yyl1] + yyc1 = true + } + yyj1 := 0 + for ; yyj1 < yyrr1; yyj1++ { + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = "" + } else { + yyv2 := &yyv1[yyj1] + yyv2.CodecDecodeSelf(d) + } + + } + if yyrt1 { + for ; yyj1 < yyl1; yyj1++ { + yyv1 = append(yyv1, "") + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = "" + } else { + yyv3 := &yyv1[yyj1] + yyv3.CodecDecodeSelf(d) + } + + } + } + + } else { + yyj1 := 0 + for ; !r.CheckBreak(); yyj1++ { + + if yyj1 >= len(yyv1) { + yyv1 = append(yyv1, "") // var yyz1 OperationType + yyc1 = true + } + yyh1.ElemContainerState(yyj1) + if yyj1 < len(yyv1) { + if r.TryDecodeAsNil() { + yyv1[yyj1] = "" + } else { + yyv4 := &yyv1[yyj1] + yyv4.CodecDecodeSelf(d) + } + + } else { + z.DecSwallow() + } + + } + if yyj1 < len(yyv1) { + yyv1 = yyv1[:yyj1] + yyc1 = true + } else if yyj1 == 0 && yyv1 == nil { + yyv1 = []OperationType{} + yyc1 = true + } + } + yyh1.End() + if yyc1 { + *v = yyv1 + } +} diff --git a/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/types.go b/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/types.go new file mode 100644 index 00000000..0d878095 --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/types.go @@ -0,0 +1,220 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1alpha1 + +import ( + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" +) + +// +genclient=true +// +nonNamespaced=true + +// InitializerConfiguration describes the configuration of initializers. +type InitializerConfiguration struct { + metav1.TypeMeta `json:",inline"` + // Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. + // +optional + metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` + + // Initializers is a list of resources and their default initializers + // Order-sensitive. + // When merging multiple InitializerConfigurations, we sort the initializers + // from different InitializerConfigurations by the name of the + // InitializerConfigurations; the order of the initializers from the same + // InitializerConfiguration is preserved. + // +patchMergeKey=name + // +patchStrategy=merge + // +optional + Initializers []Initializer `json:"initializers,omitempty" patchStrategy:"merge" patchMergeKey:"name" protobuf:"bytes,2,rep,name=initializers"` +} + +// InitializerConfigurationList is a list of InitializerConfiguration. +type InitializerConfigurationList struct { + metav1.TypeMeta `json:",inline"` + // Standard list metadata. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + // +optional + metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` + + // List of InitializerConfiguration. + Items []InitializerConfiguration `json:"items" protobuf:"bytes,2,rep,name=items"` +} + +// Initializer describes the name and the failure policy of an initializer, and +// what resources it applies to. +type Initializer struct { + // 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 + Name string `json:"name" protobuf:"bytes,1,opt,name=name"` + + // 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. + 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 +// to make sure that all the tuple expansions are valid. +type Rule struct { + // APIGroups is the API groups the resources belong to. '*' is all groups. + // If '*' is present, the length of the slice must be one. + // Required. + APIGroups []string `json:"apiGroups,omitempty" protobuf:"bytes,1,rep,name=apiGroups"` + + // APIVersions is the API versions the resources belong to. '*' is all versions. + // If '*' is present, the length of the slice must be one. + // Required. + APIVersions []string `json:"apiVersions,omitempty" protobuf:"bytes,2,rep,name=apiVersions"` + + // Resources is a list of resources this rule applies to. + // + // For example: + // 'pods' means pods. + // 'pods/log' means the log subresource of pods. + // '*' means all resources, but not subresources. + // 'pods/*' means all subresources of pods. + // '*/scale' means all scale subresources. + // '*/*' means all resources and their subresources. + // + // If wildcard is present, the validation rule will ensure resources do not + // overlap with each other. + // + // Depending on the enclosing object, subresources might not be allowed. + // Required. + Resources []string `json:"resources,omitempty" protobuf:"bytes,3,rep,name=resources"` +} + +type FailurePolicyType string + +const ( + // Ignore means the initilizer is removed from the initializers list of an + // object if the initializer is timed out. + Ignore FailurePolicyType = "Ignore" + // For 1.7, only "Ignore" is allowed. "Fail" will be allowed when the + // extensible admission feature is beta. + Fail FailurePolicyType = "Fail" +) + +// +genclient=true +// +nonNamespaced=true + +// ExternalAdmissionHookConfiguration describes the configuration of initializers. +type ExternalAdmissionHookConfiguration struct { + metav1.TypeMeta `json:",inline"` + // Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. + // +optional + metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` + // ExternalAdmissionHooks is a list of external admission webhooks and the + // affected resources and operations. + // +optional + // +patchMergeKey=name + // +patchStrategy=merge + ExternalAdmissionHooks []ExternalAdmissionHook `json:"externalAdmissionHooks,omitempty" patchStrategy:"merge" patchMergeKey:"name" protobuf:"bytes,2,rep,name=externalAdmissionHooks"` +} + +// ExternalAdmissionHookConfigurationList is a list of ExternalAdmissionHookConfiguration. +type ExternalAdmissionHookConfigurationList struct { + metav1.TypeMeta `json:",inline"` + // Standard list metadata. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds + // +optional + metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` + // List of ExternalAdmissionHookConfiguration. + Items []ExternalAdmissionHookConfiguration `json:"items" protobuf:"bytes,2,rep,name=items"` +} + +// ExternalAdmissionHook describes an external admission webhook and the +// resources and operations it applies to. +type ExternalAdmissionHook struct { + // The name of the external admission webhook. + // Name should be fully qualified, e.g., imagepolicy.kubernetes.io, where + // "imagepolicy" is the name of the webhook, and kubernetes.io is the name + // of the organization. + // Required. + Name string `json:"name" protobuf:"bytes,1,opt,name=name"` + + // ClientConfig defines how to communicate with the hook. + // Required + ClientConfig AdmissionHookClientConfig `json:"clientConfig" protobuf:"bytes,2,opt,name=clientConfig"` + + // Rules describes what operations on what resources/subresources the webhook cares about. + // The webhook cares about an operation if it matches _any_ Rule. + Rules []RuleWithOperations `json:"rules,omitempty" protobuf:"bytes,3,rep,name=rules"` + + // FailurePolicy defines how unrecognized errors from the admission endpoint are handled - + // allowed values are Ignore or Fail. Defaults to Ignore. + // +optional + FailurePolicy *FailurePolicyType `json:"failurePolicy,omitempty" protobuf:"bytes,4,opt,name=failurePolicy,casttype=FailurePolicyType"` +} + +// RuleWithOperations is a tuple of Operations and Resources. It is recommended to make +// sure that all the tuple expansions are valid. +type RuleWithOperations struct { + // Operations is the operations the admission hook cares about - CREATE, UPDATE, or * + // for all operations. + // If '*' is present, the length of the slice must be one. + // Required. + Operations []OperationType `json:"operations,omitempty" protobuf:"bytes,1,rep,name=operations,casttype=OperationType"` + // Rule is embedded, it describes other criteria of the rule, like + // APIGroups, APIVersions, Resources, etc. + Rule `json:",inline" protobuf:"bytes,2,opt,name=rule"` +} + +type OperationType string + +// The constants should be kept in sync with those defined in k8s.io/kubernetes/pkg/admission/interface.go. +const ( + OperationAll OperationType = "*" + Create OperationType = "CREATE" + Update OperationType = "UPDATE" + Delete OperationType = "DELETE" + Connect OperationType = "CONNECT" +) + +// AdmissionHookClientConfig contains the information to make a TLS +// connection with the webhook +type AdmissionHookClientConfig struct { + // Service is a reference to the service for this webhook. If there is only + // one port open for the service, that port will be used. If there are multiple + // ports open, port 443 will be used if it is open, otherwise it is an error. + // Required + Service ServiceReference `json:"service" protobuf:"bytes,1,opt,name=service"` + // CABundle is a PEM encoded CA bundle which will be used to validate webhook's server certificate. + // Required + CABundle []byte `json:"caBundle" protobuf:"bytes,2,opt,name=caBundle"` +} + +// ServiceReference holds a reference to Service.legacy.k8s.io +type ServiceReference struct { + // Namespace is the namespace of the service + // Required + Namespace string `json:"namespace" protobuf:"bytes,1,opt,name=namespace"` + // Name is the name of the service + // Required + Name string `json:"name" protobuf:"bytes,2,opt,name=name"` +} diff --git a/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/types_swagger_doc_generated.go b/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/types_swagger_doc_generated.go new file mode 100644 index 00000000..9597deb5 --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/types_swagger_doc_generated.go @@ -0,0 +1,133 @@ +/* +Copyright 2016 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1alpha1 + +// This file contains a collection of methods that can be used from go-restful to +// generate Swagger API documentation for its models. Please read this PR for more +// information on the implementation: https://github.com/emicklei/go-restful/pull/215 +// +// TODOs are ignored from the parser (e.g. TODO(andronat):... || TODO:...) if and only if +// they are on one line! For multiple line or blocks that you want to ignore use ---. +// Any context after a --- is ignored. +// +// Those methods can be generated by using hack/update-generated-swagger-docs.sh + +// AUTO-GENERATED FUNCTIONS START HERE +var map_AdmissionHookClientConfig = map[string]string{ + "": "AdmissionHookClientConfig contains the information to make a TLS connection with the webhook", + "service": "Service is a reference to the service for this webhook. If there is only one port open for the service, that port will be used. If there are multiple ports open, port 443 will be used if it is open, otherwise it is an error. Required", + "caBundle": "CABundle is a PEM encoded CA bundle which will be used to validate webhook's server certificate. Required", +} + +func (AdmissionHookClientConfig) SwaggerDoc() map[string]string { + return map_AdmissionHookClientConfig +} + +var map_ExternalAdmissionHook = map[string]string{ + "": "ExternalAdmissionHook describes an external admission webhook and the resources and operations it applies to.", + "name": "The name of the external admission webhook. Name should be fully qualified, e.g., imagepolicy.kubernetes.io, where \"imagepolicy\" is the name of the webhook, and kubernetes.io is the name of the organization. Required.", + "clientConfig": "ClientConfig defines how to communicate with the hook. Required", + "rules": "Rules describes what operations on what resources/subresources the webhook cares about. The webhook cares about an operation if it matches _any_ Rule.", + "failurePolicy": "FailurePolicy defines how unrecognized errors from the admission endpoint are handled - allowed values are Ignore or Fail. Defaults to Ignore.", +} + +func (ExternalAdmissionHook) SwaggerDoc() map[string]string { + return map_ExternalAdmissionHook +} + +var map_ExternalAdmissionHookConfiguration = map[string]string{ + "": "ExternalAdmissionHookConfiguration describes the configuration of initializers.", + "metadata": "Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata.", + "externalAdmissionHooks": "ExternalAdmissionHooks is a list of external admission webhooks and the affected resources and operations.", +} + +func (ExternalAdmissionHookConfiguration) SwaggerDoc() map[string]string { + return map_ExternalAdmissionHookConfiguration +} + +var map_ExternalAdmissionHookConfigurationList = map[string]string{ + "": "ExternalAdmissionHookConfigurationList is a list of ExternalAdmissionHookConfiguration.", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", + "items": "List of ExternalAdmissionHookConfiguration.", +} + +func (ExternalAdmissionHookConfigurationList) SwaggerDoc() map[string]string { + return map_ExternalAdmissionHookConfigurationList +} + +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.", +} + +func (Initializer) SwaggerDoc() map[string]string { + return map_Initializer +} + +var map_InitializerConfiguration = map[string]string{ + "": "InitializerConfiguration describes the configuration of initializers.", + "metadata": "Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata.", + "initializers": "Initializers is a list of resources and their default initializers Order-sensitive. When merging multiple InitializerConfigurations, we sort the initializers from different InitializerConfigurations by the name of the InitializerConfigurations; the order of the initializers from the same InitializerConfiguration is preserved.", +} + +func (InitializerConfiguration) SwaggerDoc() map[string]string { + return map_InitializerConfiguration +} + +var map_InitializerConfigurationList = map[string]string{ + "": "InitializerConfigurationList is a list of InitializerConfiguration.", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", + "items": "List of InitializerConfiguration.", +} + +func (InitializerConfigurationList) SwaggerDoc() map[string]string { + return map_InitializerConfigurationList +} + +var map_Rule = map[string]string{ + "": "Rule is a tuple of APIGroups, APIVersion, and Resources.It is recommended to make sure that all the tuple expansions are valid.", + "apiGroups": "APIGroups is the API groups the resources belong to. '*' is all groups. If '*' is present, the length of the slice must be one. Required.", + "apiVersions": "APIVersions is the API versions the resources belong to. '*' is all versions. If '*' is present, the length of the slice must be one. Required.", + "resources": "Resources is a list of resources this rule applies to.\n\nFor example: 'pods' means pods. 'pods/log' means the log subresource of pods. '*' means all resources, but not subresources. 'pods/*' means all subresources of pods. '*/scale' means all scale subresources. '*/*' means all resources and their subresources.\n\nIf wildcard is present, the validation rule will ensure resources do not overlap with each other.\n\nDepending on the enclosing object, subresources might not be allowed. Required.", +} + +func (Rule) SwaggerDoc() map[string]string { + return map_Rule +} + +var map_RuleWithOperations = map[string]string{ + "": "RuleWithOperations is a tuple of Operations and Resources. It is recommended to make sure that all the tuple expansions are valid.", + "operations": "Operations is the operations the admission hook cares about - CREATE, UPDATE, or * for all operations. If '*' is present, the length of the slice must be one. Required.", +} + +func (RuleWithOperations) SwaggerDoc() map[string]string { + return map_RuleWithOperations +} + +var map_ServiceReference = map[string]string{ + "": "ServiceReference holds a reference to Service.legacy.k8s.io", + "namespace": "Namespace is the namespace of the service Required", + "name": "Name is the name of the service Required", +} + +func (ServiceReference) SwaggerDoc() map[string]string { + return map_ServiceReference +} + +// AUTO-GENERATED FUNCTIONS END HERE diff --git a/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/zz_generated.conversion.go b/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/zz_generated.conversion.go new file mode 100644 index 00000000..02c17b09 --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/zz_generated.conversion.go @@ -0,0 +1,311 @@ +// +build !ignore_autogenerated + +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This file was autogenerated by conversion-gen. Do not edit it manually! + +package v1alpha1 + +import ( + conversion "k8s.io/apimachinery/pkg/conversion" + runtime "k8s.io/apimachinery/pkg/runtime" + admissionregistration "k8s.io/kubernetes/pkg/apis/admissionregistration" + unsafe "unsafe" +) + +func init() { + SchemeBuilder.Register(RegisterConversions) +} + +// RegisterConversions adds conversion functions to the given scheme. +// Public to allow building arbitrary schemes. +func RegisterConversions(scheme *runtime.Scheme) error { + return scheme.AddGeneratedConversionFuncs( + Convert_v1alpha1_AdmissionHookClientConfig_To_admissionregistration_AdmissionHookClientConfig, + Convert_admissionregistration_AdmissionHookClientConfig_To_v1alpha1_AdmissionHookClientConfig, + Convert_v1alpha1_ExternalAdmissionHook_To_admissionregistration_ExternalAdmissionHook, + Convert_admissionregistration_ExternalAdmissionHook_To_v1alpha1_ExternalAdmissionHook, + Convert_v1alpha1_ExternalAdmissionHookConfiguration_To_admissionregistration_ExternalAdmissionHookConfiguration, + Convert_admissionregistration_ExternalAdmissionHookConfiguration_To_v1alpha1_ExternalAdmissionHookConfiguration, + Convert_v1alpha1_ExternalAdmissionHookConfigurationList_To_admissionregistration_ExternalAdmissionHookConfigurationList, + Convert_admissionregistration_ExternalAdmissionHookConfigurationList_To_v1alpha1_ExternalAdmissionHookConfigurationList, + Convert_v1alpha1_Initializer_To_admissionregistration_Initializer, + Convert_admissionregistration_Initializer_To_v1alpha1_Initializer, + Convert_v1alpha1_InitializerConfiguration_To_admissionregistration_InitializerConfiguration, + Convert_admissionregistration_InitializerConfiguration_To_v1alpha1_InitializerConfiguration, + Convert_v1alpha1_InitializerConfigurationList_To_admissionregistration_InitializerConfigurationList, + Convert_admissionregistration_InitializerConfigurationList_To_v1alpha1_InitializerConfigurationList, + Convert_v1alpha1_Rule_To_admissionregistration_Rule, + Convert_admissionregistration_Rule_To_v1alpha1_Rule, + Convert_v1alpha1_RuleWithOperations_To_admissionregistration_RuleWithOperations, + Convert_admissionregistration_RuleWithOperations_To_v1alpha1_RuleWithOperations, + Convert_v1alpha1_ServiceReference_To_admissionregistration_ServiceReference, + Convert_admissionregistration_ServiceReference_To_v1alpha1_ServiceReference, + ) +} + +func autoConvert_v1alpha1_AdmissionHookClientConfig_To_admissionregistration_AdmissionHookClientConfig(in *AdmissionHookClientConfig, out *admissionregistration.AdmissionHookClientConfig, s conversion.Scope) error { + if err := Convert_v1alpha1_ServiceReference_To_admissionregistration_ServiceReference(&in.Service, &out.Service, s); err != nil { + return err + } + out.CABundle = *(*[]byte)(unsafe.Pointer(&in.CABundle)) + return nil +} + +// Convert_v1alpha1_AdmissionHookClientConfig_To_admissionregistration_AdmissionHookClientConfig is an autogenerated conversion function. +func Convert_v1alpha1_AdmissionHookClientConfig_To_admissionregistration_AdmissionHookClientConfig(in *AdmissionHookClientConfig, out *admissionregistration.AdmissionHookClientConfig, s conversion.Scope) error { + return autoConvert_v1alpha1_AdmissionHookClientConfig_To_admissionregistration_AdmissionHookClientConfig(in, out, s) +} + +func autoConvert_admissionregistration_AdmissionHookClientConfig_To_v1alpha1_AdmissionHookClientConfig(in *admissionregistration.AdmissionHookClientConfig, out *AdmissionHookClientConfig, s conversion.Scope) error { + if err := Convert_admissionregistration_ServiceReference_To_v1alpha1_ServiceReference(&in.Service, &out.Service, s); err != nil { + return err + } + if in.CABundle == nil { + out.CABundle = make([]byte, 0) + } else { + out.CABundle = *(*[]byte)(unsafe.Pointer(&in.CABundle)) + } + return nil +} + +// Convert_admissionregistration_AdmissionHookClientConfig_To_v1alpha1_AdmissionHookClientConfig is an autogenerated conversion function. +func Convert_admissionregistration_AdmissionHookClientConfig_To_v1alpha1_AdmissionHookClientConfig(in *admissionregistration.AdmissionHookClientConfig, out *AdmissionHookClientConfig, s conversion.Scope) error { + return autoConvert_admissionregistration_AdmissionHookClientConfig_To_v1alpha1_AdmissionHookClientConfig(in, out, s) +} + +func autoConvert_v1alpha1_ExternalAdmissionHook_To_admissionregistration_ExternalAdmissionHook(in *ExternalAdmissionHook, out *admissionregistration.ExternalAdmissionHook, s conversion.Scope) error { + out.Name = in.Name + if err := Convert_v1alpha1_AdmissionHookClientConfig_To_admissionregistration_AdmissionHookClientConfig(&in.ClientConfig, &out.ClientConfig, s); err != nil { + return err + } + out.Rules = *(*[]admissionregistration.RuleWithOperations)(unsafe.Pointer(&in.Rules)) + out.FailurePolicy = (*admissionregistration.FailurePolicyType)(unsafe.Pointer(in.FailurePolicy)) + return nil +} + +// Convert_v1alpha1_ExternalAdmissionHook_To_admissionregistration_ExternalAdmissionHook is an autogenerated conversion function. +func Convert_v1alpha1_ExternalAdmissionHook_To_admissionregistration_ExternalAdmissionHook(in *ExternalAdmissionHook, out *admissionregistration.ExternalAdmissionHook, s conversion.Scope) error { + return autoConvert_v1alpha1_ExternalAdmissionHook_To_admissionregistration_ExternalAdmissionHook(in, out, s) +} + +func autoConvert_admissionregistration_ExternalAdmissionHook_To_v1alpha1_ExternalAdmissionHook(in *admissionregistration.ExternalAdmissionHook, out *ExternalAdmissionHook, s conversion.Scope) error { + out.Name = in.Name + if err := Convert_admissionregistration_AdmissionHookClientConfig_To_v1alpha1_AdmissionHookClientConfig(&in.ClientConfig, &out.ClientConfig, s); err != nil { + return err + } + out.Rules = *(*[]RuleWithOperations)(unsafe.Pointer(&in.Rules)) + out.FailurePolicy = (*FailurePolicyType)(unsafe.Pointer(in.FailurePolicy)) + return nil +} + +// Convert_admissionregistration_ExternalAdmissionHook_To_v1alpha1_ExternalAdmissionHook is an autogenerated conversion function. +func Convert_admissionregistration_ExternalAdmissionHook_To_v1alpha1_ExternalAdmissionHook(in *admissionregistration.ExternalAdmissionHook, out *ExternalAdmissionHook, s conversion.Scope) error { + return autoConvert_admissionregistration_ExternalAdmissionHook_To_v1alpha1_ExternalAdmissionHook(in, out, s) +} + +func autoConvert_v1alpha1_ExternalAdmissionHookConfiguration_To_admissionregistration_ExternalAdmissionHookConfiguration(in *ExternalAdmissionHookConfiguration, out *admissionregistration.ExternalAdmissionHookConfiguration, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + out.ExternalAdmissionHooks = *(*[]admissionregistration.ExternalAdmissionHook)(unsafe.Pointer(&in.ExternalAdmissionHooks)) + return nil +} + +// Convert_v1alpha1_ExternalAdmissionHookConfiguration_To_admissionregistration_ExternalAdmissionHookConfiguration is an autogenerated conversion function. +func Convert_v1alpha1_ExternalAdmissionHookConfiguration_To_admissionregistration_ExternalAdmissionHookConfiguration(in *ExternalAdmissionHookConfiguration, out *admissionregistration.ExternalAdmissionHookConfiguration, s conversion.Scope) error { + return autoConvert_v1alpha1_ExternalAdmissionHookConfiguration_To_admissionregistration_ExternalAdmissionHookConfiguration(in, out, s) +} + +func autoConvert_admissionregistration_ExternalAdmissionHookConfiguration_To_v1alpha1_ExternalAdmissionHookConfiguration(in *admissionregistration.ExternalAdmissionHookConfiguration, out *ExternalAdmissionHookConfiguration, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + out.ExternalAdmissionHooks = *(*[]ExternalAdmissionHook)(unsafe.Pointer(&in.ExternalAdmissionHooks)) + return nil +} + +// Convert_admissionregistration_ExternalAdmissionHookConfiguration_To_v1alpha1_ExternalAdmissionHookConfiguration is an autogenerated conversion function. +func Convert_admissionregistration_ExternalAdmissionHookConfiguration_To_v1alpha1_ExternalAdmissionHookConfiguration(in *admissionregistration.ExternalAdmissionHookConfiguration, out *ExternalAdmissionHookConfiguration, s conversion.Scope) error { + return autoConvert_admissionregistration_ExternalAdmissionHookConfiguration_To_v1alpha1_ExternalAdmissionHookConfiguration(in, out, s) +} + +func autoConvert_v1alpha1_ExternalAdmissionHookConfigurationList_To_admissionregistration_ExternalAdmissionHookConfigurationList(in *ExternalAdmissionHookConfigurationList, out *admissionregistration.ExternalAdmissionHookConfigurationList, s conversion.Scope) error { + out.ListMeta = in.ListMeta + out.Items = *(*[]admissionregistration.ExternalAdmissionHookConfiguration)(unsafe.Pointer(&in.Items)) + return nil +} + +// Convert_v1alpha1_ExternalAdmissionHookConfigurationList_To_admissionregistration_ExternalAdmissionHookConfigurationList is an autogenerated conversion function. +func Convert_v1alpha1_ExternalAdmissionHookConfigurationList_To_admissionregistration_ExternalAdmissionHookConfigurationList(in *ExternalAdmissionHookConfigurationList, out *admissionregistration.ExternalAdmissionHookConfigurationList, s conversion.Scope) error { + return autoConvert_v1alpha1_ExternalAdmissionHookConfigurationList_To_admissionregistration_ExternalAdmissionHookConfigurationList(in, out, s) +} + +func autoConvert_admissionregistration_ExternalAdmissionHookConfigurationList_To_v1alpha1_ExternalAdmissionHookConfigurationList(in *admissionregistration.ExternalAdmissionHookConfigurationList, out *ExternalAdmissionHookConfigurationList, s conversion.Scope) error { + out.ListMeta = in.ListMeta + if in.Items == nil { + out.Items = make([]ExternalAdmissionHookConfiguration, 0) + } else { + out.Items = *(*[]ExternalAdmissionHookConfiguration)(unsafe.Pointer(&in.Items)) + } + return nil +} + +// Convert_admissionregistration_ExternalAdmissionHookConfigurationList_To_v1alpha1_ExternalAdmissionHookConfigurationList is an autogenerated conversion function. +func Convert_admissionregistration_ExternalAdmissionHookConfigurationList_To_v1alpha1_ExternalAdmissionHookConfigurationList(in *admissionregistration.ExternalAdmissionHookConfigurationList, out *ExternalAdmissionHookConfigurationList, s conversion.Scope) error { + return autoConvert_admissionregistration_ExternalAdmissionHookConfigurationList_To_v1alpha1_ExternalAdmissionHookConfigurationList(in, out, s) +} + +func autoConvert_v1alpha1_Initializer_To_admissionregistration_Initializer(in *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 +} + +// Convert_v1alpha1_Initializer_To_admissionregistration_Initializer is an autogenerated conversion function. +func Convert_v1alpha1_Initializer_To_admissionregistration_Initializer(in *Initializer, out *admissionregistration.Initializer, s conversion.Scope) error { + return autoConvert_v1alpha1_Initializer_To_admissionregistration_Initializer(in, out, s) +} + +func autoConvert_admissionregistration_Initializer_To_v1alpha1_Initializer(in *admissionregistration.Initializer, out *Initializer, s conversion.Scope) error { + out.Name = in.Name + out.Rules = *(*[]Rule)(unsafe.Pointer(&in.Rules)) + out.FailurePolicy = (*FailurePolicyType)(unsafe.Pointer(in.FailurePolicy)) + return nil +} + +// Convert_admissionregistration_Initializer_To_v1alpha1_Initializer is an autogenerated conversion function. +func Convert_admissionregistration_Initializer_To_v1alpha1_Initializer(in *admissionregistration.Initializer, out *Initializer, s conversion.Scope) error { + return autoConvert_admissionregistration_Initializer_To_v1alpha1_Initializer(in, out, s) +} + +func autoConvert_v1alpha1_InitializerConfiguration_To_admissionregistration_InitializerConfiguration(in *InitializerConfiguration, out *admissionregistration.InitializerConfiguration, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + out.Initializers = *(*[]admissionregistration.Initializer)(unsafe.Pointer(&in.Initializers)) + return nil +} + +// Convert_v1alpha1_InitializerConfiguration_To_admissionregistration_InitializerConfiguration is an autogenerated conversion function. +func Convert_v1alpha1_InitializerConfiguration_To_admissionregistration_InitializerConfiguration(in *InitializerConfiguration, out *admissionregistration.InitializerConfiguration, s conversion.Scope) error { + return autoConvert_v1alpha1_InitializerConfiguration_To_admissionregistration_InitializerConfiguration(in, out, s) +} + +func autoConvert_admissionregistration_InitializerConfiguration_To_v1alpha1_InitializerConfiguration(in *admissionregistration.InitializerConfiguration, out *InitializerConfiguration, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + out.Initializers = *(*[]Initializer)(unsafe.Pointer(&in.Initializers)) + return nil +} + +// Convert_admissionregistration_InitializerConfiguration_To_v1alpha1_InitializerConfiguration is an autogenerated conversion function. +func Convert_admissionregistration_InitializerConfiguration_To_v1alpha1_InitializerConfiguration(in *admissionregistration.InitializerConfiguration, out *InitializerConfiguration, s conversion.Scope) error { + return autoConvert_admissionregistration_InitializerConfiguration_To_v1alpha1_InitializerConfiguration(in, out, s) +} + +func autoConvert_v1alpha1_InitializerConfigurationList_To_admissionregistration_InitializerConfigurationList(in *InitializerConfigurationList, out *admissionregistration.InitializerConfigurationList, s conversion.Scope) error { + out.ListMeta = in.ListMeta + out.Items = *(*[]admissionregistration.InitializerConfiguration)(unsafe.Pointer(&in.Items)) + return nil +} + +// Convert_v1alpha1_InitializerConfigurationList_To_admissionregistration_InitializerConfigurationList is an autogenerated conversion function. +func Convert_v1alpha1_InitializerConfigurationList_To_admissionregistration_InitializerConfigurationList(in *InitializerConfigurationList, out *admissionregistration.InitializerConfigurationList, s conversion.Scope) error { + return autoConvert_v1alpha1_InitializerConfigurationList_To_admissionregistration_InitializerConfigurationList(in, out, s) +} + +func autoConvert_admissionregistration_InitializerConfigurationList_To_v1alpha1_InitializerConfigurationList(in *admissionregistration.InitializerConfigurationList, out *InitializerConfigurationList, s conversion.Scope) error { + out.ListMeta = in.ListMeta + if in.Items == nil { + out.Items = make([]InitializerConfiguration, 0) + } else { + out.Items = *(*[]InitializerConfiguration)(unsafe.Pointer(&in.Items)) + } + return nil +} + +// Convert_admissionregistration_InitializerConfigurationList_To_v1alpha1_InitializerConfigurationList is an autogenerated conversion function. +func Convert_admissionregistration_InitializerConfigurationList_To_v1alpha1_InitializerConfigurationList(in *admissionregistration.InitializerConfigurationList, out *InitializerConfigurationList, s conversion.Scope) error { + return autoConvert_admissionregistration_InitializerConfigurationList_To_v1alpha1_InitializerConfigurationList(in, out, s) +} + +func autoConvert_v1alpha1_Rule_To_admissionregistration_Rule(in *Rule, out *admissionregistration.Rule, s conversion.Scope) error { + out.APIGroups = *(*[]string)(unsafe.Pointer(&in.APIGroups)) + out.APIVersions = *(*[]string)(unsafe.Pointer(&in.APIVersions)) + out.Resources = *(*[]string)(unsafe.Pointer(&in.Resources)) + return nil +} + +// Convert_v1alpha1_Rule_To_admissionregistration_Rule is an autogenerated conversion function. +func Convert_v1alpha1_Rule_To_admissionregistration_Rule(in *Rule, out *admissionregistration.Rule, s conversion.Scope) error { + return autoConvert_v1alpha1_Rule_To_admissionregistration_Rule(in, out, s) +} + +func autoConvert_admissionregistration_Rule_To_v1alpha1_Rule(in *admissionregistration.Rule, out *Rule, s conversion.Scope) error { + out.APIGroups = *(*[]string)(unsafe.Pointer(&in.APIGroups)) + out.APIVersions = *(*[]string)(unsafe.Pointer(&in.APIVersions)) + out.Resources = *(*[]string)(unsafe.Pointer(&in.Resources)) + return nil +} + +// Convert_admissionregistration_Rule_To_v1alpha1_Rule is an autogenerated conversion function. +func Convert_admissionregistration_Rule_To_v1alpha1_Rule(in *admissionregistration.Rule, out *Rule, s conversion.Scope) error { + return autoConvert_admissionregistration_Rule_To_v1alpha1_Rule(in, out, s) +} + +func autoConvert_v1alpha1_RuleWithOperations_To_admissionregistration_RuleWithOperations(in *RuleWithOperations, out *admissionregistration.RuleWithOperations, s conversion.Scope) error { + out.Operations = *(*[]admissionregistration.OperationType)(unsafe.Pointer(&in.Operations)) + if err := Convert_v1alpha1_Rule_To_admissionregistration_Rule(&in.Rule, &out.Rule, s); err != nil { + return err + } + return nil +} + +// Convert_v1alpha1_RuleWithOperations_To_admissionregistration_RuleWithOperations is an autogenerated conversion function. +func Convert_v1alpha1_RuleWithOperations_To_admissionregistration_RuleWithOperations(in *RuleWithOperations, out *admissionregistration.RuleWithOperations, s conversion.Scope) error { + return autoConvert_v1alpha1_RuleWithOperations_To_admissionregistration_RuleWithOperations(in, out, s) +} + +func autoConvert_admissionregistration_RuleWithOperations_To_v1alpha1_RuleWithOperations(in *admissionregistration.RuleWithOperations, out *RuleWithOperations, s conversion.Scope) error { + out.Operations = *(*[]OperationType)(unsafe.Pointer(&in.Operations)) + if err := Convert_admissionregistration_Rule_To_v1alpha1_Rule(&in.Rule, &out.Rule, s); err != nil { + return err + } + return nil +} + +// Convert_admissionregistration_RuleWithOperations_To_v1alpha1_RuleWithOperations is an autogenerated conversion function. +func Convert_admissionregistration_RuleWithOperations_To_v1alpha1_RuleWithOperations(in *admissionregistration.RuleWithOperations, out *RuleWithOperations, s conversion.Scope) error { + return autoConvert_admissionregistration_RuleWithOperations_To_v1alpha1_RuleWithOperations(in, out, s) +} + +func autoConvert_v1alpha1_ServiceReference_To_admissionregistration_ServiceReference(in *ServiceReference, out *admissionregistration.ServiceReference, s conversion.Scope) error { + out.Namespace = in.Namespace + out.Name = in.Name + return nil +} + +// Convert_v1alpha1_ServiceReference_To_admissionregistration_ServiceReference is an autogenerated conversion function. +func Convert_v1alpha1_ServiceReference_To_admissionregistration_ServiceReference(in *ServiceReference, out *admissionregistration.ServiceReference, s conversion.Scope) error { + return autoConvert_v1alpha1_ServiceReference_To_admissionregistration_ServiceReference(in, out, s) +} + +func autoConvert_admissionregistration_ServiceReference_To_v1alpha1_ServiceReference(in *admissionregistration.ServiceReference, out *ServiceReference, s conversion.Scope) error { + out.Namespace = in.Namespace + out.Name = in.Name + return nil +} + +// Convert_admissionregistration_ServiceReference_To_v1alpha1_ServiceReference is an autogenerated conversion function. +func Convert_admissionregistration_ServiceReference_To_v1alpha1_ServiceReference(in *admissionregistration.ServiceReference, out *ServiceReference, s conversion.Scope) error { + return autoConvert_admissionregistration_ServiceReference_To_v1alpha1_ServiceReference(in, out, s) +} diff --git a/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/zz_generated.deepcopy.go new file mode 100644 index 00000000..526dbe3a --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/zz_generated.deepcopy.go @@ -0,0 +1,254 @@ +// +build !ignore_autogenerated + +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This file was autogenerated by deepcopy-gen. Do not edit it manually! + +package v1alpha1 + +import ( + v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + conversion "k8s.io/apimachinery/pkg/conversion" + runtime "k8s.io/apimachinery/pkg/runtime" + reflect "reflect" +) + +func init() { + SchemeBuilder.Register(RegisterDeepCopies) +} + +// RegisterDeepCopies adds deep-copy functions to the given scheme. Public +// to allow building arbitrary schemes. +func RegisterDeepCopies(scheme *runtime.Scheme) error { + return scheme.AddGeneratedDeepCopyFuncs( + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1alpha1_AdmissionHookClientConfig, InType: reflect.TypeOf(&AdmissionHookClientConfig{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1alpha1_ExternalAdmissionHook, InType: reflect.TypeOf(&ExternalAdmissionHook{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1alpha1_ExternalAdmissionHookConfiguration, InType: reflect.TypeOf(&ExternalAdmissionHookConfiguration{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1alpha1_ExternalAdmissionHookConfigurationList, InType: reflect.TypeOf(&ExternalAdmissionHookConfigurationList{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1alpha1_Initializer, InType: reflect.TypeOf(&Initializer{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1alpha1_InitializerConfiguration, InType: reflect.TypeOf(&InitializerConfiguration{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1alpha1_InitializerConfigurationList, InType: reflect.TypeOf(&InitializerConfigurationList{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1alpha1_Rule, InType: reflect.TypeOf(&Rule{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1alpha1_RuleWithOperations, InType: reflect.TypeOf(&RuleWithOperations{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1alpha1_ServiceReference, InType: reflect.TypeOf(&ServiceReference{})}, + ) +} + +// DeepCopy_v1alpha1_AdmissionHookClientConfig is an autogenerated deepcopy function. +func DeepCopy_v1alpha1_AdmissionHookClientConfig(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*AdmissionHookClientConfig) + out := out.(*AdmissionHookClientConfig) + *out = *in + if in.CABundle != nil { + in, out := &in.CABundle, &out.CABundle + *out = make([]byte, len(*in)) + copy(*out, *in) + } + return nil + } +} + +// DeepCopy_v1alpha1_ExternalAdmissionHook is an autogenerated deepcopy function. +func DeepCopy_v1alpha1_ExternalAdmissionHook(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ExternalAdmissionHook) + out := out.(*ExternalAdmissionHook) + *out = *in + if err := DeepCopy_v1alpha1_AdmissionHookClientConfig(&in.ClientConfig, &out.ClientConfig, c); err != nil { + return err + } + if in.Rules != nil { + in, out := &in.Rules, &out.Rules + *out = make([]RuleWithOperations, len(*in)) + for i := range *in { + if err := DeepCopy_v1alpha1_RuleWithOperations(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + if in.FailurePolicy != nil { + in, out := &in.FailurePolicy, &out.FailurePolicy + *out = new(FailurePolicyType) + **out = **in + } + return nil + } +} + +// DeepCopy_v1alpha1_ExternalAdmissionHookConfiguration is an autogenerated deepcopy function. +func DeepCopy_v1alpha1_ExternalAdmissionHookConfiguration(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ExternalAdmissionHookConfiguration) + out := out.(*ExternalAdmissionHookConfiguration) + *out = *in + if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { + return err + } else { + out.ObjectMeta = *newVal.(*v1.ObjectMeta) + } + if in.ExternalAdmissionHooks != nil { + in, out := &in.ExternalAdmissionHooks, &out.ExternalAdmissionHooks + *out = make([]ExternalAdmissionHook, len(*in)) + for i := range *in { + if err := DeepCopy_v1alpha1_ExternalAdmissionHook(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} + +// DeepCopy_v1alpha1_ExternalAdmissionHookConfigurationList is an autogenerated deepcopy function. +func DeepCopy_v1alpha1_ExternalAdmissionHookConfigurationList(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ExternalAdmissionHookConfigurationList) + out := out.(*ExternalAdmissionHookConfigurationList) + *out = *in + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]ExternalAdmissionHookConfiguration, len(*in)) + for i := range *in { + if err := DeepCopy_v1alpha1_ExternalAdmissionHookConfiguration(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} + +// DeepCopy_v1alpha1_Initializer is an autogenerated deepcopy function. +func DeepCopy_v1alpha1_Initializer(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*Initializer) + out := out.(*Initializer) + *out = *in + if in.Rules != nil { + in, out := &in.Rules, &out.Rules + *out = make([]Rule, len(*in)) + for i := range *in { + if err := DeepCopy_v1alpha1_Rule(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + if in.FailurePolicy != nil { + in, out := &in.FailurePolicy, &out.FailurePolicy + *out = new(FailurePolicyType) + **out = **in + } + return nil + } +} + +// DeepCopy_v1alpha1_InitializerConfiguration is an autogenerated deepcopy function. +func DeepCopy_v1alpha1_InitializerConfiguration(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*InitializerConfiguration) + out := out.(*InitializerConfiguration) + *out = *in + if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { + return err + } else { + out.ObjectMeta = *newVal.(*v1.ObjectMeta) + } + if in.Initializers != nil { + in, out := &in.Initializers, &out.Initializers + *out = make([]Initializer, len(*in)) + for i := range *in { + if err := DeepCopy_v1alpha1_Initializer(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} + +// DeepCopy_v1alpha1_InitializerConfigurationList is an autogenerated deepcopy function. +func DeepCopy_v1alpha1_InitializerConfigurationList(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*InitializerConfigurationList) + out := out.(*InitializerConfigurationList) + *out = *in + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]InitializerConfiguration, len(*in)) + for i := range *in { + if err := DeepCopy_v1alpha1_InitializerConfiguration(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} + +// DeepCopy_v1alpha1_Rule is an autogenerated deepcopy function. +func DeepCopy_v1alpha1_Rule(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*Rule) + out := out.(*Rule) + *out = *in + if in.APIGroups != nil { + in, out := &in.APIGroups, &out.APIGroups + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.APIVersions != nil { + in, out := &in.APIVersions, &out.APIVersions + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.Resources != nil { + in, out := &in.Resources, &out.Resources + *out = make([]string, len(*in)) + copy(*out, *in) + } + return nil + } +} + +// DeepCopy_v1alpha1_RuleWithOperations is an autogenerated deepcopy function. +func DeepCopy_v1alpha1_RuleWithOperations(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*RuleWithOperations) + out := out.(*RuleWithOperations) + *out = *in + if in.Operations != nil { + in, out := &in.Operations, &out.Operations + *out = make([]OperationType, len(*in)) + copy(*out, *in) + } + if err := DeepCopy_v1alpha1_Rule(&in.Rule, &out.Rule, c); err != nil { + return err + } + return nil + } +} + +// DeepCopy_v1alpha1_ServiceReference is an autogenerated deepcopy function. +func DeepCopy_v1alpha1_ServiceReference(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ServiceReference) + out := out.(*ServiceReference) + *out = *in + return nil + } +} diff --git a/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/zz_generated.defaults.go b/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/zz_generated.defaults.go new file mode 100644 index 00000000..74fea7f4 --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1/zz_generated.defaults.go @@ -0,0 +1,70 @@ +// +build !ignore_autogenerated + +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This file was autogenerated by defaulter-gen. Do not edit it manually! + +package v1alpha1 + +import ( + runtime "k8s.io/apimachinery/pkg/runtime" +) + +// RegisterDefaults adds defaulters functions to the given scheme. +// Public to allow building arbitrary schemes. +// All generated defaulters are covering - they call all nested defaulters. +func RegisterDefaults(scheme *runtime.Scheme) error { + scheme.AddTypeDefaultingFunc(&ExternalAdmissionHookConfiguration{}, func(obj interface{}) { + SetObjectDefaults_ExternalAdmissionHookConfiguration(obj.(*ExternalAdmissionHookConfiguration)) + }) + scheme.AddTypeDefaultingFunc(&ExternalAdmissionHookConfigurationList{}, func(obj interface{}) { + SetObjectDefaults_ExternalAdmissionHookConfigurationList(obj.(*ExternalAdmissionHookConfigurationList)) + }) + scheme.AddTypeDefaultingFunc(&InitializerConfiguration{}, func(obj interface{}) { SetObjectDefaults_InitializerConfiguration(obj.(*InitializerConfiguration)) }) + scheme.AddTypeDefaultingFunc(&InitializerConfigurationList{}, func(obj interface{}) { + SetObjectDefaults_InitializerConfigurationList(obj.(*InitializerConfigurationList)) + }) + return nil +} + +func SetObjectDefaults_ExternalAdmissionHookConfiguration(in *ExternalAdmissionHookConfiguration) { + for i := range in.ExternalAdmissionHooks { + a := &in.ExternalAdmissionHooks[i] + SetDefaults_ExternalAdmissionHook(a) + } +} + +func SetObjectDefaults_ExternalAdmissionHookConfigurationList(in *ExternalAdmissionHookConfigurationList) { + for i := range in.Items { + a := &in.Items[i] + SetObjectDefaults_ExternalAdmissionHookConfiguration(a) + } +} + +func SetObjectDefaults_InitializerConfiguration(in *InitializerConfiguration) { + for i := range in.Initializers { + a := &in.Initializers[i] + SetDefaults_Initializer(a) + } +} + +func SetObjectDefaults_InitializerConfigurationList(in *InitializerConfigurationList) { + for i := range in.Items { + a := &in.Items[i] + SetObjectDefaults_InitializerConfiguration(a) + } +} diff --git a/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/zz_generated.deepcopy.go new file mode 100644 index 00000000..e41f28ef --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/apis/admissionregistration/zz_generated.deepcopy.go @@ -0,0 +1,254 @@ +// +build !ignore_autogenerated + +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This file was autogenerated by deepcopy-gen. Do not edit it manually! + +package admissionregistration + +import ( + v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + conversion "k8s.io/apimachinery/pkg/conversion" + runtime "k8s.io/apimachinery/pkg/runtime" + reflect "reflect" +) + +func init() { + SchemeBuilder.Register(RegisterDeepCopies) +} + +// RegisterDeepCopies adds deep-copy functions to the given scheme. Public +// to allow building arbitrary schemes. +func RegisterDeepCopies(scheme *runtime.Scheme) error { + return scheme.AddGeneratedDeepCopyFuncs( + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_admissionregistration_AdmissionHookClientConfig, InType: reflect.TypeOf(&AdmissionHookClientConfig{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_admissionregistration_ExternalAdmissionHook, InType: reflect.TypeOf(&ExternalAdmissionHook{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_admissionregistration_ExternalAdmissionHookConfiguration, InType: reflect.TypeOf(&ExternalAdmissionHookConfiguration{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_admissionregistration_ExternalAdmissionHookConfigurationList, InType: reflect.TypeOf(&ExternalAdmissionHookConfigurationList{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_admissionregistration_Initializer, InType: reflect.TypeOf(&Initializer{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_admissionregistration_InitializerConfiguration, InType: reflect.TypeOf(&InitializerConfiguration{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_admissionregistration_InitializerConfigurationList, InType: reflect.TypeOf(&InitializerConfigurationList{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_admissionregistration_Rule, InType: reflect.TypeOf(&Rule{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_admissionregistration_RuleWithOperations, InType: reflect.TypeOf(&RuleWithOperations{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_admissionregistration_ServiceReference, InType: reflect.TypeOf(&ServiceReference{})}, + ) +} + +// DeepCopy_admissionregistration_AdmissionHookClientConfig is an autogenerated deepcopy function. +func DeepCopy_admissionregistration_AdmissionHookClientConfig(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*AdmissionHookClientConfig) + out := out.(*AdmissionHookClientConfig) + *out = *in + if in.CABundle != nil { + in, out := &in.CABundle, &out.CABundle + *out = make([]byte, len(*in)) + copy(*out, *in) + } + return nil + } +} + +// DeepCopy_admissionregistration_ExternalAdmissionHook is an autogenerated deepcopy function. +func DeepCopy_admissionregistration_ExternalAdmissionHook(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ExternalAdmissionHook) + out := out.(*ExternalAdmissionHook) + *out = *in + if err := DeepCopy_admissionregistration_AdmissionHookClientConfig(&in.ClientConfig, &out.ClientConfig, c); err != nil { + return err + } + if in.Rules != nil { + in, out := &in.Rules, &out.Rules + *out = make([]RuleWithOperations, len(*in)) + for i := range *in { + if err := DeepCopy_admissionregistration_RuleWithOperations(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + if in.FailurePolicy != nil { + in, out := &in.FailurePolicy, &out.FailurePolicy + *out = new(FailurePolicyType) + **out = **in + } + return nil + } +} + +// DeepCopy_admissionregistration_ExternalAdmissionHookConfiguration is an autogenerated deepcopy function. +func DeepCopy_admissionregistration_ExternalAdmissionHookConfiguration(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ExternalAdmissionHookConfiguration) + out := out.(*ExternalAdmissionHookConfiguration) + *out = *in + if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { + return err + } else { + out.ObjectMeta = *newVal.(*v1.ObjectMeta) + } + if in.ExternalAdmissionHooks != nil { + in, out := &in.ExternalAdmissionHooks, &out.ExternalAdmissionHooks + *out = make([]ExternalAdmissionHook, len(*in)) + for i := range *in { + if err := DeepCopy_admissionregistration_ExternalAdmissionHook(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} + +// DeepCopy_admissionregistration_ExternalAdmissionHookConfigurationList is an autogenerated deepcopy function. +func DeepCopy_admissionregistration_ExternalAdmissionHookConfigurationList(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ExternalAdmissionHookConfigurationList) + out := out.(*ExternalAdmissionHookConfigurationList) + *out = *in + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]ExternalAdmissionHookConfiguration, len(*in)) + for i := range *in { + if err := DeepCopy_admissionregistration_ExternalAdmissionHookConfiguration(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} + +// DeepCopy_admissionregistration_Initializer is an autogenerated deepcopy function. +func DeepCopy_admissionregistration_Initializer(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*Initializer) + out := out.(*Initializer) + *out = *in + if in.Rules != nil { + in, out := &in.Rules, &out.Rules + *out = make([]Rule, len(*in)) + for i := range *in { + if err := DeepCopy_admissionregistration_Rule(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + if in.FailurePolicy != nil { + in, out := &in.FailurePolicy, &out.FailurePolicy + *out = new(FailurePolicyType) + **out = **in + } + return nil + } +} + +// DeepCopy_admissionregistration_InitializerConfiguration is an autogenerated deepcopy function. +func DeepCopy_admissionregistration_InitializerConfiguration(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*InitializerConfiguration) + out := out.(*InitializerConfiguration) + *out = *in + if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { + return err + } else { + out.ObjectMeta = *newVal.(*v1.ObjectMeta) + } + if in.Initializers != nil { + in, out := &in.Initializers, &out.Initializers + *out = make([]Initializer, len(*in)) + for i := range *in { + if err := DeepCopy_admissionregistration_Initializer(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} + +// DeepCopy_admissionregistration_InitializerConfigurationList is an autogenerated deepcopy function. +func DeepCopy_admissionregistration_InitializerConfigurationList(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*InitializerConfigurationList) + out := out.(*InitializerConfigurationList) + *out = *in + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]InitializerConfiguration, len(*in)) + for i := range *in { + if err := DeepCopy_admissionregistration_InitializerConfiguration(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} + +// DeepCopy_admissionregistration_Rule is an autogenerated deepcopy function. +func DeepCopy_admissionregistration_Rule(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*Rule) + out := out.(*Rule) + *out = *in + if in.APIGroups != nil { + in, out := &in.APIGroups, &out.APIGroups + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.APIVersions != nil { + in, out := &in.APIVersions, &out.APIVersions + *out = make([]string, len(*in)) + copy(*out, *in) + } + if in.Resources != nil { + in, out := &in.Resources, &out.Resources + *out = make([]string, len(*in)) + copy(*out, *in) + } + return nil + } +} + +// DeepCopy_admissionregistration_RuleWithOperations is an autogenerated deepcopy function. +func DeepCopy_admissionregistration_RuleWithOperations(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*RuleWithOperations) + out := out.(*RuleWithOperations) + *out = *in + if in.Operations != nil { + in, out := &in.Operations, &out.Operations + *out = make([]OperationType, len(*in)) + copy(*out, *in) + } + if err := DeepCopy_admissionregistration_Rule(&in.Rule, &out.Rule, c); err != nil { + return err + } + return nil + } +} + +// DeepCopy_admissionregistration_ServiceReference is an autogenerated deepcopy function. +func DeepCopy_admissionregistration_ServiceReference(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ServiceReference) + out := out.(*ServiceReference) + *out = *in + return nil + } +} diff --git a/vendor/k8s.io/kubernetes/pkg/apis/apps/register.go b/vendor/k8s.io/kubernetes/pkg/apis/apps/register.go index dae876f3..f3b126fa 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/apps/register.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/apps/register.go @@ -53,6 +53,8 @@ func addKnownTypes(scheme *runtime.Scheme) error { &extensions.Scale{}, &StatefulSet{}, &StatefulSetList{}, + &ControllerRevision{}, + &ControllerRevisionList{}, ) return nil } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/apps/types.go b/vendor/k8s.io/kubernetes/pkg/apis/apps/types.go index a45b2a77..403a88a6 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/apps/types.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/apps/types.go @@ -18,6 +18,7 @@ package apps import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime" "k8s.io/kubernetes/pkg/api" ) @@ -44,6 +45,57 @@ type StatefulSet struct { Status StatefulSetStatus } +// PodManagementPolicyType defines the policy for creating pods under a stateful set. +type PodManagementPolicyType string + +const ( + // OrderedReadyPodManagement will create pods in strictly increasing order on + // scale up and strictly decreasing order on scale down, progressing only when + // the previous pod is ready or terminated. At most one pod will be changed + // at any time. + OrderedReadyPodManagement PodManagementPolicyType = "OrderedReady" + // ParallelPodManagement will create and delete pods as soon as the stateful set + // replica count is changed, and will not wait for pods to be ready or complete + // termination. + ParallelPodManagement = "Parallel" +) + +// StatefulSetUpdateStrategy indicates the strategy that the StatefulSet +// controller will use to perform updates. It includes any additional parameters +// necessary to perform the update for the indicated strategy. +type StatefulSetUpdateStrategy struct { + // Type indicates the type of the StatefulSetUpdateStrategy. + Type StatefulSetUpdateStrategyType + // RollingUpdate is used to communicate parameters when Type is RollingUpdateStatefulSetStrategyType. + RollingUpdate *RollingUpdateStatefulSetStrategy +} + +// StatefulSetUpdateStrategyType is a string enumeration type that enumerates +// all possible update strategies for the StatefulSet controller. +type StatefulSetUpdateStrategyType string + +const ( + // RollingUpdateStatefulSetStrategyType indicates that update will be + // applied to all Pods in the StatefulSet with respect to the StatefulSet + // ordering constraints. When a scale operation is performed with this + // strategy, new Pods will be created from the specification version indicated + // by the StatefulSet's updateRevision. + RollingUpdateStatefulSetStrategyType = "RollingUpdate" + // OnDeleteStatefulSetStrategyType triggers the legacy behavior. Version + // tracking and ordered rolling restarts are disabled. Pods are recreated + // from the StatefulSetSpec when they are manually deleted. When a scale + // operation is performed with this strategy,specification version indicated + // by the StatefulSet's currentRevision. + OnDeleteStatefulSetStrategyType = "OnDelete" +) + +// RollingUpdateStatefulSetStrategy is used to communicate parameter for RollingUpdateStatefulSetStrategyType. +type RollingUpdateStatefulSetStrategy struct { + // Partition indicates the ordinal at which the StatefulSet should be + // partitioned. + Partition int32 +} + // A StatefulSetSpec is the specification of a StatefulSet. type StatefulSetSpec struct { // Replicas is the desired number of replicas of the given Template. @@ -82,16 +134,58 @@ type StatefulSetSpec struct { // pattern: pod-specific-string.serviceName.default.svc.cluster.local // where "pod-specific-string" is managed by the StatefulSet controller. ServiceName string + + // PodManagementPolicy controls how pods are created during initial scale up, + // when replacing pods on nodes, or when scaling down. The default policy is + // `OrderedReady`, where pods are created in increasing order (pod-0, then + // pod-1, etc) and the controller will wait until each pod is ready before + // continuing. When scaling down, the pods are removed in the opposite order. + // The alternative policy is `Parallel` which will create pods in parallel + // to match the desired scale without waiting, and on scale down will delete + // all pods at once. + // +optional + PodManagementPolicy PodManagementPolicyType + + // updateStrategy indicates the StatefulSetUpdateStrategy that will be + // employed to update Pods in the StatefulSet when a revision is made to + // Template. + UpdateStrategy StatefulSetUpdateStrategy + + // revisionHistoryLimit is the maximum number of revisions that will + // be maintained in the StatefulSet's revision history. The revision history + // consists of all revisions not represented by a currently applied + // StatefulSetSpec version. The default value is 10. + RevisionHistoryLimit *int32 } // StatefulSetStatus represents the current state of a StatefulSet. type StatefulSetStatus struct { - // most recent generation observed by this StatefulSet. + // observedGeneration is the most recent generation observed for this StatefulSet. It corresponds to the + // StatefulSet's generation, which is updated on mutation by the API Server. // +optional ObservedGeneration *int64 - // Replicas is the number of actual replicas. + // replicas is the number of Pods created by the StatefulSet controller. Replicas int32 + + // readyReplicas is the number of Pods created by the StatefulSet controller that have a Ready Condition. + ReadyReplicas int32 + + // currentReplicas is the number of Pods created by the StatefulSet controller from the StatefulSet version + // indicated by currentRevision. + CurrentReplicas int32 + + // updatedReplicas is the number of Pods created by the StatefulSet controller from the StatefulSet version + // indicated by updateRevision. + UpdatedReplicas int32 + + // currentRevision, if not empty, indicates the version of the StatefulSet used to generate Pods in the + // sequence [0,currentReplicas). + CurrentRevision string + + // updateRevision, if not empty, indicates the version of the StatefulSet used to generate Pods in the sequence + // [replicas-updatedReplicas,replicas) + UpdateRevision string } // StatefulSetList is a collection of StatefulSets. @@ -101,3 +195,35 @@ type StatefulSetList struct { metav1.ListMeta Items []StatefulSet } + +// +genclient=true + +// ControllerRevision implements an immutable snapshot of state data. Clients +// are responsible for serializing and deserializing the objects that contain +// their internal state. +// Once a ControllerRevision has been successfully created, it can not be updated. +// The API Server will fail validation of all requests that attempt to mutate +// the Data field. ControllerRevisions may, however, be deleted. +type ControllerRevision struct { + metav1.TypeMeta + // Standard object's metadata. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + // +optional + metav1.ObjectMeta + + // Data is the Object representing the state. + Data runtime.Object + + // Revision indicates the revision of the state represented by Data. + Revision int64 +} + +// ControllerRevisionList is a resource containing a list of ControllerRevision objects. +type ControllerRevisionList struct { + metav1.TypeMeta + // +optional + metav1.ListMeta + + // Items is the list of ControllerRevision objects. + Items []ControllerRevision +} diff --git a/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/conversion.go b/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/conversion.go index e8d18b56..a21c37db 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/conversion.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/conversion.go @@ -37,6 +37,8 @@ func addConversionFuncs(scheme *runtime.Scheme) error { err := scheme.AddConversionFuncs( Convert_v1beta1_StatefulSetSpec_To_apps_StatefulSetSpec, Convert_apps_StatefulSetSpec_To_v1beta1_StatefulSetSpec, + Convert_v1beta1_StatefulSetUpdateStrategy_To_apps_StatefulSetUpdateStrategy, + Convert_apps_StatefulSetUpdateStrategy_To_v1beta1_StatefulSetUpdateStrategy, // extensions // TODO: below conversions should be dropped in favor of auto-generated // ones, see https://github.com/kubernetes/kubernetextensionsssues/39865 @@ -109,7 +111,17 @@ func Convert_v1beta1_StatefulSetSpec_To_apps_StatefulSetSpec(in *StatefulSetSpec } else { out.VolumeClaimTemplates = nil } + if err := Convert_v1beta1_StatefulSetUpdateStrategy_To_apps_StatefulSetUpdateStrategy(&in.UpdateStrategy, &out.UpdateStrategy, s); err != nil { + return err + } + if in.RevisionHistoryLimit != nil { + out.RevisionHistoryLimit = new(int32) + *out.RevisionHistoryLimit = *in.RevisionHistoryLimit + } else { + out.RevisionHistoryLimit = nil + } out.ServiceName = in.ServiceName + out.PodManagementPolicy = apps.PodManagementPolicyType(in.PodManagementPolicy) return nil } @@ -139,7 +151,40 @@ func Convert_apps_StatefulSetSpec_To_v1beta1_StatefulSetSpec(in *apps.StatefulSe } else { out.VolumeClaimTemplates = nil } + if in.RevisionHistoryLimit != nil { + out.RevisionHistoryLimit = new(int32) + *out.RevisionHistoryLimit = *in.RevisionHistoryLimit + } else { + out.RevisionHistoryLimit = nil + } out.ServiceName = in.ServiceName + out.PodManagementPolicy = PodManagementPolicyType(in.PodManagementPolicy) + if err := Convert_apps_StatefulSetUpdateStrategy_To_v1beta1_StatefulSetUpdateStrategy(&in.UpdateStrategy, &out.UpdateStrategy, s); err != nil { + return err + } + return nil +} + +func Convert_v1beta1_StatefulSetUpdateStrategy_To_apps_StatefulSetUpdateStrategy(in *StatefulSetUpdateStrategy, out *apps.StatefulSetUpdateStrategy, s conversion.Scope) error { + out.Type = apps.StatefulSetUpdateStrategyType(in.Type) + if in.RollingUpdate != nil { + out.RollingUpdate = new(apps.RollingUpdateStatefulSetStrategy) + out.RollingUpdate.Partition = *in.RollingUpdate.Partition + } else { + out.RollingUpdate = nil + } + return nil +} + +func Convert_apps_StatefulSetUpdateStrategy_To_v1beta1_StatefulSetUpdateStrategy(in *apps.StatefulSetUpdateStrategy, out *StatefulSetUpdateStrategy, s conversion.Scope) error { + out.Type = StatefulSetUpdateStrategyType(in.Type) + if in.RollingUpdate != nil { + out.RollingUpdate = new(RollingUpdateStatefulSetStrategy) + out.RollingUpdate.Partition = new(int32) + *out.RollingUpdate.Partition = in.RollingUpdate.Partition + } else { + out.RollingUpdate = nil + } return nil } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/defaults.go b/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/defaults.go index def2bab7..af133d25 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/defaults.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/defaults.go @@ -27,6 +27,13 @@ func addDefaultingFuncs(scheme *runtime.Scheme) error { } func SetDefaults_StatefulSet(obj *StatefulSet) { + if len(obj.Spec.PodManagementPolicy) == 0 { + obj.Spec.PodManagementPolicy = OrderedReadyPodManagement + } + + if obj.Spec.UpdateStrategy.Type == "" { + obj.Spec.UpdateStrategy.Type = OnDeleteStatefulSetStrategyType + } labels := obj.Spec.Template.Labels if labels != nil { if obj.Spec.Selector == nil { @@ -42,6 +49,17 @@ func SetDefaults_StatefulSet(obj *StatefulSet) { obj.Spec.Replicas = new(int32) *obj.Spec.Replicas = 1 } + if obj.Spec.RevisionHistoryLimit == nil { + obj.Spec.RevisionHistoryLimit = new(int32) + *obj.Spec.RevisionHistoryLimit = 10 + } + if obj.Spec.UpdateStrategy.Type == RollingUpdateStatefulSetStrategyType && + obj.Spec.UpdateStrategy.RollingUpdate != nil && + obj.Spec.UpdateStrategy.RollingUpdate.Partition == nil { + obj.Spec.UpdateStrategy.RollingUpdate.Partition = new(int32) + *obj.Spec.UpdateStrategy.RollingUpdate.Partition = 0 + } + } // SetDefaults_Deployment sets additional defaults compared to its counterpart diff --git a/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/generated.pb.go index fc5b15ee..ed3c417f 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/generated.pb.go @@ -25,6 +25,8 @@ limitations under the License. k8s.io/kubernetes/pkg/apis/apps/v1beta1/generated.proto It has these top-level messages: + ControllerRevision + ControllerRevisionList Deployment DeploymentCondition DeploymentList @@ -34,6 +36,7 @@ limitations under the License. DeploymentStrategy RollbackConfig RollingUpdateDeployment + RollingUpdateStatefulSetStrategy Scale ScaleSpec ScaleStatus @@ -41,6 +44,7 @@ limitations under the License. StatefulSetList StatefulSetSpec StatefulSetStatus + StatefulSetUpdateStrategy */ package v1beta1 @@ -51,12 +55,12 @@ import math "math" import k8s_io_apimachinery_pkg_apis_meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" import k8s_io_apimachinery_pkg_util_intstr "k8s.io/apimachinery/pkg/util/intstr" - import k8s_io_kubernetes_pkg_api_v1 "k8s.io/kubernetes/pkg/api/v1" +import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + import strings "strings" import reflect "reflect" -import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" import io "io" @@ -71,71 +75,95 @@ var _ = math.Inf // proto package needs to be updated. const _ = proto.GoGoProtoPackageIsVersion2 // please upgrade the proto package +func (m *ControllerRevision) Reset() { *m = ControllerRevision{} } +func (*ControllerRevision) ProtoMessage() {} +func (*ControllerRevision) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{0} } + +func (m *ControllerRevisionList) Reset() { *m = ControllerRevisionList{} } +func (*ControllerRevisionList) ProtoMessage() {} +func (*ControllerRevisionList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{1} } + func (m *Deployment) Reset() { *m = Deployment{} } func (*Deployment) ProtoMessage() {} -func (*Deployment) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{0} } +func (*Deployment) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{2} } func (m *DeploymentCondition) Reset() { *m = DeploymentCondition{} } func (*DeploymentCondition) ProtoMessage() {} -func (*DeploymentCondition) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{1} } +func (*DeploymentCondition) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{3} } func (m *DeploymentList) Reset() { *m = DeploymentList{} } func (*DeploymentList) ProtoMessage() {} -func (*DeploymentList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{2} } +func (*DeploymentList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{4} } func (m *DeploymentRollback) Reset() { *m = DeploymentRollback{} } func (*DeploymentRollback) ProtoMessage() {} -func (*DeploymentRollback) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{3} } +func (*DeploymentRollback) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{5} } func (m *DeploymentSpec) Reset() { *m = DeploymentSpec{} } func (*DeploymentSpec) ProtoMessage() {} -func (*DeploymentSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{4} } +func (*DeploymentSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{6} } func (m *DeploymentStatus) Reset() { *m = DeploymentStatus{} } func (*DeploymentStatus) ProtoMessage() {} -func (*DeploymentStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{5} } +func (*DeploymentStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{7} } func (m *DeploymentStrategy) Reset() { *m = DeploymentStrategy{} } func (*DeploymentStrategy) ProtoMessage() {} -func (*DeploymentStrategy) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{6} } +func (*DeploymentStrategy) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{8} } func (m *RollbackConfig) Reset() { *m = RollbackConfig{} } func (*RollbackConfig) ProtoMessage() {} -func (*RollbackConfig) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{7} } +func (*RollbackConfig) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{9} } -func (m *RollingUpdateDeployment) Reset() { *m = RollingUpdateDeployment{} } -func (*RollingUpdateDeployment) ProtoMessage() {} -func (*RollingUpdateDeployment) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{8} } +func (m *RollingUpdateDeployment) Reset() { *m = RollingUpdateDeployment{} } +func (*RollingUpdateDeployment) ProtoMessage() {} +func (*RollingUpdateDeployment) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{10} +} + +func (m *RollingUpdateStatefulSetStrategy) Reset() { *m = RollingUpdateStatefulSetStrategy{} } +func (*RollingUpdateStatefulSetStrategy) ProtoMessage() {} +func (*RollingUpdateStatefulSetStrategy) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{11} +} func (m *Scale) Reset() { *m = Scale{} } func (*Scale) ProtoMessage() {} -func (*Scale) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{9} } +func (*Scale) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{12} } func (m *ScaleSpec) Reset() { *m = ScaleSpec{} } func (*ScaleSpec) ProtoMessage() {} -func (*ScaleSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{10} } +func (*ScaleSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{13} } func (m *ScaleStatus) Reset() { *m = ScaleStatus{} } func (*ScaleStatus) ProtoMessage() {} -func (*ScaleStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{11} } +func (*ScaleStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{14} } func (m *StatefulSet) Reset() { *m = StatefulSet{} } func (*StatefulSet) ProtoMessage() {} -func (*StatefulSet) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{12} } +func (*StatefulSet) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{15} } func (m *StatefulSetList) Reset() { *m = StatefulSetList{} } func (*StatefulSetList) ProtoMessage() {} -func (*StatefulSetList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{13} } +func (*StatefulSetList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{16} } func (m *StatefulSetSpec) Reset() { *m = StatefulSetSpec{} } func (*StatefulSetSpec) ProtoMessage() {} -func (*StatefulSetSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{14} } +func (*StatefulSetSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{17} } func (m *StatefulSetStatus) Reset() { *m = StatefulSetStatus{} } func (*StatefulSetStatus) ProtoMessage() {} -func (*StatefulSetStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{15} } +func (*StatefulSetStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{18} } + +func (m *StatefulSetUpdateStrategy) Reset() { *m = StatefulSetUpdateStrategy{} } +func (*StatefulSetUpdateStrategy) ProtoMessage() {} +func (*StatefulSetUpdateStrategy) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{19} +} func init() { + proto.RegisterType((*ControllerRevision)(nil), "k8s.io.kubernetes.pkg.apis.apps.v1beta1.ControllerRevision") + proto.RegisterType((*ControllerRevisionList)(nil), "k8s.io.kubernetes.pkg.apis.apps.v1beta1.ControllerRevisionList") proto.RegisterType((*Deployment)(nil), "k8s.io.kubernetes.pkg.apis.apps.v1beta1.Deployment") proto.RegisterType((*DeploymentCondition)(nil), "k8s.io.kubernetes.pkg.apis.apps.v1beta1.DeploymentCondition") proto.RegisterType((*DeploymentList)(nil), "k8s.io.kubernetes.pkg.apis.apps.v1beta1.DeploymentList") @@ -145,6 +173,7 @@ func init() { proto.RegisterType((*DeploymentStrategy)(nil), "k8s.io.kubernetes.pkg.apis.apps.v1beta1.DeploymentStrategy") proto.RegisterType((*RollbackConfig)(nil), "k8s.io.kubernetes.pkg.apis.apps.v1beta1.RollbackConfig") proto.RegisterType((*RollingUpdateDeployment)(nil), "k8s.io.kubernetes.pkg.apis.apps.v1beta1.RollingUpdateDeployment") + proto.RegisterType((*RollingUpdateStatefulSetStrategy)(nil), "k8s.io.kubernetes.pkg.apis.apps.v1beta1.RollingUpdateStatefulSetStrategy") proto.RegisterType((*Scale)(nil), "k8s.io.kubernetes.pkg.apis.apps.v1beta1.Scale") proto.RegisterType((*ScaleSpec)(nil), "k8s.io.kubernetes.pkg.apis.apps.v1beta1.ScaleSpec") proto.RegisterType((*ScaleStatus)(nil), "k8s.io.kubernetes.pkg.apis.apps.v1beta1.ScaleStatus") @@ -152,7 +181,83 @@ func init() { proto.RegisterType((*StatefulSetList)(nil), "k8s.io.kubernetes.pkg.apis.apps.v1beta1.StatefulSetList") proto.RegisterType((*StatefulSetSpec)(nil), "k8s.io.kubernetes.pkg.apis.apps.v1beta1.StatefulSetSpec") proto.RegisterType((*StatefulSetStatus)(nil), "k8s.io.kubernetes.pkg.apis.apps.v1beta1.StatefulSetStatus") + proto.RegisterType((*StatefulSetUpdateStrategy)(nil), "k8s.io.kubernetes.pkg.apis.apps.v1beta1.StatefulSetUpdateStrategy") } +func (m *ControllerRevision) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ControllerRevision) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) + n1, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n1 + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Data.Size())) + n2, err := m.Data.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n2 + dAtA[i] = 0x18 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Revision)) + return i, nil +} + +func (m *ControllerRevisionList) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ControllerRevisionList) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) + n3, err := m.ListMeta.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n3 + if len(m.Items) > 0 { + for _, msg := range m.Items { + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(msg.Size())) + n, err := msg.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n + } + } + return i, nil +} + func (m *Deployment) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -171,27 +276,27 @@ func (m *Deployment) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n1, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + n4, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n1 + i += n4 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) - n2, err := m.Spec.MarshalTo(dAtA[i:]) + n5, err := m.Spec.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n2 + i += n5 dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) - n3, err := m.Status.MarshalTo(dAtA[i:]) + n6, err := m.Status.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n3 + i += n6 return i, nil } @@ -229,19 +334,19 @@ func (m *DeploymentCondition) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x32 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.LastUpdateTime.Size())) - n4, err := m.LastUpdateTime.MarshalTo(dAtA[i:]) + n7, err := m.LastUpdateTime.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n4 + i += n7 dAtA[i] = 0x3a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.LastTransitionTime.Size())) - n5, err := m.LastTransitionTime.MarshalTo(dAtA[i:]) + n8, err := m.LastTransitionTime.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n5 + i += n8 return i, nil } @@ -263,11 +368,11 @@ func (m *DeploymentList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n6, err := m.ListMeta.MarshalTo(dAtA[i:]) + n9, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n6 + i += n9 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -303,10 +408,15 @@ func (m *DeploymentRollback) MarshalTo(dAtA []byte) (int, error) { i = encodeVarintGenerated(dAtA, i, uint64(len(m.Name))) i += copy(dAtA[i:], m.Name) if len(m.UpdatedAnnotations) > 0 { + keysForUpdatedAnnotations := make([]string, 0, len(m.UpdatedAnnotations)) for k := range m.UpdatedAnnotations { + keysForUpdatedAnnotations = append(keysForUpdatedAnnotations, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForUpdatedAnnotations) + for _, k := range keysForUpdatedAnnotations { dAtA[i] = 0x12 i++ - v := m.UpdatedAnnotations[k] + v := m.UpdatedAnnotations[string(k)] mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v))) i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) dAtA[i] = 0xa @@ -322,11 +432,11 @@ func (m *DeploymentRollback) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.RollbackTo.Size())) - n7, err := m.RollbackTo.MarshalTo(dAtA[i:]) + n10, err := m.RollbackTo.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n7 + i += n10 return i, nil } @@ -354,28 +464,28 @@ func (m *DeploymentSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Selector.Size())) - n8, err := m.Selector.MarshalTo(dAtA[i:]) + n11, err := m.Selector.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n8 + i += n11 } dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Template.Size())) - n9, err := m.Template.MarshalTo(dAtA[i:]) + n12, err := m.Template.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n9 + i += n12 dAtA[i] = 0x22 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Strategy.Size())) - n10, err := m.Strategy.MarshalTo(dAtA[i:]) + n13, err := m.Strategy.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n10 + i += n13 dAtA[i] = 0x28 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.MinReadySeconds)) @@ -396,11 +506,11 @@ func (m *DeploymentSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x42 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.RollbackTo.Size())) - n11, err := m.RollbackTo.MarshalTo(dAtA[i:]) + n14, err := m.RollbackTo.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n11 + i += n14 } if m.ProgressDeadlineSeconds != nil { dAtA[i] = 0x48 @@ -455,6 +565,11 @@ func (m *DeploymentStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x38 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ReadyReplicas)) + if m.CollisionCount != nil { + dAtA[i] = 0x40 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(*m.CollisionCount)) + } return i, nil } @@ -481,11 +596,11 @@ func (m *DeploymentStrategy) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.RollingUpdate.Size())) - n12, err := m.RollingUpdate.MarshalTo(dAtA[i:]) + n15, err := m.RollingUpdate.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n12 + i += n15 } return i, nil } @@ -530,21 +645,44 @@ func (m *RollingUpdateDeployment) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.MaxUnavailable.Size())) - n13, err := m.MaxUnavailable.MarshalTo(dAtA[i:]) + n16, err := m.MaxUnavailable.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n13 + i += n16 } if m.MaxSurge != nil { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.MaxSurge.Size())) - n14, err := m.MaxSurge.MarshalTo(dAtA[i:]) + n17, err := m.MaxSurge.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n14 + i += n17 + } + return i, nil +} + +func (m *RollingUpdateStatefulSetStrategy) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *RollingUpdateStatefulSetStrategy) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + if m.Partition != nil { + dAtA[i] = 0x8 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(*m.Partition)) } return i, nil } @@ -567,27 +705,27 @@ func (m *Scale) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n15, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + n18, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n15 + i += n18 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) - n16, err := m.Spec.MarshalTo(dAtA[i:]) + n19, err := m.Spec.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n16 + i += n19 dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) - n17, err := m.Status.MarshalTo(dAtA[i:]) + n20, err := m.Status.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n17 + i += n20 return i, nil } @@ -631,10 +769,15 @@ func (m *ScaleStatus) MarshalTo(dAtA []byte) (int, error) { i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Replicas)) if len(m.Selector) > 0 { + keysForSelector := make([]string, 0, len(m.Selector)) for k := range m.Selector { + keysForSelector = append(keysForSelector, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForSelector) + for _, k := range keysForSelector { dAtA[i] = 0x12 i++ - v := m.Selector[k] + v := m.Selector[string(k)] mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v))) i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) dAtA[i] = 0xa @@ -672,27 +815,27 @@ func (m *StatefulSet) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n18, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + n21, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n18 + i += n21 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) - n19, err := m.Spec.MarshalTo(dAtA[i:]) + n22, err := m.Spec.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n19 + i += n22 dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) - n20, err := m.Status.MarshalTo(dAtA[i:]) + n23, err := m.Status.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n20 + i += n23 return i, nil } @@ -714,11 +857,11 @@ func (m *StatefulSetList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n21, err := m.ListMeta.MarshalTo(dAtA[i:]) + n24, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n21 + i += n24 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -758,20 +901,20 @@ func (m *StatefulSetSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Selector.Size())) - n22, err := m.Selector.MarshalTo(dAtA[i:]) + n25, err := m.Selector.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n22 + i += n25 } dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Template.Size())) - n23, err := m.Template.MarshalTo(dAtA[i:]) + n26, err := m.Template.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n23 + i += n26 if len(m.VolumeClaimTemplates) > 0 { for _, msg := range m.VolumeClaimTemplates { dAtA[i] = 0x22 @@ -788,6 +931,23 @@ func (m *StatefulSetSpec) MarshalTo(dAtA []byte) (int, error) { i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.ServiceName))) i += copy(dAtA[i:], m.ServiceName) + dAtA[i] = 0x32 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.PodManagementPolicy))) + i += copy(dAtA[i:], m.PodManagementPolicy) + dAtA[i] = 0x3a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.UpdateStrategy.Size())) + n27, err := m.UpdateStrategy.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n27 + if m.RevisionHistoryLimit != nil { + dAtA[i] = 0x40 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(*m.RevisionHistoryLimit)) + } return i, nil } @@ -814,6 +974,55 @@ func (m *StatefulSetStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x10 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Replicas)) + dAtA[i] = 0x18 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.ReadyReplicas)) + dAtA[i] = 0x20 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.CurrentReplicas)) + dAtA[i] = 0x28 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.UpdatedReplicas)) + dAtA[i] = 0x32 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.CurrentRevision))) + i += copy(dAtA[i:], m.CurrentRevision) + dAtA[i] = 0x3a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.UpdateRevision))) + i += copy(dAtA[i:], m.UpdateRevision) + return i, nil +} + +func (m *StatefulSetUpdateStrategy) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *StatefulSetUpdateStrategy) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.Type))) + i += copy(dAtA[i:], m.Type) + if m.RollingUpdate != nil { + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.RollingUpdate.Size())) + n28, err := m.RollingUpdate.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n28 + } return i, nil } @@ -844,6 +1053,31 @@ func encodeVarintGenerated(dAtA []byte, offset int, v uint64) int { dAtA[offset] = uint8(v) return offset + 1 } +func (m *ControllerRevision) Size() (n int) { + var l int + _ = l + l = m.ObjectMeta.Size() + n += 1 + l + sovGenerated(uint64(l)) + l = m.Data.Size() + n += 1 + l + sovGenerated(uint64(l)) + n += 1 + sovGenerated(uint64(m.Revision)) + return n +} + +func (m *ControllerRevisionList) Size() (n int) { + var l int + _ = l + l = m.ListMeta.Size() + n += 1 + l + sovGenerated(uint64(l)) + if len(m.Items) > 0 { + for _, e := range m.Items { + l = e.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + } + return n +} + func (m *Deployment) Size() (n int) { var l int _ = l @@ -950,6 +1184,9 @@ func (m *DeploymentStatus) Size() (n int) { } } n += 1 + sovGenerated(uint64(m.ReadyReplicas)) + if m.CollisionCount != nil { + n += 1 + sovGenerated(uint64(*m.CollisionCount)) + } return n } @@ -986,6 +1223,15 @@ func (m *RollingUpdateDeployment) Size() (n int) { return n } +func (m *RollingUpdateStatefulSetStrategy) Size() (n int) { + var l int + _ = l + if m.Partition != nil { + n += 1 + sovGenerated(uint64(*m.Partition)) + } + return n +} + func (m *Scale) Size() (n int) { var l int _ = l @@ -1068,6 +1314,13 @@ func (m *StatefulSetSpec) Size() (n int) { } l = len(m.ServiceName) n += 1 + l + sovGenerated(uint64(l)) + l = len(m.PodManagementPolicy) + n += 1 + l + sovGenerated(uint64(l)) + l = m.UpdateStrategy.Size() + n += 1 + l + sovGenerated(uint64(l)) + if m.RevisionHistoryLimit != nil { + n += 1 + sovGenerated(uint64(*m.RevisionHistoryLimit)) + } return n } @@ -1078,6 +1331,25 @@ func (m *StatefulSetStatus) Size() (n int) { n += 1 + sovGenerated(uint64(*m.ObservedGeneration)) } n += 1 + sovGenerated(uint64(m.Replicas)) + n += 1 + sovGenerated(uint64(m.ReadyReplicas)) + n += 1 + sovGenerated(uint64(m.CurrentReplicas)) + n += 1 + sovGenerated(uint64(m.UpdatedReplicas)) + l = len(m.CurrentRevision) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.UpdateRevision) + n += 1 + l + sovGenerated(uint64(l)) + return n +} + +func (m *StatefulSetUpdateStrategy) Size() (n int) { + var l int + _ = l + l = len(m.Type) + n += 1 + l + sovGenerated(uint64(l)) + if m.RollingUpdate != nil { + l = m.RollingUpdate.Size() + n += 1 + l + sovGenerated(uint64(l)) + } return n } @@ -1094,6 +1366,29 @@ func sovGenerated(x uint64) (n int) { func sozGenerated(x uint64) (n int) { return sovGenerated(uint64((x << 1) ^ uint64((int64(x) >> 63)))) } +func (this *ControllerRevision) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ControllerRevision{`, + `ObjectMeta:` + strings.Replace(strings.Replace(this.ObjectMeta.String(), "ObjectMeta", "k8s_io_apimachinery_pkg_apis_meta_v1.ObjectMeta", 1), `&`, ``, 1) + `,`, + `Data:` + strings.Replace(strings.Replace(this.Data.String(), "RawExtension", "k8s_io_apimachinery_pkg_runtime.RawExtension", 1), `&`, ``, 1) + `,`, + `Revision:` + fmt.Sprintf("%v", this.Revision) + `,`, + `}`, + }, "") + return s +} +func (this *ControllerRevisionList) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ControllerRevisionList{`, + `ListMeta:` + strings.Replace(strings.Replace(this.ListMeta.String(), "ListMeta", "k8s_io_apimachinery_pkg_apis_meta_v1.ListMeta", 1), `&`, ``, 1) + `,`, + `Items:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.Items), "ControllerRevision", "ControllerRevision", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} func (this *Deployment) String() string { if this == nil { return "nil" @@ -1184,6 +1479,7 @@ func (this *DeploymentStatus) String() string { `UnavailableReplicas:` + fmt.Sprintf("%v", this.UnavailableReplicas) + `,`, `Conditions:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.Conditions), "DeploymentCondition", "DeploymentCondition", 1), `&`, ``, 1) + `,`, `ReadyReplicas:` + fmt.Sprintf("%v", this.ReadyReplicas) + `,`, + `CollisionCount:` + valueToStringGenerated(this.CollisionCount) + `,`, `}`, }, "") return s @@ -1220,6 +1516,16 @@ func (this *RollingUpdateDeployment) String() string { }, "") return s } +func (this *RollingUpdateStatefulSetStrategy) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&RollingUpdateStatefulSetStrategy{`, + `Partition:` + valueToStringGenerated(this.Partition) + `,`, + `}`, + }, "") + return s +} func (this *Scale) String() string { if this == nil { return "nil" @@ -1297,6 +1603,9 @@ func (this *StatefulSetSpec) String() string { `Template:` + strings.Replace(strings.Replace(this.Template.String(), "PodTemplateSpec", "k8s_io_kubernetes_pkg_api_v1.PodTemplateSpec", 1), `&`, ``, 1) + `,`, `VolumeClaimTemplates:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.VolumeClaimTemplates), "PersistentVolumeClaim", "k8s_io_kubernetes_pkg_api_v1.PersistentVolumeClaim", 1), `&`, ``, 1) + `,`, `ServiceName:` + fmt.Sprintf("%v", this.ServiceName) + `,`, + `PodManagementPolicy:` + fmt.Sprintf("%v", this.PodManagementPolicy) + `,`, + `UpdateStrategy:` + strings.Replace(strings.Replace(this.UpdateStrategy.String(), "StatefulSetUpdateStrategy", "StatefulSetUpdateStrategy", 1), `&`, ``, 1) + `,`, + `RevisionHistoryLimit:` + valueToStringGenerated(this.RevisionHistoryLimit) + `,`, `}`, }, "") return s @@ -1308,6 +1617,22 @@ func (this *StatefulSetStatus) String() string { s := strings.Join([]string{`&StatefulSetStatus{`, `ObservedGeneration:` + valueToStringGenerated(this.ObservedGeneration) + `,`, `Replicas:` + fmt.Sprintf("%v", this.Replicas) + `,`, + `ReadyReplicas:` + fmt.Sprintf("%v", this.ReadyReplicas) + `,`, + `CurrentReplicas:` + fmt.Sprintf("%v", this.CurrentReplicas) + `,`, + `UpdatedReplicas:` + fmt.Sprintf("%v", this.UpdatedReplicas) + `,`, + `CurrentRevision:` + fmt.Sprintf("%v", this.CurrentRevision) + `,`, + `UpdateRevision:` + fmt.Sprintf("%v", this.UpdateRevision) + `,`, + `}`, + }, "") + return s +} +func (this *StatefulSetUpdateStrategy) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&StatefulSetUpdateStrategy{`, + `Type:` + fmt.Sprintf("%v", this.Type) + `,`, + `RollingUpdate:` + strings.Replace(fmt.Sprintf("%v", this.RollingUpdate), "RollingUpdateStatefulSetStrategy", "RollingUpdateStatefulSetStrategy", 1) + `,`, `}`, }, "") return s @@ -1320,6 +1645,246 @@ func valueToStringGenerated(v interface{}) string { pv := reflect.Indirect(rv).Interface() return fmt.Sprintf("*%v", pv) } +func (m *ControllerRevision) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ControllerRevision: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ControllerRevision: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectMeta", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.ObjectMeta.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Data", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Data.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Revision", wireType) + } + m.Revision = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Revision |= (int64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ControllerRevisionList) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ControllerRevisionList: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ControllerRevisionList: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ListMeta", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.ListMeta.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Items", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Items = append(m.Items, ControllerRevision{}) + if err := m.Items[len(m.Items)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func (m *Deployment) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 @@ -2471,6 +3036,26 @@ func (m *DeploymentStatus) Unmarshal(dAtA []byte) error { break } } + case 8: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field CollisionCount", wireType) + } + var v int64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= (int64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + m.CollisionCount = &v default: iNdEx = preIndex skippy, err := skipGenerated(dAtA[iNdEx:]) @@ -2789,6 +3374,76 @@ func (m *RollingUpdateDeployment) Unmarshal(dAtA []byte) error { } return nil } +func (m *RollingUpdateStatefulSetStrategy) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: RollingUpdateStatefulSetStrategy: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: RollingUpdateStatefulSetStrategy: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Partition", wireType) + } + var v int32 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= (int32(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + m.Partition = &v + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func (m *Scale) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 @@ -3635,6 +4290,85 @@ func (m *StatefulSetSpec) Unmarshal(dAtA []byte) error { } m.ServiceName = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PodManagementPolicy", 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.PodManagementPolicy = PodManagementPolicyType(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field UpdateStrategy", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.UpdateStrategy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 8: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field RevisionHistoryLimit", wireType) + } + var v int32 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= (int32(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + m.RevisionHistoryLimit = &v default: iNdEx = preIndex skippy, err := skipGenerated(dAtA[iNdEx:]) @@ -3724,6 +4458,233 @@ func (m *StatefulSetStatus) Unmarshal(dAtA []byte) error { break } } + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field ReadyReplicas", wireType) + } + m.ReadyReplicas = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.ReadyReplicas |= (int32(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + case 4: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field CurrentReplicas", wireType) + } + m.CurrentReplicas = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.CurrentReplicas |= (int32(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + case 5: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field UpdatedReplicas", wireType) + } + m.UpdatedReplicas = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.UpdatedReplicas |= (int32(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CurrentRevision", 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.CurrentRevision = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field UpdateRevision", 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.UpdateRevision = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *StatefulSetUpdateStrategy) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: StatefulSetUpdateStrategy: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: StatefulSetUpdateStrategy: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Type", 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.Type = StatefulSetUpdateStrategyType(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RollingUpdate", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.RollingUpdate == nil { + m.RollingUpdate = &RollingUpdateStatefulSetStrategy{} + } + if err := m.RollingUpdate.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipGenerated(dAtA[iNdEx:]) @@ -3855,101 +4816,119 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 1525 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x58, 0xcb, 0x6f, 0x5b, 0xc5, - 0x17, 0xce, 0x4d, 0xec, 0xc4, 0x99, 0x34, 0x4e, 0x33, 0xc9, 0xaf, 0xf1, 0x2f, 0x45, 0x4e, 0xe5, - 0x45, 0x1f, 0xa8, 0xbd, 0xa6, 0x69, 0xa1, 0x8f, 0x40, 0x45, 0xdc, 0x96, 0x52, 0x94, 0xd0, 0x6a, - 0xec, 0x54, 0xb4, 0x14, 0x89, 0xb1, 0x3d, 0xbd, 0x9d, 0xfa, 0xbe, 0x74, 0x67, 0x6c, 0xc5, 0x3b, - 0x36, 0x2c, 0x90, 0x58, 0xb0, 0x62, 0x87, 0xd8, 0x23, 0x24, 0x76, 0xfc, 0x0d, 0x11, 0x6c, 0xba, - 0x44, 0x2c, 0x22, 0xe2, 0xfe, 0x17, 0x5d, 0xa1, 0x99, 0x3b, 0xf7, 0xe5, 0x6b, 0x27, 0x8e, 0x11, - 0xdd, 0xb0, 0xf3, 0x9d, 0x39, 0xdf, 0x77, 0xce, 0xcc, 0x7c, 0xe7, 0xcc, 0x19, 0x83, 0x6b, 0xad, - 0xeb, 0x4c, 0xa7, 0x4e, 0xb9, 0xd5, 0xae, 0x13, 0xcf, 0x26, 0x9c, 0xb0, 0xb2, 0xdb, 0x32, 0xca, - 0xd8, 0xa5, 0xac, 0x8c, 0x5d, 0x97, 0x95, 0x3b, 0x97, 0xeb, 0x84, 0xe3, 0xcb, 0x65, 0x83, 0xd8, - 0xc4, 0xc3, 0x9c, 0x34, 0x75, 0xd7, 0x73, 0xb8, 0x03, 0xcf, 0xf9, 0x40, 0x3d, 0x02, 0xea, 0x6e, - 0xcb, 0xd0, 0x05, 0x50, 0x17, 0x40, 0x5d, 0x01, 0x57, 0x2f, 0x19, 0x94, 0x3f, 0x6f, 0xd7, 0xf5, - 0x86, 0x63, 0x95, 0x0d, 0xc7, 0x70, 0xca, 0x12, 0x5f, 0x6f, 0x3f, 0x93, 0x5f, 0xf2, 0x43, 0xfe, - 0xf2, 0x79, 0x57, 0xaf, 0xaa, 0x80, 0xb0, 0x4b, 0x2d, 0xdc, 0x78, 0x4e, 0x6d, 0xe2, 0x75, 0xa3, - 0x90, 0x2c, 0xc2, 0x71, 0xb9, 0x93, 0x8a, 0x66, 0xb5, 0x3c, 0x0c, 0xe5, 0xb5, 0x6d, 0x4e, 0x2d, - 0x92, 0x02, 0xbc, 0x77, 0x14, 0x80, 0x35, 0x9e, 0x13, 0x0b, 0xa7, 0x70, 0x57, 0x86, 0xe1, 0xda, - 0x9c, 0x9a, 0x65, 0x6a, 0x73, 0xc6, 0xbd, 0x14, 0x28, 0xb6, 0x26, 0x46, 0xbc, 0x0e, 0xf1, 0xa2, - 0x05, 0x91, 0x5d, 0x6c, 0xb9, 0x26, 0x19, 0xb4, 0xa6, 0x8b, 0x43, 0x8f, 0x66, 0x90, 0xf5, 0x07, - 0x87, 0x1c, 0x24, 0xd9, 0xe5, 0xc4, 0x66, 0xd4, 0xb1, 0x87, 0x1e, 0x67, 0xe9, 0xe7, 0x49, 0x00, - 0xee, 0x10, 0xd7, 0x74, 0xba, 0x16, 0xb1, 0x39, 0xfc, 0x12, 0xe4, 0xc4, 0x56, 0x37, 0x31, 0xc7, - 0x05, 0xed, 0x8c, 0x76, 0x7e, 0x6e, 0xfd, 0x1d, 0x5d, 0x1d, 0x78, 0x7c, 0xe5, 0xd1, 0x91, 0x0b, - 0x6b, 0xbd, 0x73, 0x59, 0x7f, 0x50, 0x7f, 0x41, 0x1a, 0x7c, 0x9b, 0x70, 0x5c, 0x81, 0x7b, 0xfb, - 0x6b, 0x13, 0xbd, 0xfd, 0x35, 0x10, 0x8d, 0xa1, 0x90, 0x15, 0x3e, 0x06, 0x19, 0xe6, 0x92, 0x46, - 0x61, 0x52, 0xb2, 0x5f, 0xd3, 0x47, 0x94, 0x93, 0x1e, 0x05, 0x59, 0x75, 0x49, 0xa3, 0x72, 0x42, - 0x39, 0xc9, 0x88, 0x2f, 0x24, 0x29, 0x21, 0x06, 0xd3, 0x8c, 0x63, 0xde, 0x66, 0x85, 0x29, 0x49, - 0x7e, 0x63, 0x1c, 0x72, 0x49, 0x50, 0xc9, 0x2b, 0xfa, 0x69, 0xff, 0x1b, 0x29, 0xe2, 0xd2, 0xc1, - 0x14, 0x58, 0x8a, 0x8c, 0x6f, 0x3b, 0x76, 0x93, 0x72, 0xea, 0xd8, 0x70, 0x03, 0x64, 0x78, 0xd7, - 0x25, 0x72, 0xcf, 0x66, 0x2b, 0xe7, 0x82, 0xe0, 0x6a, 0x5d, 0x97, 0xbc, 0xde, 0x5f, 0x5b, 0x19, - 0x00, 0x11, 0x53, 0x48, 0x82, 0xe0, 0xa3, 0x30, 0xee, 0x49, 0x09, 0xbf, 0x95, 0x74, 0xfe, 0x7a, - 0x7f, 0xed, 0x50, 0x49, 0xe8, 0x21, 0x67, 0x32, 0x58, 0x78, 0x16, 0x4c, 0x7b, 0x04, 0x33, 0xc7, - 0x2e, 0x64, 0x24, 0x6f, 0xb8, 0x28, 0x24, 0x47, 0x91, 0x9a, 0x85, 0x17, 0xc0, 0x8c, 0x45, 0x18, - 0xc3, 0x06, 0x29, 0x64, 0xa5, 0xe1, 0x82, 0x32, 0x9c, 0xd9, 0xf6, 0x87, 0x51, 0x30, 0x0f, 0x5f, - 0x80, 0xbc, 0x89, 0x19, 0xdf, 0x71, 0x9b, 0x98, 0x93, 0x1a, 0xb5, 0x48, 0x61, 0x5a, 0x6e, 0xf5, - 0xdb, 0xa3, 0xa9, 0x44, 0x20, 0x2a, 0xa7, 0x14, 0x7b, 0x7e, 0x2b, 0xc1, 0x84, 0xfa, 0x98, 0x61, - 0x07, 0x40, 0x31, 0x52, 0xf3, 0xb0, 0xcd, 0xfc, 0x2d, 0x13, 0xfe, 0x66, 0x8e, 0xed, 0x6f, 0x55, - 0xf9, 0x83, 0x5b, 0x29, 0x36, 0x34, 0xc0, 0x43, 0x69, 0x4f, 0x03, 0xf9, 0xe8, 0xc0, 0xb6, 0x28, - 0xe3, 0xf0, 0x69, 0x2a, 0x2d, 0xf4, 0xd1, 0x02, 0x10, 0x68, 0x99, 0x14, 0x27, 0x55, 0x10, 0xb9, - 0x60, 0x24, 0x96, 0x12, 0x9f, 0x81, 0x2c, 0xe5, 0xc4, 0x12, 0xc7, 0x3f, 0x75, 0x7e, 0x6e, 0xfd, - 0xca, 0x18, 0xb2, 0xad, 0xcc, 0x2b, 0xfe, 0xec, 0x7d, 0xc1, 0x84, 0x7c, 0xc2, 0xd2, 0xb7, 0x53, - 0x00, 0x46, 0x46, 0xc8, 0x31, 0xcd, 0x3a, 0x6e, 0xb4, 0xe0, 0x19, 0x90, 0xb1, 0xb1, 0x15, 0xa8, - 0x35, 0x4c, 0xa5, 0x4f, 0xb1, 0x45, 0x90, 0x9c, 0x81, 0x3f, 0x6a, 0x00, 0xb6, 0xe5, 0x51, 0x34, - 0x37, 0x6d, 0xdb, 0xe1, 0x58, 0xec, 0x4e, 0x10, 0x60, 0x75, 0x8c, 0x00, 0x03, 0xdf, 0xfa, 0x4e, - 0x8a, 0xf5, 0xae, 0xcd, 0xbd, 0x6e, 0x74, 0x4a, 0x69, 0x03, 0x34, 0x20, 0x14, 0xd8, 0x02, 0xc0, - 0x53, 0x9c, 0x35, 0x47, 0x25, 0xfc, 0xe8, 0xd5, 0x24, 0x08, 0xe7, 0xb6, 0x63, 0x3f, 0xa3, 0x46, - 0x54, 0xb2, 0x50, 0x48, 0x89, 0x62, 0xf4, 0xab, 0x77, 0xc1, 0xca, 0x90, 0xb8, 0xe1, 0x49, 0x30, - 0xd5, 0x22, 0x5d, 0x7f, 0x2b, 0x91, 0xf8, 0x09, 0x97, 0x41, 0xb6, 0x83, 0xcd, 0x36, 0xf1, 0xb3, - 0x19, 0xf9, 0x1f, 0x37, 0x27, 0xaf, 0x6b, 0xa5, 0x3f, 0xb3, 0x71, 0x65, 0x89, 0xca, 0x05, 0xcf, - 0x83, 0x9c, 0x47, 0x5c, 0x93, 0x36, 0x30, 0x93, 0x1c, 0xd9, 0xca, 0x09, 0xa1, 0x12, 0xa4, 0xc6, - 0x50, 0x38, 0x0b, 0xbf, 0x00, 0x39, 0x46, 0x4c, 0xd2, 0xe0, 0x8e, 0xa7, 0x8a, 0xe7, 0x95, 0x11, - 0x35, 0x88, 0xeb, 0xc4, 0xac, 0x2a, 0xa8, 0x4f, 0x1f, 0x7c, 0xa1, 0x90, 0x12, 0x7e, 0x0e, 0x72, - 0x9c, 0x58, 0xae, 0x89, 0x39, 0x51, 0xbb, 0x79, 0x69, 0xf8, 0x6e, 0x0a, 0xda, 0x87, 0x4e, 0xb3, - 0xa6, 0x00, 0xb2, 0x22, 0x87, 0x0a, 0x0f, 0x46, 0x51, 0x48, 0x08, 0x29, 0xc8, 0x31, 0x2e, 0xae, - 0x1d, 0xa3, 0x2b, 0x6b, 0xd1, 0xdc, 0xfa, 0xc6, 0x58, 0xb5, 0xd9, 0xa7, 0x88, 0x5c, 0x05, 0x23, - 0x28, 0xa4, 0x87, 0x9b, 0x60, 0xc1, 0xa2, 0x36, 0x22, 0xb8, 0xd9, 0xad, 0x92, 0x86, 0x63, 0x37, - 0x99, 0x2c, 0x6a, 0xd9, 0xca, 0x8a, 0x02, 0x2d, 0x6c, 0x27, 0xa7, 0x51, 0xbf, 0x3d, 0xdc, 0x02, - 0xcb, 0x1e, 0xe9, 0x50, 0x71, 0x71, 0x7e, 0x4c, 0x19, 0x77, 0xbc, 0xee, 0x16, 0xb5, 0x28, 0x97, - 0xa5, 0x2e, 0x5b, 0x29, 0xf4, 0xf6, 0xd7, 0x96, 0xd1, 0x80, 0x79, 0x34, 0x10, 0x25, 0xaa, 0xb0, - 0x8b, 0xdb, 0x8c, 0x34, 0x65, 0xe9, 0xca, 0x45, 0x55, 0xf8, 0xa1, 0x1c, 0x45, 0x6a, 0x16, 0x1a, - 0x09, 0x41, 0xe7, 0xfe, 0x99, 0xa0, 0xf3, 0xc3, 0xc5, 0x0c, 0x77, 0xc0, 0x8a, 0xeb, 0x39, 0x86, - 0x47, 0x18, 0xbb, 0x43, 0x70, 0xd3, 0xa4, 0x36, 0x09, 0x76, 0x6a, 0x56, 0xae, 0xf0, 0x74, 0x6f, - 0x7f, 0x6d, 0xe5, 0xe1, 0x60, 0x13, 0x34, 0x0c, 0x5b, 0xfa, 0x3e, 0x03, 0x4e, 0xf6, 0xdf, 0xa3, - 0xf0, 0x13, 0x00, 0x9d, 0xba, 0xec, 0x7d, 0x9a, 0xf7, 0xfc, 0xce, 0x83, 0x3a, 0xb6, 0x14, 0xfa, - 0x54, 0x94, 0xf1, 0x0f, 0x52, 0x16, 0x68, 0x00, 0x0a, 0x5e, 0x8c, 0xa5, 0xca, 0xa4, 0x0c, 0x34, - 0xd4, 0xc1, 0x80, 0x74, 0xd9, 0x04, 0x0b, 0xaa, 0x6a, 0x04, 0x93, 0x52, 0xd6, 0x31, 0x1d, 0xec, - 0x24, 0xa7, 0x51, 0xbf, 0x3d, 0xbc, 0x07, 0x16, 0x71, 0x07, 0x53, 0x13, 0xd7, 0x4d, 0x12, 0x92, - 0x64, 0x24, 0xc9, 0xff, 0x15, 0xc9, 0xe2, 0x66, 0xbf, 0x01, 0x4a, 0x63, 0xe0, 0x36, 0x58, 0x6a, - 0xdb, 0x69, 0x2a, 0x5f, 0x97, 0xa7, 0x15, 0xd5, 0xd2, 0x4e, 0xda, 0x04, 0x0d, 0xc2, 0x41, 0x17, - 0x80, 0x46, 0x70, 0xe5, 0xb3, 0xc2, 0xb4, 0xac, 0xc9, 0xef, 0x8f, 0x91, 0x4f, 0x61, 0xdf, 0x10, - 0xd5, 0xbf, 0x70, 0x88, 0xa1, 0x98, 0x0f, 0xb8, 0x01, 0xe6, 0x3d, 0x91, 0x21, 0x61, 0xe8, 0x33, - 0x32, 0xf4, 0xff, 0x29, 0xd8, 0x3c, 0x8a, 0x4f, 0xa2, 0xa4, 0x6d, 0xe9, 0x77, 0x2d, 0x7e, 0x09, - 0x05, 0x29, 0x0b, 0x6f, 0x26, 0x5a, 0xa6, 0xb3, 0x7d, 0x2d, 0xd3, 0xa9, 0x34, 0x22, 0xd6, 0x31, - 0x75, 0xc1, 0xbc, 0x10, 0x34, 0xb5, 0x0d, 0xff, 0x10, 0x55, 0x41, 0xfc, 0xf0, 0x58, 0xe9, 0x12, - 0xa2, 0x63, 0xd7, 0xe8, 0xa2, 0x5c, 0x4d, 0x7c, 0x12, 0x25, 0x3d, 0x95, 0x6e, 0x81, 0x7c, 0x32, - 0xd7, 0x7c, 0x5d, 0xfa, 0x89, 0xaf, 0x94, 0x1d, 0xd3, 0xa5, 0x3f, 0x8e, 0x42, 0x8b, 0xd2, 0x2b, - 0x0d, 0xac, 0x0c, 0xf1, 0x0e, 0x4d, 0x90, 0xb7, 0xf0, 0x6e, 0x4c, 0x07, 0x47, 0xf6, 0xe0, 0xe2, - 0xf5, 0xa1, 0xfb, 0xaf, 0x0f, 0xfd, 0xbe, 0xcd, 0x1f, 0x78, 0x55, 0xee, 0x51, 0xdb, 0xa8, 0x40, - 0xd1, 0x5f, 0x6d, 0x27, 0xb8, 0x50, 0x1f, 0x37, 0x7c, 0x02, 0x72, 0x16, 0xde, 0xad, 0xb6, 0x3d, - 0x23, 0xd8, 0xbf, 0xe3, 0xfb, 0x91, 0xb7, 0xc9, 0xb6, 0x62, 0x41, 0x21, 0x5f, 0xe9, 0x87, 0x49, - 0x90, 0xad, 0x36, 0xb0, 0x49, 0xde, 0xc0, 0x8b, 0xa2, 0x96, 0x78, 0x51, 0xac, 0x8f, 0xac, 0x01, - 0x19, 0xdf, 0xd0, 0xc7, 0xc4, 0xd3, 0xbe, 0xc7, 0xc4, 0xd5, 0x63, 0xf2, 0x1e, 0xfe, 0x8e, 0xb8, - 0x01, 0x66, 0x43, 0xf7, 0x89, 0xc2, 0xa6, 0x1d, 0x55, 0xd8, 0x4a, 0x3f, 0x4d, 0x82, 0xb9, 0x98, - 0x8b, 0xe3, 0xa1, 0xa1, 0x9b, 0xe8, 0x22, 0x44, 0xe5, 0xa8, 0x8c, 0xb3, 0x30, 0x3d, 0xe8, 0x20, - 0xfc, 0xe6, 0x2d, 0xba, 0x90, 0xd3, 0x8d, 0xc5, 0x2d, 0x90, 0xe7, 0xd8, 0x33, 0x08, 0x0f, 0xe6, - 0xe4, 0x86, 0xce, 0x46, 0xcf, 0x80, 0x5a, 0x62, 0x16, 0xf5, 0x59, 0xaf, 0x6e, 0x80, 0xf9, 0x84, - 0xb3, 0x63, 0x75, 0x5c, 0xbf, 0x88, 0xcd, 0xe2, 0x98, 0x93, 0x67, 0x6d, 0xb3, 0x4a, 0xde, 0xc4, - 0xfb, 0xf6, 0x49, 0x42, 0x8d, 0xd7, 0x47, 0xdf, 0xdc, 0x28, 0xca, 0xa1, 0x9a, 0xac, 0xf7, 0x69, - 0xf2, 0xe6, 0x58, 0xec, 0x87, 0x2b, 0xf3, 0x37, 0x0d, 0x2c, 0xc4, 0xac, 0xdf, 0xc0, 0xf3, 0xe7, - 0x71, 0xf2, 0xf9, 0x73, 0x75, 0x9c, 0x45, 0x0d, 0x79, 0xff, 0xfc, 0x3a, 0x95, 0x58, 0xcc, 0x7f, - 0xa8, 0xe3, 0xfe, 0x5a, 0x03, 0xcb, 0x1d, 0xc7, 0x6c, 0x5b, 0xe4, 0xb6, 0x89, 0xa9, 0x15, 0x58, - 0x88, 0xfe, 0xe5, 0x88, 0x37, 0xa6, 0xf4, 0x44, 0x3c, 0x46, 0x19, 0x27, 0x36, 0x7f, 0x14, 0x71, - 0x54, 0xde, 0x52, 0xfe, 0x96, 0x1f, 0x0d, 0x20, 0x46, 0x03, 0xdd, 0xc1, 0x77, 0xc1, 0x9c, 0x68, - 0xe4, 0x68, 0x83, 0x88, 0xd7, 0xa5, 0xfa, 0x7f, 0x61, 0x49, 0x11, 0xcd, 0x55, 0xa3, 0x29, 0x14, - 0xb7, 0x2b, 0x7d, 0xa3, 0x81, 0xc5, 0x94, 0x66, 0xe1, 0x47, 0x87, 0x74, 0x93, 0xa7, 0xfe, 0xad, - 0x4e, 0xb2, 0x72, 0x61, 0xef, 0xa0, 0x38, 0xf1, 0xf2, 0xa0, 0x38, 0xf1, 0xc7, 0x41, 0x71, 0xe2, - 0xab, 0x5e, 0x51, 0xdb, 0xeb, 0x15, 0xb5, 0x97, 0xbd, 0xa2, 0xf6, 0x57, 0xaf, 0xa8, 0x7d, 0xf7, - 0xaa, 0x38, 0xf1, 0x64, 0x46, 0x29, 0xf2, 0xef, 0x00, 0x00, 0x00, 0xff, 0xff, 0xd6, 0xb9, 0xde, - 0x1a, 0x56, 0x15, 0x00, 0x00, + // 1812 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x58, 0x4f, 0x6f, 0x23, 0x49, + 0x15, 0x4f, 0xfb, 0x4f, 0xe2, 0x54, 0x36, 0xce, 0x4c, 0x25, 0x4c, 0xbc, 0x59, 0x70, 0x22, 0x1f, + 0x76, 0x03, 0x6c, 0xda, 0x4c, 0x66, 0xd8, 0x9d, 0x49, 0xd0, 0x88, 0x74, 0x66, 0x58, 0x06, 0x25, + 0x24, 0x2a, 0x27, 0x23, 0x76, 0x58, 0xa4, 0x2d, 0xb7, 0x6b, 0x3a, 0xbd, 0xe9, 0x7f, 0xea, 0xae, + 0x36, 0xe3, 0x1b, 0x5a, 0x89, 0x1b, 0x07, 0xbe, 0x00, 0xe2, 0x8e, 0x90, 0xf8, 0x1a, 0x11, 0x1c, + 0x58, 0x71, 0x1a, 0x71, 0x88, 0x88, 0xf7, 0x23, 0x20, 0x2e, 0x73, 0x42, 0x55, 0x5d, 0xfd, 0xdf, + 0x9d, 0xd8, 0x46, 0xe4, 0xb2, 0x37, 0x77, 0xbd, 0xf7, 0x7e, 0xef, 0x55, 0xd5, 0x7b, 0xaf, 0x7e, + 0xcf, 0xe0, 0xe3, 0xf3, 0x47, 0x9e, 0xac, 0xdb, 0xed, 0x73, 0xbf, 0x4b, 0x5c, 0x8b, 0x50, 0xe2, + 0xb5, 0x9d, 0x73, 0xad, 0x8d, 0x1d, 0xdd, 0x6b, 0x63, 0xc7, 0xf1, 0xda, 0xfd, 0xfb, 0x5d, 0x42, + 0xf1, 0xfd, 0xb6, 0x46, 0x2c, 0xe2, 0x62, 0x4a, 0x7a, 0xb2, 0xe3, 0xda, 0xd4, 0x86, 0x1f, 0x04, + 0x86, 0x72, 0x6c, 0x28, 0x3b, 0xe7, 0x9a, 0xcc, 0x0c, 0x65, 0x66, 0x28, 0x0b, 0xc3, 0xb5, 0x2d, + 0x4d, 0xa7, 0x67, 0x7e, 0x57, 0x56, 0x6d, 0xb3, 0xad, 0xd9, 0x9a, 0xdd, 0xe6, 0xf6, 0x5d, 0xff, + 0x15, 0xff, 0xe2, 0x1f, 0xfc, 0x57, 0x80, 0xbb, 0xf6, 0x50, 0x04, 0x84, 0x1d, 0xdd, 0xc4, 0xea, + 0x99, 0x6e, 0x11, 0x77, 0x10, 0x87, 0x64, 0x12, 0x8a, 0xdb, 0xfd, 0x5c, 0x34, 0x6b, 0xed, 0x22, + 0x2b, 0xd7, 0xb7, 0xa8, 0x6e, 0x92, 0x9c, 0xc1, 0x47, 0x37, 0x19, 0x78, 0xea, 0x19, 0x31, 0x71, + 0xce, 0xee, 0x41, 0x91, 0x9d, 0x4f, 0x75, 0xa3, 0xad, 0x5b, 0xd4, 0xa3, 0x6e, 0xce, 0xe8, 0xc3, + 0xc2, 0x43, 0x1e, 0xb5, 0x97, 0xc7, 0xd7, 0x5c, 0x89, 0x63, 0x1b, 0xba, 0x3a, 0x28, 0xba, 0x94, + 0xd6, 0x7f, 0x24, 0x00, 0xf7, 0x6d, 0x8b, 0xba, 0xb6, 0x61, 0x10, 0x17, 0x91, 0xbe, 0xee, 0xe9, + 0xb6, 0x05, 0x3f, 0x07, 0x35, 0x76, 0x70, 0x3d, 0x4c, 0x71, 0x43, 0xda, 0x90, 0x36, 0x17, 0xb6, + 0x7f, 0x20, 0x8b, 0xeb, 0x4b, 0xee, 0x23, 0xbe, 0x40, 0xa6, 0x2d, 0xf7, 0xef, 0xcb, 0x47, 0xdd, + 0x2f, 0x88, 0x4a, 0x0f, 0x09, 0xc5, 0x0a, 0xbc, 0xb8, 0x5c, 0x9f, 0x19, 0x5e, 0xae, 0x83, 0x78, + 0x0d, 0x45, 0xa8, 0xf0, 0x08, 0x54, 0x38, 0x7a, 0x89, 0xa3, 0x6f, 0x15, 0xa2, 0x8b, 0xd3, 0x95, + 0x11, 0xfe, 0xf5, 0xb3, 0xd7, 0x94, 0x58, 0x2c, 0x3c, 0xe5, 0x1d, 0x01, 0x5d, 0x79, 0x8a, 0x29, + 0x46, 0x1c, 0x08, 0x7e, 0x08, 0x6a, 0xae, 0x08, 0xbf, 0x51, 0xde, 0x90, 0x36, 0xcb, 0xca, 0x1d, + 0xa1, 0x55, 0x0b, 0xb7, 0x85, 0x22, 0x8d, 0xd6, 0x1b, 0x09, 0xdc, 0xcb, 0xef, 0xfb, 0x40, 0xf7, + 0x28, 0xfc, 0x2c, 0xb7, 0x77, 0x79, 0xbc, 0xbd, 0x33, 0x6b, 0xbe, 0xf3, 0xc8, 0x71, 0xb8, 0x92, + 0xd8, 0xf7, 0xe7, 0xa0, 0xaa, 0x53, 0x62, 0x7a, 0x8d, 0xd2, 0x46, 0x79, 0x73, 0x61, 0x7b, 0x57, + 0x1e, 0xb3, 0x2a, 0xe4, 0x7c, 0xb4, 0xca, 0xa2, 0xf0, 0x53, 0x7d, 0xce, 0x10, 0x51, 0x00, 0xdc, + 0xfa, 0x73, 0x09, 0x80, 0xa7, 0xc4, 0x31, 0xec, 0x81, 0x49, 0x2c, 0x7a, 0x0b, 0x57, 0xf9, 0x29, + 0xa8, 0x78, 0x0e, 0x51, 0xc5, 0x55, 0x7e, 0x3c, 0xf6, 0x8e, 0xe2, 0x20, 0x3b, 0x0e, 0x51, 0xe3, + 0x4b, 0x65, 0x5f, 0x88, 0x43, 0x42, 0x0c, 0x66, 0x3d, 0x8a, 0xa9, 0xef, 0xf1, 0x2b, 0x5d, 0xd8, + 0x7e, 0x3c, 0x0d, 0x38, 0x07, 0x50, 0xea, 0x02, 0x7e, 0x36, 0xf8, 0x46, 0x02, 0xb8, 0x75, 0x55, + 0x06, 0xcb, 0xb1, 0xf2, 0xbe, 0x6d, 0xf5, 0x74, 0xca, 0x4a, 0x60, 0x17, 0x54, 0xe8, 0xc0, 0x21, + 0xfc, 0xcc, 0xe6, 0x95, 0x0f, 0xc2, 0xe0, 0x4e, 0x06, 0x0e, 0x79, 0x7b, 0xb9, 0xbe, 0x3a, 0xc2, + 0x84, 0x89, 0x10, 0x37, 0x82, 0x2f, 0xa2, 0xb8, 0x4b, 0xdc, 0xfc, 0x49, 0xda, 0xf9, 0xdb, 0xcb, + 0xf5, 0x6b, 0x2b, 0x5c, 0x8e, 0x30, 0xd3, 0xc1, 0xc2, 0xf7, 0xc1, 0xac, 0x4b, 0xb0, 0x67, 0x5b, + 0x8d, 0x0a, 0xc7, 0x8d, 0x36, 0x85, 0xf8, 0x2a, 0x12, 0x52, 0xf8, 0x5d, 0x30, 0x67, 0x12, 0xcf, + 0xc3, 0x1a, 0x69, 0x54, 0xb9, 0xe2, 0x92, 0x50, 0x9c, 0x3b, 0x0c, 0x96, 0x51, 0x28, 0x87, 0x5f, + 0x80, 0xba, 0x81, 0x3d, 0x7a, 0xea, 0xf4, 0x30, 0x25, 0x27, 0xba, 0x49, 0x1a, 0xb3, 0xfc, 0xa8, + 0xbf, 0x37, 0x5e, 0x96, 0x30, 0x0b, 0xe5, 0x9e, 0x40, 0xaf, 0x1f, 0xa4, 0x90, 0x50, 0x06, 0x19, + 0xf6, 0x01, 0x64, 0x2b, 0x27, 0x2e, 0xb6, 0xbc, 0xe0, 0xc8, 0x98, 0xbf, 0xb9, 0x89, 0xfd, 0xad, + 0x09, 0x7f, 0xf0, 0x20, 0x87, 0x86, 0x46, 0x78, 0x68, 0x5d, 0x48, 0xa0, 0x1e, 0x5f, 0xd8, 0x2d, + 0x54, 0xf9, 0x2f, 0xd2, 0x55, 0xfe, 0x60, 0x8a, 0xb4, 0x2d, 0xa8, 0xee, 0xdf, 0x95, 0x01, 0x8c, + 0x95, 0x90, 0x6d, 0x18, 0x5d, 0xac, 0x9e, 0xc3, 0x0d, 0x50, 0xb1, 0xb0, 0x19, 0x66, 0x6b, 0x54, + 0x4a, 0x3f, 0xc7, 0x26, 0x41, 0x5c, 0x02, 0xff, 0x28, 0x01, 0xe8, 0xf3, 0xab, 0xe8, 0xed, 0x59, + 0x96, 0x4d, 0x31, 0x3b, 0x9d, 0x30, 0xc0, 0xce, 0x14, 0x01, 0x86, 0xbe, 0xe5, 0xd3, 0x1c, 0xea, + 0x33, 0x8b, 0xba, 0x83, 0xf8, 0x96, 0xf2, 0x0a, 0x68, 0x44, 0x28, 0xf0, 0x1c, 0x00, 0x57, 0x60, + 0x9e, 0xd8, 0xa2, 0xe0, 0xc7, 0xef, 0x26, 0x61, 0x38, 0xfb, 0xb6, 0xf5, 0x4a, 0xd7, 0xe2, 0x96, + 0x85, 0x22, 0x48, 0x94, 0x80, 0x5f, 0x7b, 0x06, 0x56, 0x0b, 0xe2, 0x86, 0x77, 0x40, 0xf9, 0x9c, + 0x0c, 0x82, 0xa3, 0x44, 0xec, 0x27, 0x5c, 0x01, 0xd5, 0x3e, 0x36, 0x7c, 0x12, 0x54, 0x33, 0x0a, + 0x3e, 0x76, 0x4a, 0x8f, 0xa4, 0xd6, 0x3f, 0xab, 0xc9, 0xcc, 0x62, 0x9d, 0x0b, 0x6e, 0xb2, 0x87, + 0xc8, 0x31, 0x74, 0x15, 0x7b, 0x1c, 0xa3, 0xaa, 0xbc, 0x13, 0x3c, 0x42, 0xc1, 0x1a, 0x8a, 0xa4, + 0xf0, 0x57, 0xa0, 0xe6, 0x11, 0x83, 0xa8, 0xd4, 0x76, 0x45, 0xf3, 0x7c, 0x30, 0x66, 0x0e, 0xe2, + 0x2e, 0x31, 0x3a, 0xc2, 0x34, 0x80, 0x0f, 0xbf, 0x50, 0x04, 0x09, 0x7f, 0x09, 0x6a, 0x94, 0x98, + 0x8e, 0x81, 0x29, 0x11, 0xa7, 0xb9, 0x55, 0x7c, 0x9a, 0x0c, 0xf6, 0xd8, 0xee, 0x9d, 0x08, 0x03, + 0xde, 0x91, 0xa3, 0x0c, 0x0f, 0x57, 0x51, 0x04, 0x08, 0x75, 0x50, 0xf3, 0x28, 0x63, 0x12, 0xda, + 0x80, 0xf7, 0xa2, 0x49, 0x9e, 0xb2, 0x64, 0x6f, 0x0e, 0x20, 0x62, 0x57, 0xe1, 0x0a, 0x8a, 0xe0, + 0xe1, 0x1e, 0x58, 0x32, 0x75, 0x0b, 0x11, 0xdc, 0x1b, 0x74, 0x88, 0x6a, 0x5b, 0x3d, 0x8f, 0x37, + 0xb5, 0xaa, 0xb2, 0x2a, 0x8c, 0x96, 0x0e, 0xd3, 0x62, 0x94, 0xd5, 0x87, 0x07, 0x60, 0x25, 0x7c, + 0xfa, 0x7f, 0xaa, 0x7b, 0xd4, 0x76, 0x07, 0x07, 0xba, 0xa9, 0x53, 0xde, 0xea, 0xaa, 0x4a, 0x63, + 0x78, 0xb9, 0xbe, 0x82, 0x46, 0xc8, 0xd1, 0x48, 0x2b, 0xd6, 0x85, 0x1d, 0xec, 0x7b, 0xa4, 0xc7, + 0x5b, 0x57, 0x2d, 0xee, 0xc2, 0xc7, 0x7c, 0x15, 0x09, 0x29, 0xd4, 0x52, 0x09, 0x5d, 0xfb, 0xdf, + 0x12, 0xba, 0x5e, 0x9c, 0xcc, 0xf0, 0x14, 0xac, 0x3a, 0xae, 0xad, 0xb9, 0xc4, 0xf3, 0x9e, 0x12, + 0xdc, 0x33, 0x74, 0x8b, 0x84, 0x27, 0x35, 0xcf, 0x77, 0xf8, 0xde, 0xf0, 0x72, 0x7d, 0xf5, 0x78, + 0xb4, 0x0a, 0x2a, 0xb2, 0x6d, 0xfd, 0xa3, 0x02, 0xee, 0x64, 0xdf, 0x51, 0xf8, 0x33, 0x00, 0xed, + 0xae, 0x47, 0xdc, 0x3e, 0xe9, 0x7d, 0x12, 0x90, 0x49, 0xc6, 0xb8, 0x24, 0xce, 0xb8, 0xa2, 0x8a, + 0x3f, 0xca, 0x69, 0xa0, 0x11, 0x56, 0x01, 0x67, 0x13, 0xa5, 0x52, 0xe2, 0x81, 0x26, 0x38, 0x5b, + 0xae, 0x5c, 0xf6, 0xc0, 0x92, 0xe8, 0x1a, 0xa1, 0x90, 0xa7, 0x75, 0x22, 0x0f, 0x4e, 0xd3, 0x62, + 0x94, 0xd5, 0x87, 0x9f, 0x80, 0xbb, 0xb8, 0x8f, 0x75, 0x03, 0x77, 0x0d, 0x12, 0x81, 0x54, 0x38, + 0xc8, 0xbb, 0x02, 0xe4, 0xee, 0x5e, 0x56, 0x01, 0xe5, 0x6d, 0xe0, 0x21, 0x58, 0xf6, 0xad, 0x3c, + 0x54, 0x90, 0x97, 0xef, 0x09, 0xa8, 0xe5, 0xd3, 0xbc, 0x0a, 0x1a, 0x65, 0x07, 0x1d, 0x00, 0xd4, + 0xf0, 0xc9, 0xf7, 0x1a, 0xb3, 0xbc, 0x27, 0xff, 0x68, 0x8a, 0x7a, 0x8a, 0x78, 0x43, 0xdc, 0xff, + 0xa2, 0x25, 0x0f, 0x25, 0x7c, 0xc0, 0x5d, 0xb0, 0xe8, 0xb2, 0x0a, 0x89, 0x42, 0x9f, 0xe3, 0xa1, + 0x7f, 0x4b, 0x98, 0x2d, 0xa2, 0xa4, 0x10, 0xa5, 0x75, 0xe1, 0x0e, 0xa8, 0xab, 0xb6, 0x61, 0xf0, + 0xca, 0xd8, 0xb7, 0x7d, 0x8b, 0xf2, 0xe4, 0x2e, 0x2b, 0x90, 0x71, 0x80, 0xfd, 0x94, 0x04, 0x65, + 0x34, 0x5b, 0x7f, 0x93, 0x92, 0x0f, 0x58, 0x58, 0xee, 0x70, 0x27, 0x45, 0xb7, 0xde, 0xcf, 0xd0, + 0xad, 0x7b, 0x79, 0x8b, 0x04, 0xdb, 0x1a, 0x80, 0x45, 0x56, 0x0c, 0xba, 0xa5, 0x05, 0x09, 0x20, + 0x9a, 0xe9, 0x8f, 0x27, 0x2a, 0xb5, 0xc8, 0x3a, 0xf1, 0x04, 0xdf, 0xe5, 0x27, 0x91, 0x14, 0xa2, + 0xb4, 0xa7, 0xd6, 0x13, 0x50, 0x4f, 0xd7, 0x69, 0x6a, 0x0e, 0x91, 0x6e, 0x9c, 0x43, 0xbe, 0x96, + 0xc0, 0x6a, 0x81, 0x77, 0x68, 0x80, 0xba, 0x89, 0x5f, 0x27, 0x72, 0xe8, 0x46, 0xfe, 0xce, 0x46, + 0x4a, 0x39, 0x18, 0x29, 0xe5, 0xe7, 0x16, 0x3d, 0x72, 0x3b, 0xd4, 0xd5, 0x2d, 0x2d, 0xb8, 0x97, + 0xc3, 0x14, 0x16, 0xca, 0x60, 0xc3, 0x97, 0xa0, 0x66, 0xe2, 0xd7, 0x1d, 0xdf, 0xd5, 0xc2, 0xf3, + 0x9b, 0xdc, 0x0f, 0x7f, 0x89, 0x0e, 0x05, 0x0a, 0x8a, 0xf0, 0x5a, 0x47, 0x60, 0x23, 0xb5, 0x49, + 0xd6, 0x4a, 0xc8, 0x2b, 0xdf, 0xe8, 0x90, 0x38, 0x01, 0xbe, 0x0f, 0xe6, 0x1d, 0xec, 0x52, 0x3d, + 0x6a, 0x27, 0x55, 0x65, 0x71, 0x78, 0xb9, 0x3e, 0x7f, 0x1c, 0x2e, 0xa2, 0x58, 0xde, 0xfa, 0x43, + 0x09, 0x54, 0x3b, 0x2a, 0x36, 0xc8, 0x2d, 0x8c, 0x37, 0x27, 0xa9, 0xf1, 0x66, 0x7b, 0xec, 0xa4, + 0xe2, 0xf1, 0x15, 0x4e, 0x36, 0x9f, 0x65, 0x26, 0x9b, 0x87, 0x13, 0xe2, 0x5e, 0x3f, 0xd4, 0x3c, + 0x06, 0xf3, 0x91, 0xfb, 0x54, 0x97, 0x95, 0x6e, 0xea, 0xb2, 0xad, 0x3f, 0x95, 0xc0, 0x42, 0xc2, + 0xc5, 0x64, 0xd6, 0xd0, 0x49, 0x51, 0x1a, 0xd6, 0xc6, 0x94, 0x69, 0x36, 0x26, 0x87, 0x74, 0x26, + 0x60, 0x92, 0x31, 0x3b, 0xc8, 0xb3, 0x9c, 0x27, 0xa0, 0x4e, 0xb1, 0xab, 0x11, 0x1a, 0xca, 0xf8, + 0x81, 0xce, 0xc7, 0x33, 0xc9, 0x49, 0x4a, 0x8a, 0x32, 0xda, 0x6b, 0xbb, 0x60, 0x31, 0xe5, 0x6c, + 0x22, 0xfa, 0xf7, 0x17, 0x76, 0x58, 0x71, 0x32, 0xdf, 0x42, 0x36, 0xbe, 0x4c, 0x65, 0xe3, 0xa3, + 0xf1, 0x0f, 0x37, 0x51, 0x72, 0x45, 0x39, 0xd9, 0xcd, 0xe4, 0xe4, 0xce, 0x54, 0xe8, 0xd7, 0x67, + 0xe6, 0x5f, 0x25, 0xb0, 0x94, 0xd0, 0xbe, 0x85, 0x59, 0xec, 0xd3, 0xf4, 0x2c, 0xf6, 0x70, 0x9a, + 0x4d, 0x15, 0x0c, 0x63, 0xff, 0xae, 0xa6, 0x36, 0xf3, 0x0d, 0xa2, 0xff, 0xbf, 0x95, 0xc0, 0x4a, + 0xdf, 0x36, 0x7c, 0x93, 0xec, 0x1b, 0x58, 0x37, 0x43, 0x0d, 0x46, 0xa6, 0x6e, 0x18, 0x78, 0xb9, + 0x27, 0xe2, 0x7a, 0xba, 0x47, 0x89, 0x45, 0x5f, 0xc4, 0x18, 0xca, 0xb7, 0x85, 0xbf, 0x95, 0x17, + 0x23, 0x80, 0xd1, 0x48, 0x77, 0xf0, 0x87, 0x60, 0x81, 0xb1, 0x4a, 0x5d, 0x25, 0x6c, 0xd4, 0x15, + 0x7f, 0x76, 0x2c, 0x0b, 0xa0, 0x85, 0x4e, 0x2c, 0x42, 0x49, 0x3d, 0x78, 0x06, 0x96, 0x1d, 0xbb, + 0x77, 0x88, 0x2d, 0xac, 0x11, 0xf6, 0xd6, 0x1e, 0xf3, 0x7f, 0x49, 0xf9, 0x38, 0x30, 0xaf, 0x7c, + 0x14, 0xd2, 0xb7, 0xe3, 0xbc, 0xca, 0x5b, 0xc6, 0xa3, 0xf3, 0xcb, 0x9c, 0x8c, 0x8c, 0x82, 0x84, + 0x5f, 0x4a, 0xa0, 0xee, 0x8b, 0x47, 0x4f, 0x8c, 0x4b, 0xc1, 0xff, 0x1d, 0xca, 0x34, 0x79, 0x78, + 0x9a, 0x42, 0x8a, 0x7b, 0x5c, 0x7a, 0x1d, 0x65, 0x3c, 0x16, 0x8e, 0x3f, 0xb5, 0x69, 0xc6, 0x9f, + 0xd6, 0xdf, 0xcb, 0xe0, 0x6e, 0xae, 0xe0, 0xe1, 0x4f, 0xae, 0x99, 0x0b, 0xee, 0xfd, 0xdf, 0x66, + 0x82, 0x1c, 0x8d, 0x2d, 0x4f, 0x40, 0x63, 0xf7, 0xc0, 0x92, 0xea, 0xbb, 0x2e, 0xb1, 0x68, 0x66, + 0x16, 0x88, 0x06, 0x8a, 0xfd, 0xb4, 0x18, 0x65, 0xf5, 0x47, 0xcd, 0x24, 0xd5, 0x09, 0x67, 0x92, + 0x64, 0x14, 0x82, 0x37, 0x06, 0x79, 0x98, 0x8f, 0x42, 0xd0, 0xc7, 0xac, 0x3e, 0x7b, 0x03, 0x03, + 0xd4, 0x08, 0x61, 0x2e, 0xfd, 0x06, 0x9e, 0xa6, 0xa4, 0x28, 0xa3, 0xcd, 0x58, 0xe8, 0xbb, 0x85, + 0x59, 0x06, 0xf7, 0x52, 0xd4, 0x7c, 0x2b, 0x43, 0xcd, 0xbf, 0x53, 0x68, 0x98, 0x60, 0xe8, 0x5f, + 0x4a, 0xa3, 0x29, 0xfa, 0xf3, 0xe9, 0x28, 0xfa, 0x08, 0xfe, 0x78, 0x33, 0x57, 0x57, 0xb6, 0x2e, + 0xae, 0x9a, 0x33, 0x5f, 0x5d, 0x35, 0x67, 0xde, 0x5c, 0x35, 0x67, 0x7e, 0x33, 0x6c, 0x4a, 0x17, + 0xc3, 0xa6, 0xf4, 0xd5, 0xb0, 0x29, 0xbd, 0x19, 0x36, 0xa5, 0x7f, 0x0d, 0x9b, 0xd2, 0xef, 0xbf, + 0x6e, 0xce, 0xbc, 0x9c, 0x13, 0x1e, 0xff, 0x1b, 0x00, 0x00, 0xff, 0xff, 0x97, 0x69, 0x29, 0x49, + 0xe9, 0x1a, 0x00, 0x00, } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/generated.proto b/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/generated.proto index 537ae2d5..b67e2718 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/generated.proto @@ -25,13 +25,44 @@ import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; import "k8s.io/kubernetes/pkg/api/v1/generated.proto"; -import "k8s.io/kubernetes/pkg/apis/extensions/v1beta1/generated.proto"; +import "k8s.io/kubernetes/pkg/apis/policy/v1beta1/generated.proto"; // Package-wide variables from generator "generated". option go_package = "v1beta1"; +// ControllerRevision implements an immutable snapshot of state data. Clients +// are responsible for serializing and deserializing the objects that contain +// their internal state. +// Once a ControllerRevision has been successfully created, it can not be updated. +// The API Server will fail validation of all requests that attempt to mutate +// the Data field. ControllerRevisions may, however, be deleted. Note that, due to its use by both +// the DaemonSet and StatefulSet controllers for update and rollback, this object is beta. However, +// it may be subject to name and representation changes in future releases, and clients should not +// depend on its stability. It is primarily for internal use by controllers. +message ControllerRevision { + // Standard object's metadata. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + // +optional + optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; + + // Data is the serialized representation of the state. + optional k8s.io.apimachinery.pkg.runtime.RawExtension data = 2; + + // Revision indicates the revision of the state represented by Data. + optional int64 revision = 3; +} + +// ControllerRevisionList is a resource containing a list of ControllerRevision objects. +message ControllerRevisionList { + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + // +optional + optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; + + // Items is the list of ControllerRevisions + repeated ControllerRevision items = 2; +} + // Deployment enables declarative updates for Pods and ReplicaSets. message Deployment { // Standard object metadata. @@ -170,6 +201,12 @@ message DeploymentStatus { // +patchMergeKey=type // +patchStrategy=merge repeated DeploymentCondition conditions = 6; + + // Count of hash collisions for the Deployment. The Deployment controller uses this + // field as a collision avoidance mechanism when it needs to create the name for the + // newest ReplicaSet. + // +optional + optional int64 collisionCount = 8; } // DeploymentStrategy describes how to replace existing pods with new ones. @@ -188,7 +225,7 @@ message DeploymentStrategy { } message RollbackConfig { - // The revision to rollback to. If set to 0, rollbck to the last revision. + // The revision to rollback to. If set to 0, rollback to the last revision. // +optional optional int64 revision = 1; } @@ -223,17 +260,24 @@ message RollingUpdateDeployment { optional k8s.io.apimachinery.pkg.util.intstr.IntOrString maxSurge = 2; } +// RollingUpdateStatefulSetStrategy is used to communicate parameter for RollingUpdateStatefulSetStrategyType. +message RollingUpdateStatefulSetStrategy { + // Partition indicates the ordinal at which the StatefulSet should be + // partitioned. + optional int32 partition = 1; +} + // Scale represents a scaling request for a resource. message Scale { - // Standard object metadata; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata. + // Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; - // defines the behavior of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. + // defines the behavior of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. // +optional optional ScaleSpec spec = 2; - // current status of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. Read-only. + // current status of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. Read-only. // +optional optional ScaleStatus status = 3; } @@ -294,7 +338,7 @@ message StatefulSetList { // A StatefulSetSpec is the specification of a StatefulSet. message StatefulSetSpec { - // Replicas is the desired number of replicas of the given Template. + // replicas is the desired number of replicas of the given Template. // These are replicas in the sense that they are instantiations of the // same Template, but individual replicas also have a consistent identity. // If unspecified, defaults to 1. @@ -302,19 +346,19 @@ message StatefulSetSpec { // +optional optional int32 replicas = 1; - // Selector is a label query over pods that should match the replica count. + // selector is a label query over pods that should match the replica count. // If empty, defaulted to labels on the pod template. // More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector selector = 2; - // Template is the object that describes the pod that will be created if + // template is the object that describes the pod that will be created if // insufficient replicas are detected. Each pod stamped out by the StatefulSet // will fulfill this Template, but have a unique identity from the rest // of the StatefulSet. optional k8s.io.kubernetes.pkg.api.v1.PodTemplateSpec template = 3; - // VolumeClaimTemplates is a list of claims that pods are allowed to reference. + // volumeClaimTemplates is a list of claims that pods are allowed to reference. // The StatefulSet controller is responsible for mapping network identities to // claims in a way that maintains the identity of a pod. Every claim in // this list must have at least one matching (by name) volumeMount in one @@ -324,21 +368,74 @@ message StatefulSetSpec { // +optional repeated k8s.io.kubernetes.pkg.api.v1.PersistentVolumeClaim volumeClaimTemplates = 4; - // ServiceName is the name of the service that governs this StatefulSet. + // serviceName is the name of the service that governs this StatefulSet. // This service must exist before the StatefulSet, and is responsible for // the network identity of the set. Pods get DNS/hostnames that follow the // pattern: pod-specific-string.serviceName.default.svc.cluster.local // where "pod-specific-string" is managed by the StatefulSet controller. optional string serviceName = 5; + + // podManagementPolicy controls how pods are created during initial scale up, + // when replacing pods on nodes, or when scaling down. The default policy is + // `OrderedReady`, where pods are created in increasing order (pod-0, then + // pod-1, etc) and the controller will wait until each pod is ready before + // continuing. When scaling down, the pods are removed in the opposite order. + // The alternative policy is `Parallel` which will create pods in parallel + // to match the desired scale without waiting, and on scale down will delete + // all pods at once. + // +optional + optional string podManagementPolicy = 6; + + // updateStrategy indicates the StatefulSetUpdateStrategy that will be + // employed to update Pods in the StatefulSet when a revision is made to + // Template. + optional StatefulSetUpdateStrategy updateStrategy = 7; + + // revisionHistoryLimit is the maximum number of revisions that will + // be maintained in the StatefulSet's revision history. The revision history + // consists of all revisions not represented by a currently applied + // StatefulSetSpec version. The default value is 10. + optional int32 revisionHistoryLimit = 8; } // StatefulSetStatus represents the current state of a StatefulSet. message StatefulSetStatus { - // most recent generation observed by this StatefulSet. + // observedGeneration is the most recent generation observed for this StatefulSet. It corresponds to the + // StatefulSet's generation, which is updated on mutation by the API Server. // +optional optional int64 observedGeneration = 1; - // Replicas is the number of actual replicas. + // replicas is the number of Pods created by the StatefulSet controller. optional int32 replicas = 2; + + // readyReplicas is the number of Pods created by the StatefulSet controller that have a Ready Condition. + optional int32 readyReplicas = 3; + + // currentReplicas is the number of Pods created by the StatefulSet controller from the StatefulSet version + // indicated by currentRevision. + optional int32 currentReplicas = 4; + + // updatedReplicas is the number of Pods created by the StatefulSet controller from the StatefulSet version + // indicated by updateRevision. + optional int32 updatedReplicas = 5; + + // currentRevision, if not empty, indicates the version of the StatefulSet used to generate Pods in the + // sequence [0,currentReplicas). + optional string currentRevision = 6; + + // updateRevision, if not empty, indicates the version of the StatefulSet used to generate Pods in the sequence + // [replicas-updatedReplicas,replicas) + optional string updateRevision = 7; +} + +// StatefulSetUpdateStrategy indicates the strategy that the StatefulSet +// controller will use to perform updates. It includes any additional parameters +// necessary to perform the update for the indicated strategy. +message StatefulSetUpdateStrategy { + // Type indicates the type of the StatefulSetUpdateStrategy. + optional string type = 1; + + // RollingUpdate is used to communicate parameters when Type is RollingUpdateStatefulSetStrategyType. + optional RollingUpdateStatefulSetStrategy rollingUpdate = 2; } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/register.go b/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/register.go index 07780965..5a4fd5bc 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/register.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/register.go @@ -57,6 +57,8 @@ func addKnownTypes(scheme *runtime.Scheme) error { &Scale{}, &StatefulSet{}, &StatefulSetList{}, + &ControllerRevision{}, + &ControllerRevisionList{}, ) metav1.AddToGroupVersion(scheme, SchemeGroupVersion) return nil diff --git a/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/types.generated.go b/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/types.generated.go index 93fa390e..df1323eb 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/types.generated.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/types.generated.go @@ -27,6 +27,7 @@ import ( codec1978 "github.com/ugorji/go/codec" pkg4_resource "k8s.io/apimachinery/pkg/api/resource" pkg1_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + pkg6_runtime "k8s.io/apimachinery/pkg/runtime" pkg2_types "k8s.io/apimachinery/pkg/types" pkg5_intstr "k8s.io/apimachinery/pkg/util/intstr" pkg3_v1 "k8s.io/kubernetes/pkg/api/v1" @@ -67,11 +68,12 @@ func init() { if false { // reference the types, but skip this branch at build/run time var v0 pkg4_resource.Quantity var v1 pkg1_v1.TypeMeta - var v2 pkg2_types.UID - var v3 pkg5_intstr.IntOrString - var v4 pkg3_v1.PodTemplateSpec - var v5 time.Time - _, _, _, _, _, _ = v0, v1, v2, v3, v4, v5 + var v2 pkg6_runtime.RawExtension + var v3 pkg2_types.UID + var v4 pkg5_intstr.IntOrString + var v5 pkg3_v1.PodTemplateSpec + var v6 time.Time + _, _, _, _, _, _, _ = v0, v1, v2, v3, v4, v5, v6 } } @@ -1340,6 +1342,474 @@ func (x *StatefulSet) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } +func (x PodManagementPolicyType) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x)) + } +} + +func (x *PodManagementPolicyType) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + *((*string)(x)) = r.DecodeString() + } +} + +func (x *StatefulSetUpdateStrategy) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [2]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.Type != "" + yyq2[1] = x.RollingUpdate != nil + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(2) + } else { + yynn2 = 0 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + x.Type.CodecEncodeSelf(e) + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("type")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + x.Type.CodecEncodeSelf(e) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + if x.RollingUpdate == nil { + r.EncodeNil() + } else { + x.RollingUpdate.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("rollingUpdate")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.RollingUpdate == nil { + r.EncodeNil() + } else { + x.RollingUpdate.CodecEncodeSelf(e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *StatefulSetUpdateStrategy) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *StatefulSetUpdateStrategy) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "type": + if r.TryDecodeAsNil() { + x.Type = "" + } else { + yyv4 := &x.Type + yyv4.CodecDecodeSelf(d) + } + case "rollingUpdate": + if r.TryDecodeAsNil() { + if x.RollingUpdate != nil { + x.RollingUpdate = nil + } + } else { + if x.RollingUpdate == nil { + x.RollingUpdate = new(RollingUpdateStatefulSetStrategy) + } + x.RollingUpdate.CodecDecodeSelf(d) + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *StatefulSetUpdateStrategy) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj6 int + var yyb6 bool + var yyhl6 bool = l >= 0 + yyj6++ + if yyhl6 { + yyb6 = yyj6 > l + } else { + yyb6 = r.CheckBreak() + } + if yyb6 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Type = "" + } else { + yyv7 := &x.Type + yyv7.CodecDecodeSelf(d) + } + yyj6++ + if yyhl6 { + yyb6 = yyj6 > l + } else { + yyb6 = r.CheckBreak() + } + if yyb6 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.RollingUpdate != nil { + x.RollingUpdate = nil + } + } else { + if x.RollingUpdate == nil { + x.RollingUpdate = new(RollingUpdateStatefulSetStrategy) + } + x.RollingUpdate.CodecDecodeSelf(d) + } + for { + yyj6++ + if yyhl6 { + yyb6 = yyj6 > l + } else { + yyb6 = r.CheckBreak() + } + if yyb6 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj6-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x StatefulSetUpdateStrategyType) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x)) + } +} + +func (x *StatefulSetUpdateStrategyType) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + *((*string)(x)) = r.DecodeString() + } +} + +func (x *RollingUpdateStatefulSetStrategy) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [1]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.Partition != nil + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(1) + } else { + yynn2 = 0 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + if x.Partition == nil { + r.EncodeNil() + } else { + yy4 := *x.Partition + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeInt(int64(yy4)) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("partition")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Partition == nil { + r.EncodeNil() + } else { + yy6 := *x.Partition + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeInt(int64(yy6)) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *RollingUpdateStatefulSetStrategy) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *RollingUpdateStatefulSetStrategy) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "partition": + if r.TryDecodeAsNil() { + if x.Partition != nil { + x.Partition = nil + } + } else { + if x.Partition == nil { + x.Partition = new(int32) + } + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*int32)(x.Partition)) = int32(r.DecodeInt(32)) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *RollingUpdateStatefulSetStrategy) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj6 int + var yyb6 bool + var yyhl6 bool = l >= 0 + yyj6++ + if yyhl6 { + yyb6 = yyj6 > l + } else { + yyb6 = r.CheckBreak() + } + if yyb6 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.Partition != nil { + x.Partition = nil + } + } else { + if x.Partition == nil { + x.Partition = new(int32) + } + yym8 := z.DecBinary() + _ = yym8 + if false { + } else { + *((*int32)(x.Partition)) = int32(r.DecodeInt(32)) + } + } + for { + yyj6++ + if yyhl6 { + yyb6 = yyj6 > l + } else { + yyb6 = r.CheckBreak() + } + if yyb6 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj6-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + func (x *StatefulSetSpec) CodecEncodeSelf(e *codec1978.Encoder) { var h codecSelfer1234 z, r := codec1978.GenHelperEncoder(e) @@ -1354,15 +1824,18 @@ func (x *StatefulSetSpec) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [5]bool + var yyq2 [8]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[0] = x.Replicas != nil yyq2[1] = x.Selector != nil yyq2[3] = len(x.VolumeClaimTemplates) != 0 + yyq2[5] = x.PodManagementPolicy != "" + yyq2[6] = true + yyq2[7] = x.RevisionHistoryLimit != nil var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(5) + r.EncodeArrayStart(8) } else { yynn2 = 2 for _, b := range yyq2 { @@ -1506,6 +1979,73 @@ func (x *StatefulSetSpec) CodecEncodeSelf(e *codec1978.Encoder) { r.EncodeString(codecSelferC_UTF81234, string(x.ServiceName)) } } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[5] { + x.PodManagementPolicy.CodecEncodeSelf(e) + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[5] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("podManagementPolicy")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + x.PodManagementPolicy.CodecEncodeSelf(e) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[6] { + yy26 := &x.UpdateStrategy + yy26.CodecEncodeSelf(e) + } else { + r.EncodeNil() + } + } else { + if yyq2[6] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("updateStrategy")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy28 := &x.UpdateStrategy + yy28.CodecEncodeSelf(e) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[7] { + if x.RevisionHistoryLimit == nil { + r.EncodeNil() + } else { + yy31 := *x.RevisionHistoryLimit + yym32 := z.EncBinary() + _ = yym32 + if false { + } else { + r.EncodeInt(int64(yy31)) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[7] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("revisionHistoryLimit")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.RevisionHistoryLimit == nil { + r.EncodeNil() + } else { + yy33 := *x.RevisionHistoryLimit + yym34 := z.EncBinary() + _ = yym34 + if false { + } else { + r.EncodeInt(int64(yy33)) + } + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -1631,6 +2171,36 @@ func (x *StatefulSetSpec) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { *((*string)(yyv11)) = r.DecodeString() } } + case "podManagementPolicy": + if r.TryDecodeAsNil() { + x.PodManagementPolicy = "" + } else { + yyv13 := &x.PodManagementPolicy + yyv13.CodecDecodeSelf(d) + } + case "updateStrategy": + if r.TryDecodeAsNil() { + x.UpdateStrategy = StatefulSetUpdateStrategy{} + } else { + yyv14 := &x.UpdateStrategy + yyv14.CodecDecodeSelf(d) + } + case "revisionHistoryLimit": + if r.TryDecodeAsNil() { + if x.RevisionHistoryLimit != nil { + x.RevisionHistoryLimit = nil + } + } else { + if x.RevisionHistoryLimit == nil { + x.RevisionHistoryLimit = new(int32) + } + yym16 := z.DecBinary() + _ = yym16 + if false { + } else { + *((*int32)(x.RevisionHistoryLimit)) = int32(r.DecodeInt(32)) + } + } default: z.DecStructFieldNotFound(-1, yys3) } // end switch yys3 @@ -1642,16 +2212,16 @@ func (x *StatefulSetSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj13 int - var yyb13 bool - var yyhl13 bool = l >= 0 - yyj13++ - if yyhl13 { - yyb13 = yyj13 > l + var yyj17 int + var yyb17 bool + var yyhl17 bool = l >= 0 + yyj17++ + if yyhl17 { + yyb17 = yyj17 > l } else { - yyb13 = r.CheckBreak() + yyb17 = r.CheckBreak() } - if yyb13 { + if yyb17 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -1664,20 +2234,20 @@ func (x *StatefulSetSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) if x.Replicas == nil { x.Replicas = new(int32) } - yym15 := z.DecBinary() - _ = yym15 + yym19 := z.DecBinary() + _ = yym19 if false { } else { *((*int32)(x.Replicas)) = int32(r.DecodeInt(32)) } } - yyj13++ - if yyhl13 { - yyb13 = yyj13 > l + yyj17++ + if yyhl17 { + yyb17 = yyj17 > l } else { - yyb13 = r.CheckBreak() + yyb17 = r.CheckBreak() } - if yyb13 { + if yyb17 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -1690,21 +2260,21 @@ func (x *StatefulSetSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) if x.Selector == nil { x.Selector = new(pkg1_v1.LabelSelector) } - yym17 := z.DecBinary() - _ = yym17 + yym21 := z.DecBinary() + _ = yym21 if false { } else if z.HasExtensions() && z.DecExt(x.Selector) { } else { z.DecFallback(x.Selector, false) } } - yyj13++ - if yyhl13 { - yyb13 = yyj13 > l + yyj17++ + if yyhl17 { + yyb17 = yyj17 > l } else { - yyb13 = r.CheckBreak() + yyb17 = r.CheckBreak() } - if yyb13 { + if yyb17 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -1712,16 +2282,16 @@ func (x *StatefulSetSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) if r.TryDecodeAsNil() { x.Template = pkg3_v1.PodTemplateSpec{} } else { - yyv18 := &x.Template - yyv18.CodecDecodeSelf(d) + yyv22 := &x.Template + yyv22.CodecDecodeSelf(d) } - yyj13++ - if yyhl13 { - yyb13 = yyj13 > l + yyj17++ + if yyhl17 { + yyb17 = yyj17 > l } else { - yyb13 = r.CheckBreak() + yyb17 = r.CheckBreak() } - if yyb13 { + if yyb17 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -1729,21 +2299,21 @@ func (x *StatefulSetSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) if r.TryDecodeAsNil() { x.VolumeClaimTemplates = nil } else { - yyv19 := &x.VolumeClaimTemplates - yym20 := z.DecBinary() - _ = yym20 + yyv23 := &x.VolumeClaimTemplates + yym24 := z.DecBinary() + _ = yym24 if false { } else { - h.decSlicev1_PersistentVolumeClaim((*[]pkg3_v1.PersistentVolumeClaim)(yyv19), d) + h.decSlicev1_PersistentVolumeClaim((*[]pkg3_v1.PersistentVolumeClaim)(yyv23), d) } } - yyj13++ - if yyhl13 { - yyb13 = yyj13 > l + yyj17++ + if yyhl17 { + yyb17 = yyj17 > l } else { - yyb13 = r.CheckBreak() + yyb17 = r.CheckBreak() } - if yyb13 { + if yyb17 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -1751,26 +2321,86 @@ func (x *StatefulSetSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) if r.TryDecodeAsNil() { x.ServiceName = "" } else { - yyv21 := &x.ServiceName - yym22 := z.DecBinary() - _ = yym22 + yyv25 := &x.ServiceName + yym26 := z.DecBinary() + _ = yym26 if false { } else { - *((*string)(yyv21)) = r.DecodeString() + *((*string)(yyv25)) = r.DecodeString() + } + } + yyj17++ + if yyhl17 { + yyb17 = yyj17 > l + } else { + yyb17 = r.CheckBreak() + } + if yyb17 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.PodManagementPolicy = "" + } else { + yyv27 := &x.PodManagementPolicy + yyv27.CodecDecodeSelf(d) + } + yyj17++ + if yyhl17 { + yyb17 = yyj17 > l + } else { + yyb17 = r.CheckBreak() + } + if yyb17 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.UpdateStrategy = StatefulSetUpdateStrategy{} + } else { + yyv28 := &x.UpdateStrategy + yyv28.CodecDecodeSelf(d) + } + yyj17++ + if yyhl17 { + yyb17 = yyj17 > l + } else { + yyb17 = r.CheckBreak() + } + if yyb17 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.RevisionHistoryLimit != nil { + x.RevisionHistoryLimit = nil + } + } else { + if x.RevisionHistoryLimit == nil { + x.RevisionHistoryLimit = new(int32) + } + yym30 := z.DecBinary() + _ = yym30 + if false { + } else { + *((*int32)(x.RevisionHistoryLimit)) = int32(r.DecodeInt(32)) } } for { - yyj13++ - if yyhl13 { - yyb13 = yyj13 > l + yyj17++ + if yyhl17 { + yyb17 = yyj17 > l } else { - yyb13 = r.CheckBreak() + yyb17 = r.CheckBreak() } - if yyb13 { + if yyb17 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj13-1, "") + z.DecStructFieldNotFound(yyj17-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -1789,13 +2419,18 @@ func (x *StatefulSetStatus) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [2]bool + var yyq2 [7]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[0] = x.ObservedGeneration != nil + yyq2[2] = x.ReadyReplicas != 0 + yyq2[3] = x.CurrentReplicas != 0 + yyq2[4] = x.UpdatedReplicas != 0 + yyq2[5] = x.CurrentRevision != "" + yyq2[6] = x.UpdateRevision != "" var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(2) + r.EncodeArrayStart(7) } else { yynn2 = 1 for _, b := range yyq2 { @@ -1860,6 +2495,131 @@ func (x *StatefulSetStatus) CodecEncodeSelf(e *codec1978.Encoder) { r.EncodeInt(int64(x.Replicas)) } } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yym12 := z.EncBinary() + _ = yym12 + if false { + } else { + r.EncodeInt(int64(x.ReadyReplicas)) + } + } else { + r.EncodeInt(0) + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("readyReplicas")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym13 := z.EncBinary() + _ = yym13 + if false { + } else { + r.EncodeInt(int64(x.ReadyReplicas)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[3] { + yym15 := z.EncBinary() + _ = yym15 + if false { + } else { + r.EncodeInt(int64(x.CurrentReplicas)) + } + } else { + r.EncodeInt(0) + } + } else { + if yyq2[3] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("currentReplicas")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym16 := z.EncBinary() + _ = yym16 + if false { + } else { + r.EncodeInt(int64(x.CurrentReplicas)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[4] { + yym18 := z.EncBinary() + _ = yym18 + if false { + } else { + r.EncodeInt(int64(x.UpdatedReplicas)) + } + } else { + r.EncodeInt(0) + } + } else { + if yyq2[4] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("updatedReplicas")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym19 := z.EncBinary() + _ = yym19 + if false { + } else { + r.EncodeInt(int64(x.UpdatedReplicas)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[5] { + yym21 := z.EncBinary() + _ = yym21 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.CurrentRevision)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[5] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("currentRevision")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym22 := z.EncBinary() + _ = yym22 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.CurrentRevision)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[6] { + yym24 := z.EncBinary() + _ = yym24 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.UpdateRevision)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[6] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("updateRevision")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym25 := z.EncBinary() + _ = yym25 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.UpdateRevision)) + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -1949,6 +2709,66 @@ func (x *StatefulSetStatus) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) *((*int32)(yyv6)) = int32(r.DecodeInt(32)) } } + case "readyReplicas": + if r.TryDecodeAsNil() { + x.ReadyReplicas = 0 + } else { + yyv8 := &x.ReadyReplicas + yym9 := z.DecBinary() + _ = yym9 + if false { + } else { + *((*int32)(yyv8)) = int32(r.DecodeInt(32)) + } + } + case "currentReplicas": + if r.TryDecodeAsNil() { + x.CurrentReplicas = 0 + } else { + yyv10 := &x.CurrentReplicas + yym11 := z.DecBinary() + _ = yym11 + if false { + } else { + *((*int32)(yyv10)) = int32(r.DecodeInt(32)) + } + } + case "updatedReplicas": + if r.TryDecodeAsNil() { + x.UpdatedReplicas = 0 + } else { + yyv12 := &x.UpdatedReplicas + yym13 := z.DecBinary() + _ = yym13 + if false { + } else { + *((*int32)(yyv12)) = int32(r.DecodeInt(32)) + } + } + case "currentRevision": + if r.TryDecodeAsNil() { + x.CurrentRevision = "" + } else { + yyv14 := &x.CurrentRevision + yym15 := z.DecBinary() + _ = yym15 + if false { + } else { + *((*string)(yyv14)) = r.DecodeString() + } + } + case "updateRevision": + if r.TryDecodeAsNil() { + x.UpdateRevision = "" + } else { + yyv16 := &x.UpdateRevision + yym17 := z.DecBinary() + _ = yym17 + if false { + } else { + *((*string)(yyv16)) = r.DecodeString() + } + } default: z.DecStructFieldNotFound(-1, yys3) } // end switch yys3 @@ -1960,16 +2780,16 @@ func (x *StatefulSetStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj8 int - var yyb8 bool - var yyhl8 bool = l >= 0 - yyj8++ - if yyhl8 { - yyb8 = yyj8 > l + var yyj18 int + var yyb18 bool + var yyhl18 bool = l >= 0 + yyj18++ + if yyhl18 { + yyb18 = yyj18 > l } else { - yyb8 = r.CheckBreak() + yyb18 = r.CheckBreak() } - if yyb8 { + if yyb18 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -1982,20 +2802,20 @@ func (x *StatefulSetStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder if x.ObservedGeneration == nil { x.ObservedGeneration = new(int64) } - yym10 := z.DecBinary() - _ = yym10 + yym20 := z.DecBinary() + _ = yym20 if false { } else { *((*int64)(x.ObservedGeneration)) = int64(r.DecodeInt(64)) } } - yyj8++ - if yyhl8 { - yyb8 = yyj8 > l + yyj18++ + if yyhl18 { + yyb18 = yyj18 > l } else { - yyb8 = r.CheckBreak() + yyb18 = r.CheckBreak() } - if yyb8 { + if yyb18 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2003,26 +2823,136 @@ func (x *StatefulSetStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder if r.TryDecodeAsNil() { x.Replicas = 0 } else { - yyv11 := &x.Replicas - yym12 := z.DecBinary() - _ = yym12 + yyv21 := &x.Replicas + yym22 := z.DecBinary() + _ = yym22 if false { } else { - *((*int32)(yyv11)) = int32(r.DecodeInt(32)) + *((*int32)(yyv21)) = int32(r.DecodeInt(32)) + } + } + yyj18++ + if yyhl18 { + yyb18 = yyj18 > l + } else { + yyb18 = r.CheckBreak() + } + if yyb18 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ReadyReplicas = 0 + } else { + yyv23 := &x.ReadyReplicas + yym24 := z.DecBinary() + _ = yym24 + if false { + } else { + *((*int32)(yyv23)) = int32(r.DecodeInt(32)) + } + } + yyj18++ + if yyhl18 { + yyb18 = yyj18 > l + } else { + yyb18 = r.CheckBreak() + } + if yyb18 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.CurrentReplicas = 0 + } else { + yyv25 := &x.CurrentReplicas + yym26 := z.DecBinary() + _ = yym26 + if false { + } else { + *((*int32)(yyv25)) = int32(r.DecodeInt(32)) + } + } + yyj18++ + if yyhl18 { + yyb18 = yyj18 > l + } else { + yyb18 = r.CheckBreak() + } + if yyb18 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.UpdatedReplicas = 0 + } else { + yyv27 := &x.UpdatedReplicas + yym28 := z.DecBinary() + _ = yym28 + if false { + } else { + *((*int32)(yyv27)) = int32(r.DecodeInt(32)) + } + } + yyj18++ + if yyhl18 { + yyb18 = yyj18 > l + } else { + yyb18 = r.CheckBreak() + } + if yyb18 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.CurrentRevision = "" + } else { + yyv29 := &x.CurrentRevision + yym30 := z.DecBinary() + _ = yym30 + if false { + } else { + *((*string)(yyv29)) = r.DecodeString() + } + } + yyj18++ + if yyhl18 { + yyb18 = yyj18 > l + } else { + yyb18 = r.CheckBreak() + } + if yyb18 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.UpdateRevision = "" + } else { + yyv31 := &x.UpdateRevision + yym32 := z.DecBinary() + _ = yym32 + if false { + } else { + *((*string)(yyv31)) = r.DecodeString() } } for { - yyj8++ - if yyhl8 { - yyb8 = yyj8 > l + yyj18++ + if yyhl18 { + yyb18 = yyj18 > l } else { - yyb8 = r.CheckBreak() + yyb18 = r.CheckBreak() } - if yyb8 { + if yyb18 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj8-1, "") + z.DecStructFieldNotFound(yyj18-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -4606,7 +5536,7 @@ func (x *DeploymentStatus) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [7]bool + var yyq2 [8]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[0] = x.ObservedGeneration != 0 @@ -4616,9 +5546,10 @@ func (x *DeploymentStatus) CodecEncodeSelf(e *codec1978.Encoder) { yyq2[4] = x.AvailableReplicas != 0 yyq2[5] = x.UnavailableReplicas != 0 yyq2[6] = len(x.Conditions) != 0 + yyq2[7] = x.CollisionCount != nil var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(7) + r.EncodeArrayStart(8) } else { yynn2 = 0 for _, b := range yyq2 { @@ -4812,6 +5743,41 @@ func (x *DeploymentStatus) CodecEncodeSelf(e *codec1978.Encoder) { } } } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[7] { + if x.CollisionCount == nil { + r.EncodeNil() + } else { + yy25 := *x.CollisionCount + yym26 := z.EncBinary() + _ = yym26 + if false { + } else { + r.EncodeInt(int64(yy25)) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[7] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("collisionCount")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.CollisionCount == nil { + r.EncodeNil() + } else { + yy27 := *x.CollisionCount + yym28 := z.EncBinary() + _ = yym28 + if false { + } else { + r.EncodeInt(int64(yy27)) + } + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -4957,6 +5923,22 @@ func (x *DeploymentStatus) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { h.decSliceDeploymentCondition((*[]DeploymentCondition)(yyv16), d) } } + case "collisionCount": + if r.TryDecodeAsNil() { + if x.CollisionCount != nil { + x.CollisionCount = nil + } + } else { + if x.CollisionCount == nil { + x.CollisionCount = new(int64) + } + yym19 := z.DecBinary() + _ = yym19 + if false { + } else { + *((*int64)(x.CollisionCount)) = int64(r.DecodeInt(64)) + } + } default: z.DecStructFieldNotFound(-1, yys3) } // end switch yys3 @@ -4968,16 +5950,16 @@ func (x *DeploymentStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj18 int - var yyb18 bool - var yyhl18 bool = l >= 0 - yyj18++ - if yyhl18 { - yyb18 = yyj18 > l + var yyj20 int + var yyb20 bool + var yyhl20 bool = l >= 0 + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l } else { - yyb18 = r.CheckBreak() + yyb20 = r.CheckBreak() } - if yyb18 { + if yyb20 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -4985,21 +5967,21 @@ func (x *DeploymentStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) if r.TryDecodeAsNil() { x.ObservedGeneration = 0 } else { - yyv19 := &x.ObservedGeneration - yym20 := z.DecBinary() - _ = yym20 + yyv21 := &x.ObservedGeneration + yym22 := z.DecBinary() + _ = yym22 if false { } else { - *((*int64)(yyv19)) = int64(r.DecodeInt(64)) + *((*int64)(yyv21)) = int64(r.DecodeInt(64)) } } - yyj18++ - if yyhl18 { - yyb18 = yyj18 > l + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l } else { - yyb18 = r.CheckBreak() + yyb20 = r.CheckBreak() } - if yyb18 { + if yyb20 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -5007,29 +5989,7 @@ func (x *DeploymentStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) if r.TryDecodeAsNil() { x.Replicas = 0 } else { - yyv21 := &x.Replicas - yym22 := z.DecBinary() - _ = yym22 - if false { - } else { - *((*int32)(yyv21)) = int32(r.DecodeInt(32)) - } - } - yyj18++ - if yyhl18 { - yyb18 = yyj18 > l - } else { - yyb18 = r.CheckBreak() - } - if yyb18 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.UpdatedReplicas = 0 - } else { - yyv23 := &x.UpdatedReplicas + yyv23 := &x.Replicas yym24 := z.DecBinary() _ = yym24 if false { @@ -5037,21 +5997,21 @@ func (x *DeploymentStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) *((*int32)(yyv23)) = int32(r.DecodeInt(32)) } } - yyj18++ - if yyhl18 { - yyb18 = yyj18 > l + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l } else { - yyb18 = r.CheckBreak() + yyb20 = r.CheckBreak() } - if yyb18 { + if yyb20 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } z.DecSendContainerState(codecSelfer_containerArrayElem1234) if r.TryDecodeAsNil() { - x.ReadyReplicas = 0 + x.UpdatedReplicas = 0 } else { - yyv25 := &x.ReadyReplicas + yyv25 := &x.UpdatedReplicas yym26 := z.DecBinary() _ = yym26 if false { @@ -5059,21 +6019,21 @@ func (x *DeploymentStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) *((*int32)(yyv25)) = int32(r.DecodeInt(32)) } } - yyj18++ - if yyhl18 { - yyb18 = yyj18 > l + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l } else { - yyb18 = r.CheckBreak() + yyb20 = r.CheckBreak() } - if yyb18 { + if yyb20 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } z.DecSendContainerState(codecSelfer_containerArrayElem1234) if r.TryDecodeAsNil() { - x.AvailableReplicas = 0 + x.ReadyReplicas = 0 } else { - yyv27 := &x.AvailableReplicas + yyv27 := &x.ReadyReplicas yym28 := z.DecBinary() _ = yym28 if false { @@ -5081,21 +6041,21 @@ func (x *DeploymentStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) *((*int32)(yyv27)) = int32(r.DecodeInt(32)) } } - yyj18++ - if yyhl18 { - yyb18 = yyj18 > l + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l } else { - yyb18 = r.CheckBreak() + yyb20 = r.CheckBreak() } - if yyb18 { + if yyb20 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } z.DecSendContainerState(codecSelfer_containerArrayElem1234) if r.TryDecodeAsNil() { - x.UnavailableReplicas = 0 + x.AvailableReplicas = 0 } else { - yyv29 := &x.UnavailableReplicas + yyv29 := &x.AvailableReplicas yym30 := z.DecBinary() _ = yym30 if false { @@ -5103,13 +6063,35 @@ func (x *DeploymentStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) *((*int32)(yyv29)) = int32(r.DecodeInt(32)) } } - yyj18++ - if yyhl18 { - yyb18 = yyj18 > l + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l } else { - yyb18 = r.CheckBreak() + yyb20 = r.CheckBreak() } - if yyb18 { + if yyb20 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.UnavailableReplicas = 0 + } else { + yyv31 := &x.UnavailableReplicas + yym32 := z.DecBinary() + _ = yym32 + if false { + } else { + *((*int32)(yyv31)) = int32(r.DecodeInt(32)) + } + } + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l + } else { + yyb20 = r.CheckBreak() + } + if yyb20 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -5117,26 +6099,52 @@ func (x *DeploymentStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) if r.TryDecodeAsNil() { x.Conditions = nil } else { - yyv31 := &x.Conditions - yym32 := z.DecBinary() - _ = yym32 + yyv33 := &x.Conditions + yym34 := z.DecBinary() + _ = yym34 if false { } else { - h.decSliceDeploymentCondition((*[]DeploymentCondition)(yyv31), d) + h.decSliceDeploymentCondition((*[]DeploymentCondition)(yyv33), d) + } + } + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l + } else { + yyb20 = r.CheckBreak() + } + if yyb20 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.CollisionCount != nil { + x.CollisionCount = nil + } + } else { + if x.CollisionCount == nil { + x.CollisionCount = new(int64) + } + yym36 := z.DecBinary() + _ = yym36 + if false { + } else { + *((*int64)(x.CollisionCount)) = int64(r.DecodeInt(64)) } } for { - yyj18++ - if yyhl18 { - yyb18 = yyj18 > l + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l } else { - yyb18 = r.CheckBreak() + yyb20 = r.CheckBreak() } - if yyb18 { + if yyb20 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj18-1, "") + z.DecStructFieldNotFound(yyj20-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -6008,6 +7016,808 @@ func (x *DeploymentList) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } +func (x *ControllerRevision) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [5]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.Kind != "" + yyq2[1] = x.APIVersion != "" + yyq2[2] = true + yyq2[3] = true + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(5) + } else { + yynn2 = 1 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("kind")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("apiVersion")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yy10 := &x.ObjectMeta + yym11 := z.EncBinary() + _ = yym11 + if false { + } else if z.HasExtensions() && z.EncExt(yy10) { + } else { + z.EncFallback(yy10) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("metadata")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy12 := &x.ObjectMeta + yym13 := z.EncBinary() + _ = yym13 + if false { + } else if z.HasExtensions() && z.EncExt(yy12) { + } else { + z.EncFallback(yy12) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[3] { + yy15 := &x.Data + yym16 := z.EncBinary() + _ = yym16 + if false { + } else if z.HasExtensions() && z.EncExt(yy15) { + } else if !yym16 && z.IsJSONHandle() { + z.EncJSONMarshal(yy15) + } else { + z.EncFallback(yy15) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[3] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("data")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy17 := &x.Data + yym18 := z.EncBinary() + _ = yym18 + if false { + } else if z.HasExtensions() && z.EncExt(yy17) { + } else if !yym18 && z.IsJSONHandle() { + z.EncJSONMarshal(yy17) + } else { + z.EncFallback(yy17) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yym20 := z.EncBinary() + _ = yym20 + if false { + } else { + r.EncodeInt(int64(x.Revision)) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("revision")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym21 := z.EncBinary() + _ = yym21 + if false { + } else { + r.EncodeInt(int64(x.Revision)) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *ControllerRevision) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *ControllerRevision) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "kind": + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv4 := &x.Kind + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "apiVersion": + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv6 := &x.APIVersion + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + case "metadata": + if r.TryDecodeAsNil() { + x.ObjectMeta = pkg1_v1.ObjectMeta{} + } else { + yyv8 := &x.ObjectMeta + yym9 := z.DecBinary() + _ = yym9 + if false { + } else if z.HasExtensions() && z.DecExt(yyv8) { + } else { + z.DecFallback(yyv8, false) + } + } + case "data": + if r.TryDecodeAsNil() { + x.Data = pkg6_runtime.RawExtension{} + } else { + yyv10 := &x.Data + yym11 := z.DecBinary() + _ = yym11 + if false { + } else if z.HasExtensions() && z.DecExt(yyv10) { + } else if !yym11 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv10) + } else { + z.DecFallback(yyv10, false) + } + } + case "revision": + if r.TryDecodeAsNil() { + x.Revision = 0 + } else { + yyv12 := &x.Revision + yym13 := z.DecBinary() + _ = yym13 + if false { + } else { + *((*int64)(yyv12)) = int64(r.DecodeInt(64)) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *ControllerRevision) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj14 int + var yyb14 bool + var yyhl14 bool = l >= 0 + yyj14++ + if yyhl14 { + yyb14 = yyj14 > l + } else { + yyb14 = r.CheckBreak() + } + if yyb14 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv15 := &x.Kind + yym16 := z.DecBinary() + _ = yym16 + if false { + } else { + *((*string)(yyv15)) = r.DecodeString() + } + } + yyj14++ + if yyhl14 { + yyb14 = yyj14 > l + } else { + yyb14 = r.CheckBreak() + } + if yyb14 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv17 := &x.APIVersion + yym18 := z.DecBinary() + _ = yym18 + if false { + } else { + *((*string)(yyv17)) = r.DecodeString() + } + } + yyj14++ + if yyhl14 { + yyb14 = yyj14 > l + } else { + yyb14 = r.CheckBreak() + } + if yyb14 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ObjectMeta = pkg1_v1.ObjectMeta{} + } else { + yyv19 := &x.ObjectMeta + yym20 := z.DecBinary() + _ = yym20 + if false { + } else if z.HasExtensions() && z.DecExt(yyv19) { + } else { + z.DecFallback(yyv19, false) + } + } + yyj14++ + if yyhl14 { + yyb14 = yyj14 > l + } else { + yyb14 = r.CheckBreak() + } + if yyb14 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Data = pkg6_runtime.RawExtension{} + } else { + yyv21 := &x.Data + yym22 := z.DecBinary() + _ = yym22 + if false { + } else if z.HasExtensions() && z.DecExt(yyv21) { + } else if !yym22 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv21) + } else { + z.DecFallback(yyv21, false) + } + } + yyj14++ + if yyhl14 { + yyb14 = yyj14 > l + } else { + yyb14 = r.CheckBreak() + } + if yyb14 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Revision = 0 + } else { + yyv23 := &x.Revision + yym24 := z.DecBinary() + _ = yym24 + if false { + } else { + *((*int64)(yyv23)) = int64(r.DecodeInt(64)) + } + } + for { + yyj14++ + if yyhl14 { + yyb14 = yyj14 > l + } else { + yyb14 = r.CheckBreak() + } + if yyb14 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj14-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *ControllerRevisionList) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [4]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.Kind != "" + yyq2[1] = x.APIVersion != "" + yyq2[2] = true + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(4) + } else { + yynn2 = 1 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("kind")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("apiVersion")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yy10 := &x.ListMeta + yym11 := z.EncBinary() + _ = yym11 + if false { + } else if z.HasExtensions() && z.EncExt(yy10) { + } else { + z.EncFallback(yy10) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("metadata")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy12 := &x.ListMeta + yym13 := z.EncBinary() + _ = yym13 + if false { + } else if z.HasExtensions() && z.EncExt(yy12) { + } else { + z.EncFallback(yy12) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if x.Items == nil { + r.EncodeNil() + } else { + yym15 := z.EncBinary() + _ = yym15 + if false { + } else { + h.encSliceControllerRevision(([]ControllerRevision)(x.Items), e) + } + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("items")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Items == nil { + r.EncodeNil() + } else { + yym16 := z.EncBinary() + _ = yym16 + if false { + } else { + h.encSliceControllerRevision(([]ControllerRevision)(x.Items), e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *ControllerRevisionList) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *ControllerRevisionList) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "kind": + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv4 := &x.Kind + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "apiVersion": + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv6 := &x.APIVersion + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + case "metadata": + if r.TryDecodeAsNil() { + x.ListMeta = pkg1_v1.ListMeta{} + } else { + yyv8 := &x.ListMeta + yym9 := z.DecBinary() + _ = yym9 + if false { + } else if z.HasExtensions() && z.DecExt(yyv8) { + } else { + z.DecFallback(yyv8, false) + } + } + case "items": + if r.TryDecodeAsNil() { + x.Items = nil + } else { + yyv10 := &x.Items + yym11 := z.DecBinary() + _ = yym11 + if false { + } else { + h.decSliceControllerRevision((*[]ControllerRevision)(yyv10), d) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *ControllerRevisionList) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj12 int + var yyb12 bool + var yyhl12 bool = l >= 0 + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv13 := &x.Kind + yym14 := z.DecBinary() + _ = yym14 + if false { + } else { + *((*string)(yyv13)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv15 := &x.APIVersion + yym16 := z.DecBinary() + _ = yym16 + if false { + } else { + *((*string)(yyv15)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ListMeta = pkg1_v1.ListMeta{} + } else { + yyv17 := &x.ListMeta + yym18 := z.DecBinary() + _ = yym18 + if false { + } else if z.HasExtensions() && z.DecExt(yyv17) { + } else { + z.DecFallback(yyv17, false) + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Items = nil + } else { + yyv19 := &x.Items + yym20 := z.DecBinary() + _ = yym20 + if false { + } else { + h.decSliceControllerRevision((*[]ControllerRevision)(yyv19), d) + } + } + for { + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj12-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + func (x codecSelfer1234) encSlicev1_PersistentVolumeClaim(v []pkg3_v1.PersistentVolumeClaim, e *codec1978.Encoder) { var h codecSelfer1234 z, r := codec1978.GenHelperEncoder(e) @@ -6166,7 +7976,7 @@ func (x codecSelfer1234) decSliceStatefulSet(v *[]StatefulSet, d *codec1978.Deco yyrg1 := len(yyv1) > 0 yyv21 := yyv1 - yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 896) + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 984) if yyrt1 { if yyrl1 <= cap(yyv1) { yyv1 = yyv1[:yyrl1] @@ -6404,7 +8214,7 @@ func (x codecSelfer1234) decSliceDeployment(v *[]Deployment, d *codec1978.Decode yyrg1 := len(yyv1) > 0 yyv21 := yyv1 - yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 960) + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 968) if yyrt1 { if yyrl1 <= cap(yyv1) { yyv1 = yyv1[:yyrl1] @@ -6483,3 +8293,122 @@ func (x codecSelfer1234) decSliceDeployment(v *[]Deployment, d *codec1978.Decode *v = yyv1 } } + +func (x codecSelfer1234) encSliceControllerRevision(v []ControllerRevision, e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + r.EncodeArrayStart(len(v)) + for _, yyv1 := range v { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy2 := &yyv1 + yy2.CodecEncodeSelf(e) + } + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) decSliceControllerRevision(v *[]ControllerRevision, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + + yyv1 := *v + yyh1, yyl1 := z.DecSliceHelperStart() + var yyc1 bool + _ = yyc1 + if yyl1 == 0 { + if yyv1 == nil { + yyv1 = []ControllerRevision{} + yyc1 = true + } else if len(yyv1) != 0 { + yyv1 = yyv1[:0] + yyc1 = true + } + } else if yyl1 > 0 { + var yyrr1, yyrl1 int + var yyrt1 bool + _, _ = yyrl1, yyrt1 + yyrr1 = yyl1 // len(yyv1) + if yyl1 > cap(yyv1) { + + yyrg1 := len(yyv1) > 0 + yyv21 := yyv1 + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 312) + if yyrt1 { + if yyrl1 <= cap(yyv1) { + yyv1 = yyv1[:yyrl1] + } else { + yyv1 = make([]ControllerRevision, yyrl1) + } + } else { + yyv1 = make([]ControllerRevision, yyrl1) + } + yyc1 = true + yyrr1 = len(yyv1) + if yyrg1 { + copy(yyv1, yyv21) + } + } else if yyl1 != len(yyv1) { + yyv1 = yyv1[:yyl1] + yyc1 = true + } + yyj1 := 0 + for ; yyj1 < yyrr1; yyj1++ { + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = ControllerRevision{} + } else { + yyv2 := &yyv1[yyj1] + yyv2.CodecDecodeSelf(d) + } + + } + if yyrt1 { + for ; yyj1 < yyl1; yyj1++ { + yyv1 = append(yyv1, ControllerRevision{}) + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = ControllerRevision{} + } else { + yyv3 := &yyv1[yyj1] + yyv3.CodecDecodeSelf(d) + } + + } + } + + } else { + yyj1 := 0 + for ; !r.CheckBreak(); yyj1++ { + + if yyj1 >= len(yyv1) { + yyv1 = append(yyv1, ControllerRevision{}) // var yyz1 ControllerRevision + yyc1 = true + } + yyh1.ElemContainerState(yyj1) + if yyj1 < len(yyv1) { + if r.TryDecodeAsNil() { + yyv1[yyj1] = ControllerRevision{} + } else { + yyv4 := &yyv1[yyj1] + yyv4.CodecDecodeSelf(d) + } + + } else { + z.DecSwallow() + } + + } + if yyj1 < len(yyv1) { + yyv1 = yyv1[:yyj1] + yyc1 = true + } else if yyj1 == 0 && yyv1 == nil { + yyv1 = []ControllerRevision{} + yyc1 = true + } + } + yyh1.End() + if yyc1 { + *v = yyv1 + } +} diff --git a/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/types.go b/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/types.go index f4dc08a2..3cbfd994 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/types.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/types.go @@ -18,13 +18,16 @@ package v1beta1 import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/intstr" "k8s.io/kubernetes/pkg/api/v1" ) const ( // StatefulSetInitAnnotation if present, and set to false, indicates that a Pod's readiness should be ignored. - StatefulSetInitAnnotation = "pod.alpha.kubernetes.io/initialized" + StatefulSetInitAnnotation = "pod.alpha.kubernetes.io/initialized" + ControllerRevisionHashLabelKey = "controller-revision-hash" + StatefulSetRevisionLabel = ControllerRevisionHashLabelKey ) // ScaleSpec describes the attributes of a scale subresource @@ -59,15 +62,15 @@ type ScaleStatus struct { // Scale represents a scaling request for a resource. type Scale struct { metav1.TypeMeta `json:",inline"` - // Standard object metadata; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata. + // Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` - // defines the behavior of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. + // defines the behavior of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. // +optional Spec ScaleSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` - // current status of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. Read-only. + // current status of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. Read-only. // +optional Status ScaleStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } @@ -95,9 +98,60 @@ type StatefulSet struct { Status StatefulSetStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } +// PodManagementPolicyType defines the policy for creating pods under a stateful set. +type PodManagementPolicyType string + +const ( + // OrderedReadyPodManagement will create pods in strictly increasing order on + // scale up and strictly decreasing order on scale down, progressing only when + // the previous pod is ready or terminated. At most one pod will be changed + // at any time. + OrderedReadyPodManagement PodManagementPolicyType = "OrderedReady" + // ParallelPodManagement will create and delete pods as soon as the stateful set + // replica count is changed, and will not wait for pods to be ready or complete + // termination. + ParallelPodManagement = "Parallel" +) + +// StatefulSetUpdateStrategy indicates the strategy that the StatefulSet +// controller will use to perform updates. It includes any additional parameters +// necessary to perform the update for the indicated strategy. +type StatefulSetUpdateStrategy struct { + // Type indicates the type of the StatefulSetUpdateStrategy. + Type StatefulSetUpdateStrategyType `json:"type,omitempty" protobuf:"bytes,1,opt,name=type,casttype=StatefulSetStrategyType"` + // RollingUpdate is used to communicate parameters when Type is RollingUpdateStatefulSetStrategyType. + RollingUpdate *RollingUpdateStatefulSetStrategy `json:"rollingUpdate,omitempty" protobuf:"bytes,2,opt,name=rollingUpdate"` +} + +// StatefulSetUpdateStrategyType is a string enumeration type that enumerates +// all possible update strategies for the StatefulSet controller. +type StatefulSetUpdateStrategyType string + +const ( + // RollingUpdateStatefulSetStrategyType indicates that update will be + // applied to all Pods in the StatefulSet with respect to the StatefulSet + // ordering constraints. When a scale operation is performed with this + // strategy, new Pods will be created from the specification version indicated + // by the StatefulSet's updateRevision. + RollingUpdateStatefulSetStrategyType = "RollingUpdate" + // OnDeleteStatefulSetStrategyType triggers the legacy behavior. Version + // tracking and ordered rolling restarts are disabled. Pods are recreated + // from the StatefulSetSpec when they are manually deleted. When a scale + // operation is performed with this strategy,specification version indicated + // by the StatefulSet's currentRevision. + OnDeleteStatefulSetStrategyType = "OnDelete" +) + +// RollingUpdateStatefulSetStrategy is used to communicate parameter for RollingUpdateStatefulSetStrategyType. +type RollingUpdateStatefulSetStrategy struct { + // Partition indicates the ordinal at which the StatefulSet should be + // partitioned. + Partition *int32 `json:"partition,omitempty" protobuf:"varint,1,opt,name=partition"` +} + // A StatefulSetSpec is the specification of a StatefulSet. type StatefulSetSpec struct { - // Replicas is the desired number of replicas of the given Template. + // replicas is the desired number of replicas of the given Template. // These are replicas in the sense that they are instantiations of the // same Template, but individual replicas also have a consistent identity. // If unspecified, defaults to 1. @@ -105,19 +159,19 @@ type StatefulSetSpec struct { // +optional Replicas *int32 `json:"replicas,omitempty" protobuf:"varint,1,opt,name=replicas"` - // Selector is a label query over pods that should match the replica count. + // selector is a label query over pods that should match the replica count. // If empty, defaulted to labels on the pod template. // More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors // +optional Selector *metav1.LabelSelector `json:"selector,omitempty" protobuf:"bytes,2,opt,name=selector"` - // Template is the object that describes the pod that will be created if + // template is the object that describes the pod that will be created if // insufficient replicas are detected. Each pod stamped out by the StatefulSet // will fulfill this Template, but have a unique identity from the rest // of the StatefulSet. Template v1.PodTemplateSpec `json:"template" protobuf:"bytes,3,opt,name=template"` - // VolumeClaimTemplates is a list of claims that pods are allowed to reference. + // volumeClaimTemplates is a list of claims that pods are allowed to reference. // The StatefulSet controller is responsible for mapping network identities to // claims in a way that maintains the identity of a pod. Every claim in // this list must have at least one matching (by name) volumeMount in one @@ -127,22 +181,64 @@ type StatefulSetSpec struct { // +optional VolumeClaimTemplates []v1.PersistentVolumeClaim `json:"volumeClaimTemplates,omitempty" protobuf:"bytes,4,rep,name=volumeClaimTemplates"` - // ServiceName is the name of the service that governs this StatefulSet. + // serviceName is the name of the service that governs this StatefulSet. // This service must exist before the StatefulSet, and is responsible for // the network identity of the set. Pods get DNS/hostnames that follow the // pattern: pod-specific-string.serviceName.default.svc.cluster.local // where "pod-specific-string" is managed by the StatefulSet controller. ServiceName string `json:"serviceName" protobuf:"bytes,5,opt,name=serviceName"` + + // podManagementPolicy controls how pods are created during initial scale up, + // when replacing pods on nodes, or when scaling down. The default policy is + // `OrderedReady`, where pods are created in increasing order (pod-0, then + // pod-1, etc) and the controller will wait until each pod is ready before + // continuing. When scaling down, the pods are removed in the opposite order. + // The alternative policy is `Parallel` which will create pods in parallel + // to match the desired scale without waiting, and on scale down will delete + // all pods at once. + // +optional + PodManagementPolicy PodManagementPolicyType `json:"podManagementPolicy,omitempty" protobuf:"bytes,6,opt,name=podManagementPolicy,casttype=PodManagementPolicyType"` + + // updateStrategy indicates the StatefulSetUpdateStrategy that will be + // employed to update Pods in the StatefulSet when a revision is made to + // Template. + UpdateStrategy StatefulSetUpdateStrategy `json:"updateStrategy,omitempty" protobuf:"bytes,7,opt,name=updateStrategy"` + + // revisionHistoryLimit is the maximum number of revisions that will + // be maintained in the StatefulSet's revision history. The revision history + // consists of all revisions not represented by a currently applied + // StatefulSetSpec version. The default value is 10. + RevisionHistoryLimit *int32 `json:"revisionHistoryLimit,omitempty" protobuf:"varint,8,opt,name=revisionHistoryLimit"` } // StatefulSetStatus represents the current state of a StatefulSet. type StatefulSetStatus struct { - // most recent generation observed by this StatefulSet. + // observedGeneration is the most recent generation observed for this StatefulSet. It corresponds to the + // StatefulSet's generation, which is updated on mutation by the API Server. // +optional ObservedGeneration *int64 `json:"observedGeneration,omitempty" protobuf:"varint,1,opt,name=observedGeneration"` - // Replicas is the number of actual replicas. + // replicas is the number of Pods created by the StatefulSet controller. Replicas int32 `json:"replicas" protobuf:"varint,2,opt,name=replicas"` + + // readyReplicas is the number of Pods created by the StatefulSet controller that have a Ready Condition. + ReadyReplicas int32 `json:"readyReplicas,omitempty" protobuf:"varint,3,opt,name=readyReplicas"` + + // currentReplicas is the number of Pods created by the StatefulSet controller from the StatefulSet version + // indicated by currentRevision. + CurrentReplicas int32 `json:"currentReplicas,omitempty" protobuf:"varint,4,opt,name=currentReplicas"` + + // updatedReplicas is the number of Pods created by the StatefulSet controller from the StatefulSet version + // indicated by updateRevision. + UpdatedReplicas int32 `json:"updatedReplicas,omitempty" protobuf:"varint,5,opt,name=updatedReplicas"` + + // currentRevision, if not empty, indicates the version of the StatefulSet used to generate Pods in the + // sequence [0,currentReplicas). + CurrentRevision string `json:"currentRevision,omitempty" protobuf:"bytes,6,opt,name=currentRevision"` + + // updateRevision, if not empty, indicates the version of the StatefulSet used to generate Pods in the sequence + // [replicas-updatedReplicas,replicas) + UpdateRevision string `json:"updateRevision,omitempty" protobuf:"bytes,7,opt,name=updateRevision"` } // StatefulSetList is a collection of StatefulSets. @@ -233,7 +329,7 @@ type DeploymentRollback struct { } type RollbackConfig struct { - // The revision to rollback to. If set to 0, rollbck to the last revision. + // The revision to rollback to. If set to 0, rollback to the last revision. // +optional Revision int64 `json:"revision,omitempty" protobuf:"varint,1,opt,name=revision"` } @@ -330,6 +426,12 @@ type DeploymentStatus struct { // +patchMergeKey=type // +patchStrategy=merge Conditions []DeploymentCondition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,6,rep,name=conditions"` + + // Count of hash collisions for the Deployment. The Deployment controller uses this + // field as a collision avoidance mechanism when it needs to create the name for the + // newest ReplicaSet. + // +optional + CollisionCount *int64 `json:"collisionCount,omitempty" protobuf:"varint,8,opt,name=collisionCount"` } type DeploymentConditionType string @@ -375,3 +477,40 @@ type DeploymentList struct { // Items is the list of Deployments. Items []Deployment `json:"items" protobuf:"bytes,2,rep,name=items"` } + +// +genclient=true + +// ControllerRevision implements an immutable snapshot of state data. Clients +// are responsible for serializing and deserializing the objects that contain +// their internal state. +// Once a ControllerRevision has been successfully created, it can not be updated. +// The API Server will fail validation of all requests that attempt to mutate +// the Data field. ControllerRevisions may, however, be deleted. Note that, due to its use by both +// the DaemonSet and StatefulSet controllers for update and rollback, this object is beta. However, +// it may be subject to name and representation changes in future releases, and clients should not +// depend on its stability. It is primarily for internal use by controllers. +type ControllerRevision struct { + metav1.TypeMeta `json:",inline"` + // Standard object's metadata. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + // +optional + metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` + + // Data is the serialized representation of the state. + Data runtime.RawExtension `json:"data,omitempty" protobuf:"bytes,2,opt,name=data"` + + // Revision indicates the revision of the state represented by Data. + Revision int64 `json:"revision" protobuf:"varint,3,opt,name=revision"` +} + +// ControllerRevisionList is a resource containing a list of ControllerRevision objects. +type ControllerRevisionList struct { + metav1.TypeMeta `json:",inline"` + + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + // +optional + metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` + + // Items is the list of ControllerRevisions + Items []ControllerRevision `json:"items" protobuf:"bytes,2,rep,name=items"` +} diff --git a/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/types_swagger_doc_generated.go b/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/types_swagger_doc_generated.go index 15c73ae9..00d1a617 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/types_swagger_doc_generated.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/types_swagger_doc_generated.go @@ -27,6 +27,27 @@ package v1beta1 // Those methods can be generated by using hack/update-generated-swagger-docs.sh // AUTO-GENERATED FUNCTIONS START HERE +var map_ControllerRevision = map[string]string{ + "": "ControllerRevision implements an immutable snapshot of state data. Clients are responsible for serializing and deserializing the objects that contain their internal state. Once a ControllerRevision has been successfully created, it can not be updated. The API Server will fail validation of all requests that attempt to mutate the Data field. ControllerRevisions may, however, be deleted. Note that, due to its use by both the DaemonSet and StatefulSet controllers for update and rollback, this object is beta. However, it may be subject to name and representation changes in future releases, and clients should not depend on its stability. It is primarily for internal use by controllers.", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "data": "Data is the serialized representation of the state.", + "revision": "Revision indicates the revision of the state represented by Data.", +} + +func (ControllerRevision) SwaggerDoc() map[string]string { + return map_ControllerRevision +} + +var map_ControllerRevisionList = map[string]string{ + "": "ControllerRevisionList is a resource containing a list of ControllerRevision objects.", + "metadata": "More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "items": "Items is the list of ControllerRevisions", +} + +func (ControllerRevisionList) SwaggerDoc() map[string]string { + return map_ControllerRevisionList +} + var map_Deployment = map[string]string{ "": "Deployment enables declarative updates for Pods and ReplicaSets.", "metadata": "Standard object metadata.", @@ -99,6 +120,7 @@ var map_DeploymentStatus = map[string]string{ "availableReplicas": "Total number of available pods (ready for at least minReadySeconds) targeted by this deployment.", "unavailableReplicas": "Total number of unavailable pods targeted by this deployment.", "conditions": "Represents the latest available observations of a deployment's current state.", + "collisionCount": "Count of hash collisions for the Deployment. The Deployment controller uses this field as a collision avoidance mechanism when it needs to create the name for the newest ReplicaSet.", } func (DeploymentStatus) SwaggerDoc() map[string]string { @@ -116,7 +138,7 @@ func (DeploymentStrategy) SwaggerDoc() map[string]string { } var map_RollbackConfig = map[string]string{ - "revision": "The revision to rollback to. If set to 0, rollbck to the last revision.", + "revision": "The revision to rollback to. If set to 0, rollback to the last revision.", } func (RollbackConfig) SwaggerDoc() map[string]string { @@ -133,11 +155,20 @@ func (RollingUpdateDeployment) SwaggerDoc() map[string]string { return map_RollingUpdateDeployment } +var map_RollingUpdateStatefulSetStrategy = map[string]string{ + "": "RollingUpdateStatefulSetStrategy is used to communicate parameter for RollingUpdateStatefulSetStrategyType.", + "partition": "Partition indicates the ordinal at which the StatefulSet should be partitioned.", +} + +func (RollingUpdateStatefulSetStrategy) SwaggerDoc() map[string]string { + return map_RollingUpdateStatefulSetStrategy +} + var map_Scale = map[string]string{ "": "Scale represents a scaling request for a resource.", - "metadata": "Standard object metadata; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata.", - "spec": "defines the behavior of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status.", - "status": "current status of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. Read-only.", + "metadata": "Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata.", + "spec": "defines the behavior of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status.", + "status": "current status of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. Read-only.", } func (Scale) SwaggerDoc() map[string]string { @@ -184,11 +215,14 @@ func (StatefulSetList) SwaggerDoc() map[string]string { var map_StatefulSetSpec = map[string]string{ "": "A StatefulSetSpec is the specification of a StatefulSet.", - "replicas": "Replicas is the desired number of replicas of the given Template. These are replicas in the sense that they are instantiations of the same Template, but individual replicas also have a consistent identity. If unspecified, defaults to 1.", - "selector": "Selector is a label query over pods that should match the replica count. If empty, defaulted to labels on the pod template. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors", - "template": "Template is the object that describes the pod that will be created if insufficient replicas are detected. Each pod stamped out by the StatefulSet will fulfill this Template, but have a unique identity from the rest of the StatefulSet.", - "volumeClaimTemplates": "VolumeClaimTemplates is a list of claims that pods are allowed to reference. The StatefulSet controller is responsible for mapping network identities to claims in a way that maintains the identity of a pod. Every claim in this list must have at least one matching (by name) volumeMount in one container in the template. A claim in this list takes precedence over any volumes in the template, with the same name.", - "serviceName": "ServiceName is the name of the service that governs this StatefulSet. This service must exist before the StatefulSet, and is responsible for the network identity of the set. Pods get DNS/hostnames that follow the pattern: pod-specific-string.serviceName.default.svc.cluster.local where \"pod-specific-string\" is managed by the StatefulSet controller.", + "replicas": "replicas is the desired number of replicas of the given Template. These are replicas in the sense that they are instantiations of the same Template, but individual replicas also have a consistent identity. If unspecified, defaults to 1.", + "selector": "selector is a label query over pods that should match the replica count. If empty, defaulted to labels on the pod template. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors", + "template": "template is the object that describes the pod that will be created if insufficient replicas are detected. Each pod stamped out by the StatefulSet will fulfill this Template, but have a unique identity from the rest of the StatefulSet.", + "volumeClaimTemplates": "volumeClaimTemplates is a list of claims that pods are allowed to reference. The StatefulSet controller is responsible for mapping network identities to claims in a way that maintains the identity of a pod. Every claim in this list must have at least one matching (by name) volumeMount in one container in the template. A claim in this list takes precedence over any volumes in the template, with the same name.", + "serviceName": "serviceName is the name of the service that governs this StatefulSet. This service must exist before the StatefulSet, and is responsible for the network identity of the set. Pods get DNS/hostnames that follow the pattern: pod-specific-string.serviceName.default.svc.cluster.local where \"pod-specific-string\" is managed by the StatefulSet controller.", + "podManagementPolicy": "podManagementPolicy controls how pods are created during initial scale up, when replacing pods on nodes, or when scaling down. The default policy is `OrderedReady`, where pods are created in increasing order (pod-0, then pod-1, etc) and the controller will wait until each pod is ready before continuing. When scaling down, the pods are removed in the opposite order. The alternative policy is `Parallel` which will create pods in parallel to match the desired scale without waiting, and on scale down will delete all pods at once.", + "updateStrategy": "updateStrategy indicates the StatefulSetUpdateStrategy that will be employed to update Pods in the StatefulSet when a revision is made to Template.", + "revisionHistoryLimit": "revisionHistoryLimit is the maximum number of revisions that will be maintained in the StatefulSet's revision history. The revision history consists of all revisions not represented by a currently applied StatefulSetSpec version. The default value is 10.", } func (StatefulSetSpec) SwaggerDoc() map[string]string { @@ -197,12 +231,27 @@ func (StatefulSetSpec) SwaggerDoc() map[string]string { var map_StatefulSetStatus = map[string]string{ "": "StatefulSetStatus represents the current state of a StatefulSet.", - "observedGeneration": "most recent generation observed by this StatefulSet.", - "replicas": "Replicas is the number of actual replicas.", + "observedGeneration": "observedGeneration is the most recent generation observed for this StatefulSet. It corresponds to the StatefulSet's generation, which is updated on mutation by the API Server.", + "replicas": "replicas is the number of Pods created by the StatefulSet controller.", + "readyReplicas": "readyReplicas is the number of Pods created by the StatefulSet controller that have a Ready Condition.", + "currentReplicas": "currentReplicas is the number of Pods created by the StatefulSet controller from the StatefulSet version indicated by currentRevision.", + "updatedReplicas": "updatedReplicas is the number of Pods created by the StatefulSet controller from the StatefulSet version indicated by updateRevision.", + "currentRevision": "currentRevision, if not empty, indicates the version of the StatefulSet used to generate Pods in the sequence [0,currentReplicas).", + "updateRevision": "updateRevision, if not empty, indicates the version of the StatefulSet used to generate Pods in the sequence [replicas-updatedReplicas,replicas)", } func (StatefulSetStatus) SwaggerDoc() map[string]string { return map_StatefulSetStatus } +var map_StatefulSetUpdateStrategy = map[string]string{ + "": "StatefulSetUpdateStrategy indicates the strategy that the StatefulSet controller will use to perform updates. It includes any additional parameters necessary to perform the update for the indicated strategy.", + "type": "Type indicates the type of the StatefulSetUpdateStrategy.", + "rollingUpdate": "RollingUpdate is used to communicate parameters when Type is RollingUpdateStatefulSetStrategyType.", +} + +func (StatefulSetUpdateStrategy) SwaggerDoc() map[string]string { + return map_StatefulSetUpdateStrategy +} + // AUTO-GENERATED FUNCTIONS END HERE diff --git a/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/zz_generated.conversion.go b/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/zz_generated.conversion.go index 02d7da15..32ff4831 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/zz_generated.conversion.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/zz_generated.conversion.go @@ -38,6 +38,12 @@ func init() { // Public to allow building arbitrary schemes. func RegisterConversions(scheme *runtime.Scheme) error { return scheme.AddGeneratedConversionFuncs( + Convert_v1beta1_ControllerRevision_To_apps_ControllerRevision, + Convert_apps_ControllerRevision_To_v1beta1_ControllerRevision, + Convert_v1beta1_ControllerRevisionList_To_apps_ControllerRevisionList, + Convert_apps_ControllerRevisionList_To_v1beta1_ControllerRevisionList, + Convert_v1beta1_RollingUpdateStatefulSetStrategy_To_apps_RollingUpdateStatefulSetStrategy, + Convert_apps_RollingUpdateStatefulSetStrategy_To_v1beta1_RollingUpdateStatefulSetStrategy, Convert_v1beta1_StatefulSet_To_apps_StatefulSet, Convert_apps_StatefulSet_To_v1beta1_StatefulSet, Convert_v1beta1_StatefulSetList_To_apps_StatefulSetList, @@ -46,9 +52,105 @@ func RegisterConversions(scheme *runtime.Scheme) error { Convert_apps_StatefulSetSpec_To_v1beta1_StatefulSetSpec, Convert_v1beta1_StatefulSetStatus_To_apps_StatefulSetStatus, Convert_apps_StatefulSetStatus_To_v1beta1_StatefulSetStatus, + Convert_v1beta1_StatefulSetUpdateStrategy_To_apps_StatefulSetUpdateStrategy, + Convert_apps_StatefulSetUpdateStrategy_To_v1beta1_StatefulSetUpdateStrategy, ) } +func autoConvert_v1beta1_ControllerRevision_To_apps_ControllerRevision(in *ControllerRevision, out *apps.ControllerRevision, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + if err := runtime.Convert_runtime_RawExtension_To_runtime_Object(&in.Data, &out.Data, s); err != nil { + return err + } + out.Revision = in.Revision + return nil +} + +// Convert_v1beta1_ControllerRevision_To_apps_ControllerRevision is an autogenerated conversion function. +func Convert_v1beta1_ControllerRevision_To_apps_ControllerRevision(in *ControllerRevision, out *apps.ControllerRevision, s conversion.Scope) error { + return autoConvert_v1beta1_ControllerRevision_To_apps_ControllerRevision(in, out, s) +} + +func autoConvert_apps_ControllerRevision_To_v1beta1_ControllerRevision(in *apps.ControllerRevision, out *ControllerRevision, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + if err := runtime.Convert_runtime_Object_To_runtime_RawExtension(&in.Data, &out.Data, s); err != nil { + return err + } + out.Revision = in.Revision + return nil +} + +// Convert_apps_ControllerRevision_To_v1beta1_ControllerRevision is an autogenerated conversion function. +func Convert_apps_ControllerRevision_To_v1beta1_ControllerRevision(in *apps.ControllerRevision, out *ControllerRevision, s conversion.Scope) error { + return autoConvert_apps_ControllerRevision_To_v1beta1_ControllerRevision(in, out, s) +} + +func autoConvert_v1beta1_ControllerRevisionList_To_apps_ControllerRevisionList(in *ControllerRevisionList, out *apps.ControllerRevisionList, s conversion.Scope) error { + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]apps.ControllerRevision, len(*in)) + for i := range *in { + if err := Convert_v1beta1_ControllerRevision_To_apps_ControllerRevision(&(*in)[i], &(*out)[i], s); err != nil { + return err + } + } + } else { + out.Items = nil + } + return nil +} + +// Convert_v1beta1_ControllerRevisionList_To_apps_ControllerRevisionList is an autogenerated conversion function. +func Convert_v1beta1_ControllerRevisionList_To_apps_ControllerRevisionList(in *ControllerRevisionList, out *apps.ControllerRevisionList, s conversion.Scope) error { + return autoConvert_v1beta1_ControllerRevisionList_To_apps_ControllerRevisionList(in, out, s) +} + +func autoConvert_apps_ControllerRevisionList_To_v1beta1_ControllerRevisionList(in *apps.ControllerRevisionList, out *ControllerRevisionList, s conversion.Scope) error { + out.ListMeta = in.ListMeta + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]ControllerRevision, len(*in)) + for i := range *in { + if err := Convert_apps_ControllerRevision_To_v1beta1_ControllerRevision(&(*in)[i], &(*out)[i], s); err != nil { + return err + } + } + } else { + out.Items = make([]ControllerRevision, 0) + } + return nil +} + +// Convert_apps_ControllerRevisionList_To_v1beta1_ControllerRevisionList is an autogenerated conversion function. +func Convert_apps_ControllerRevisionList_To_v1beta1_ControllerRevisionList(in *apps.ControllerRevisionList, out *ControllerRevisionList, s conversion.Scope) error { + return autoConvert_apps_ControllerRevisionList_To_v1beta1_ControllerRevisionList(in, out, s) +} + +func autoConvert_v1beta1_RollingUpdateStatefulSetStrategy_To_apps_RollingUpdateStatefulSetStrategy(in *RollingUpdateStatefulSetStrategy, out *apps.RollingUpdateStatefulSetStrategy, s conversion.Scope) error { + if err := v1.Convert_Pointer_int32_To_int32(&in.Partition, &out.Partition, s); err != nil { + return err + } + return nil +} + +// Convert_v1beta1_RollingUpdateStatefulSetStrategy_To_apps_RollingUpdateStatefulSetStrategy is an autogenerated conversion function. +func Convert_v1beta1_RollingUpdateStatefulSetStrategy_To_apps_RollingUpdateStatefulSetStrategy(in *RollingUpdateStatefulSetStrategy, out *apps.RollingUpdateStatefulSetStrategy, s conversion.Scope) error { + return autoConvert_v1beta1_RollingUpdateStatefulSetStrategy_To_apps_RollingUpdateStatefulSetStrategy(in, out, s) +} + +func autoConvert_apps_RollingUpdateStatefulSetStrategy_To_v1beta1_RollingUpdateStatefulSetStrategy(in *apps.RollingUpdateStatefulSetStrategy, out *RollingUpdateStatefulSetStrategy, s conversion.Scope) error { + if err := v1.Convert_int32_To_Pointer_int32(&in.Partition, &out.Partition, s); err != nil { + return err + } + return nil +} + +// Convert_apps_RollingUpdateStatefulSetStrategy_To_v1beta1_RollingUpdateStatefulSetStrategy is an autogenerated conversion function. +func Convert_apps_RollingUpdateStatefulSetStrategy_To_v1beta1_RollingUpdateStatefulSetStrategy(in *apps.RollingUpdateStatefulSetStrategy, out *RollingUpdateStatefulSetStrategy, s conversion.Scope) error { + return autoConvert_apps_RollingUpdateStatefulSetStrategy_To_v1beta1_RollingUpdateStatefulSetStrategy(in, out, s) +} + func autoConvert_v1beta1_StatefulSet_To_apps_StatefulSet(in *StatefulSet, out *apps.StatefulSet, s conversion.Scope) error { out.ObjectMeta = in.ObjectMeta if err := Convert_v1beta1_StatefulSetSpec_To_apps_StatefulSetSpec(&in.Spec, &out.Spec, s); err != nil { @@ -133,6 +235,11 @@ func autoConvert_v1beta1_StatefulSetSpec_To_apps_StatefulSetSpec(in *StatefulSet } out.VolumeClaimTemplates = *(*[]api.PersistentVolumeClaim)(unsafe.Pointer(&in.VolumeClaimTemplates)) out.ServiceName = in.ServiceName + out.PodManagementPolicy = apps.PodManagementPolicyType(in.PodManagementPolicy) + if err := Convert_v1beta1_StatefulSetUpdateStrategy_To_apps_StatefulSetUpdateStrategy(&in.UpdateStrategy, &out.UpdateStrategy, s); err != nil { + return err + } + out.RevisionHistoryLimit = (*int32)(unsafe.Pointer(in.RevisionHistoryLimit)) return nil } @@ -146,12 +253,22 @@ func autoConvert_apps_StatefulSetSpec_To_v1beta1_StatefulSetSpec(in *apps.Statef } out.VolumeClaimTemplates = *(*[]api_v1.PersistentVolumeClaim)(unsafe.Pointer(&in.VolumeClaimTemplates)) out.ServiceName = in.ServiceName + out.PodManagementPolicy = PodManagementPolicyType(in.PodManagementPolicy) + if err := Convert_apps_StatefulSetUpdateStrategy_To_v1beta1_StatefulSetUpdateStrategy(&in.UpdateStrategy, &out.UpdateStrategy, s); err != nil { + return err + } + out.RevisionHistoryLimit = (*int32)(unsafe.Pointer(in.RevisionHistoryLimit)) return nil } func autoConvert_v1beta1_StatefulSetStatus_To_apps_StatefulSetStatus(in *StatefulSetStatus, out *apps.StatefulSetStatus, s conversion.Scope) error { out.ObservedGeneration = (*int64)(unsafe.Pointer(in.ObservedGeneration)) out.Replicas = in.Replicas + out.ReadyReplicas = in.ReadyReplicas + out.CurrentReplicas = in.CurrentReplicas + out.UpdatedReplicas = in.UpdatedReplicas + out.CurrentRevision = in.CurrentRevision + out.UpdateRevision = in.UpdateRevision return nil } @@ -163,6 +280,11 @@ func Convert_v1beta1_StatefulSetStatus_To_apps_StatefulSetStatus(in *StatefulSet func autoConvert_apps_StatefulSetStatus_To_v1beta1_StatefulSetStatus(in *apps.StatefulSetStatus, out *StatefulSetStatus, s conversion.Scope) error { out.ObservedGeneration = (*int64)(unsafe.Pointer(in.ObservedGeneration)) out.Replicas = in.Replicas + out.ReadyReplicas = in.ReadyReplicas + out.CurrentReplicas = in.CurrentReplicas + out.UpdatedReplicas = in.UpdatedReplicas + out.CurrentRevision = in.CurrentRevision + out.UpdateRevision = in.UpdateRevision return nil } @@ -170,3 +292,31 @@ func autoConvert_apps_StatefulSetStatus_To_v1beta1_StatefulSetStatus(in *apps.St func Convert_apps_StatefulSetStatus_To_v1beta1_StatefulSetStatus(in *apps.StatefulSetStatus, out *StatefulSetStatus, s conversion.Scope) error { return autoConvert_apps_StatefulSetStatus_To_v1beta1_StatefulSetStatus(in, out, s) } + +func autoConvert_v1beta1_StatefulSetUpdateStrategy_To_apps_StatefulSetUpdateStrategy(in *StatefulSetUpdateStrategy, out *apps.StatefulSetUpdateStrategy, s conversion.Scope) error { + out.Type = apps.StatefulSetUpdateStrategyType(in.Type) + if in.RollingUpdate != nil { + in, out := &in.RollingUpdate, &out.RollingUpdate + *out = new(apps.RollingUpdateStatefulSetStrategy) + if err := Convert_v1beta1_RollingUpdateStatefulSetStrategy_To_apps_RollingUpdateStatefulSetStrategy(*in, *out, s); err != nil { + return err + } + } else { + out.RollingUpdate = nil + } + return nil +} + +func autoConvert_apps_StatefulSetUpdateStrategy_To_v1beta1_StatefulSetUpdateStrategy(in *apps.StatefulSetUpdateStrategy, out *StatefulSetUpdateStrategy, s conversion.Scope) error { + out.Type = StatefulSetUpdateStrategyType(in.Type) + if in.RollingUpdate != nil { + in, out := &in.RollingUpdate, &out.RollingUpdate + *out = new(RollingUpdateStatefulSetStrategy) + if err := Convert_apps_RollingUpdateStatefulSetStrategy_To_v1beta1_RollingUpdateStatefulSetStrategy(*in, *out, s); err != nil { + return err + } + } else { + out.RollingUpdate = nil + } + return nil +} diff --git a/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/zz_generated.deepcopy.go index f83ca377..42736c1c 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/zz_generated.deepcopy.go @@ -37,6 +37,8 @@ func init() { // to allow building arbitrary schemes. func RegisterDeepCopies(scheme *runtime.Scheme) error { return scheme.AddGeneratedDeepCopyFuncs( + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_ControllerRevision, InType: reflect.TypeOf(&ControllerRevision{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_ControllerRevisionList, InType: reflect.TypeOf(&ControllerRevisionList{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_Deployment, InType: reflect.TypeOf(&Deployment{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_DeploymentCondition, InType: reflect.TypeOf(&DeploymentCondition{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_DeploymentList, InType: reflect.TypeOf(&DeploymentList{})}, @@ -46,6 +48,7 @@ func RegisterDeepCopies(scheme *runtime.Scheme) error { conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_DeploymentStrategy, InType: reflect.TypeOf(&DeploymentStrategy{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_RollbackConfig, InType: reflect.TypeOf(&RollbackConfig{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_RollingUpdateDeployment, InType: reflect.TypeOf(&RollingUpdateDeployment{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_RollingUpdateStatefulSetStrategy, InType: reflect.TypeOf(&RollingUpdateStatefulSetStrategy{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_Scale, InType: reflect.TypeOf(&Scale{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_ScaleSpec, InType: reflect.TypeOf(&ScaleSpec{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_ScaleStatus, InType: reflect.TypeOf(&ScaleStatus{})}, @@ -53,9 +56,49 @@ func RegisterDeepCopies(scheme *runtime.Scheme) error { conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_StatefulSetList, InType: reflect.TypeOf(&StatefulSetList{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_StatefulSetSpec, InType: reflect.TypeOf(&StatefulSetSpec{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_StatefulSetStatus, InType: reflect.TypeOf(&StatefulSetStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_StatefulSetUpdateStrategy, InType: reflect.TypeOf(&StatefulSetUpdateStrategy{})}, ) } +// DeepCopy_v1beta1_ControllerRevision is an autogenerated deepcopy function. +func DeepCopy_v1beta1_ControllerRevision(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ControllerRevision) + out := out.(*ControllerRevision) + *out = *in + if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { + return err + } else { + out.ObjectMeta = *newVal.(*v1.ObjectMeta) + } + if newVal, err := c.DeepCopy(&in.Data); err != nil { + return err + } else { + out.Data = *newVal.(*runtime.RawExtension) + } + return nil + } +} + +// DeepCopy_v1beta1_ControllerRevisionList is an autogenerated deepcopy function. +func DeepCopy_v1beta1_ControllerRevisionList(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ControllerRevisionList) + out := out.(*ControllerRevisionList) + *out = *in + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]ControllerRevision, len(*in)) + for i := range *in { + if err := DeepCopy_v1beta1_ControllerRevision(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} + // DeepCopy_v1beta1_Deployment is an autogenerated deepcopy function. func DeepCopy_v1beta1_Deployment(in interface{}, out interface{}, c *conversion.Cloner) error { { @@ -184,6 +227,11 @@ func DeepCopy_v1beta1_DeploymentStatus(in interface{}, out interface{}, c *conve } } } + if in.CollisionCount != nil { + in, out := &in.CollisionCount, &out.CollisionCount + *out = new(int64) + **out = **in + } return nil } } @@ -235,6 +283,21 @@ func DeepCopy_v1beta1_RollingUpdateDeployment(in interface{}, out interface{}, c } } +// DeepCopy_v1beta1_RollingUpdateStatefulSetStrategy is an autogenerated deepcopy function. +func DeepCopy_v1beta1_RollingUpdateStatefulSetStrategy(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*RollingUpdateStatefulSetStrategy) + out := out.(*RollingUpdateStatefulSetStrategy) + *out = *in + if in.Partition != nil { + in, out := &in.Partition, &out.Partition + *out = new(int32) + **out = **in + } + return nil + } +} + // DeepCopy_v1beta1_Scale is an autogenerated deepcopy function. func DeepCopy_v1beta1_Scale(in interface{}, out interface{}, c *conversion.Cloner) error { { @@ -351,6 +414,14 @@ func DeepCopy_v1beta1_StatefulSetSpec(in interface{}, out interface{}, c *conver } } } + if err := DeepCopy_v1beta1_StatefulSetUpdateStrategy(&in.UpdateStrategy, &out.UpdateStrategy, c); err != nil { + return err + } + if in.RevisionHistoryLimit != nil { + in, out := &in.RevisionHistoryLimit, &out.RevisionHistoryLimit + *out = new(int32) + **out = **in + } return nil } } @@ -369,3 +440,20 @@ func DeepCopy_v1beta1_StatefulSetStatus(in interface{}, out interface{}, c *conv return nil } } + +// DeepCopy_v1beta1_StatefulSetUpdateStrategy is an autogenerated deepcopy function. +func DeepCopy_v1beta1_StatefulSetUpdateStrategy(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*StatefulSetUpdateStrategy) + out := out.(*StatefulSetUpdateStrategy) + *out = *in + if in.RollingUpdate != nil { + in, out := &in.RollingUpdate, &out.RollingUpdate + *out = new(RollingUpdateStatefulSetStrategy) + if err := DeepCopy_v1beta1_RollingUpdateStatefulSetStrategy(*in, *out, c); err != nil { + return err + } + } + return nil + } +} diff --git a/vendor/k8s.io/kubernetes/pkg/apis/apps/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/apps/zz_generated.deepcopy.go index 6019cfa8..cfad33e0 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/apps/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/apps/zz_generated.deepcopy.go @@ -36,13 +36,69 @@ func init() { // to allow building arbitrary schemes. func RegisterDeepCopies(scheme *runtime.Scheme) error { return scheme.AddGeneratedDeepCopyFuncs( + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_apps_ControllerRevision, InType: reflect.TypeOf(&ControllerRevision{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_apps_ControllerRevisionList, InType: reflect.TypeOf(&ControllerRevisionList{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_apps_RollingUpdateStatefulSetStrategy, InType: reflect.TypeOf(&RollingUpdateStatefulSetStrategy{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_apps_StatefulSet, InType: reflect.TypeOf(&StatefulSet{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_apps_StatefulSetList, InType: reflect.TypeOf(&StatefulSetList{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_apps_StatefulSetSpec, InType: reflect.TypeOf(&StatefulSetSpec{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_apps_StatefulSetStatus, InType: reflect.TypeOf(&StatefulSetStatus{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_apps_StatefulSetUpdateStrategy, InType: reflect.TypeOf(&StatefulSetUpdateStrategy{})}, ) } +// DeepCopy_apps_ControllerRevision is an autogenerated deepcopy function. +func DeepCopy_apps_ControllerRevision(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ControllerRevision) + out := out.(*ControllerRevision) + *out = *in + if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { + return err + } else { + out.ObjectMeta = *newVal.(*v1.ObjectMeta) + } + // in.Data is kind 'Interface' + if in.Data != nil { + if newVal, err := c.DeepCopy(&in.Data); err != nil { + return err + } else { + out.Data = *newVal.(*runtime.Object) + } + } + return nil + } +} + +// DeepCopy_apps_ControllerRevisionList is an autogenerated deepcopy function. +func DeepCopy_apps_ControllerRevisionList(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*ControllerRevisionList) + out := out.(*ControllerRevisionList) + *out = *in + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]ControllerRevision, len(*in)) + for i := range *in { + if err := DeepCopy_apps_ControllerRevision(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} + +// DeepCopy_apps_RollingUpdateStatefulSetStrategy is an autogenerated deepcopy function. +func DeepCopy_apps_RollingUpdateStatefulSetStrategy(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*RollingUpdateStatefulSetStrategy) + out := out.(*RollingUpdateStatefulSetStrategy) + *out = *in + return nil + } +} + // DeepCopy_apps_StatefulSet is an autogenerated deepcopy function. func DeepCopy_apps_StatefulSet(in interface{}, out interface{}, c *conversion.Cloner) error { { @@ -109,6 +165,14 @@ func DeepCopy_apps_StatefulSetSpec(in interface{}, out interface{}, c *conversio } } } + if err := DeepCopy_apps_StatefulSetUpdateStrategy(&in.UpdateStrategy, &out.UpdateStrategy, c); err != nil { + return err + } + if in.RevisionHistoryLimit != nil { + in, out := &in.RevisionHistoryLimit, &out.RevisionHistoryLimit + *out = new(int32) + **out = **in + } return nil } } @@ -127,3 +191,18 @@ func DeepCopy_apps_StatefulSetStatus(in interface{}, out interface{}, c *convers return nil } } + +// DeepCopy_apps_StatefulSetUpdateStrategy is an autogenerated deepcopy function. +func DeepCopy_apps_StatefulSetUpdateStrategy(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*StatefulSetUpdateStrategy) + out := out.(*StatefulSetUpdateStrategy) + *out = *in + if in.RollingUpdate != nil { + in, out := &in.RollingUpdate, &out.RollingUpdate + *out = new(RollingUpdateStatefulSetStrategy) + **out = **in + } + return nil + } +} diff --git a/vendor/k8s.io/kubernetes/pkg/apis/authentication/v1/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/apis/authentication/v1/generated.pb.go index a484283f..bb9bdecd 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/authentication/v1/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/authentication/v1/generated.pb.go @@ -37,9 +37,10 @@ import proto "github.com/gogo/protobuf/proto" import fmt "fmt" import math "math" +import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + import strings "strings" import reflect "reflect" -import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" import io "io" @@ -255,10 +256,15 @@ func (m *UserInfo) MarshalTo(dAtA []byte) (int, error) { } } if len(m.Extra) > 0 { + keysForExtra := make([]string, 0, len(m.Extra)) for k := range m.Extra { + keysForExtra = append(keysForExtra, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForExtra) + for _, k := range keysForExtra { dAtA[i] = 0x22 i++ - v := m.Extra[k] + v := m.Extra[string(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -1251,46 +1257,45 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 655 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x53, 0xcd, 0x6e, 0xd3, 0x4c, - 0x14, 0xb5, 0xf3, 0x53, 0x25, 0x93, 0xaf, 0x1f, 0x65, 0x24, 0xa4, 0x28, 0x12, 0x4e, 0x14, 0x58, - 0x74, 0x51, 0xc6, 0xa4, 0xa0, 0x52, 0x15, 0x10, 0xaa, 0x45, 0x85, 0xba, 0x00, 0xa4, 0x81, 0x22, - 0xc4, 0x06, 0x26, 0xce, 0xad, 0x63, 0x52, 0xff, 0x68, 0x3c, 0x36, 0xed, 0xae, 0x8f, 0xc0, 0x92, - 0x25, 0xaf, 0xc1, 0x1b, 0x74, 0x47, 0x77, 0xb0, 0x40, 0x15, 0x0d, 0x2f, 0x82, 0x66, 0x3c, 0xd4, - 0x2e, 0x69, 0x85, 0xda, 0xdd, 0xcc, 0x99, 0x7b, 0xce, 0xbd, 0xe7, 0xde, 0xb9, 0xe8, 0xc1, 0x64, - 0x35, 0x21, 0x7e, 0x64, 0x4f, 0xd2, 0x21, 0xf0, 0x10, 0x04, 0x24, 0x76, 0x3c, 0xf1, 0x6c, 0x16, - 0xfb, 0x89, 0xcd, 0x52, 0x31, 0x86, 0x50, 0xf8, 0x2e, 0x13, 0x7e, 0x14, 0xda, 0xd9, 0xc0, 0xf6, - 0x20, 0x04, 0xce, 0x04, 0x8c, 0x48, 0xcc, 0x23, 0x11, 0xe1, 0xa5, 0x9c, 0x4d, 0x0a, 0x36, 0x89, - 0x27, 0x1e, 0x91, 0x6c, 0x72, 0x9a, 0x4d, 0xb2, 0x41, 0xe7, 0x96, 0xe7, 0x8b, 0x71, 0x3a, 0x24, - 0x6e, 0x14, 0xd8, 0x5e, 0xe4, 0x45, 0xb6, 0x12, 0x19, 0xa6, 0xdb, 0xea, 0xa6, 0x2e, 0xea, 0x94, - 0x8b, 0x77, 0xee, 0xea, 0xd2, 0x58, 0xec, 0x07, 0xcc, 0x1d, 0xfb, 0x21, 0xf0, 0xbd, 0xa2, 0xb8, - 0x00, 0x04, 0x3b, 0xa3, 0xa4, 0x8e, 0x7d, 0x1e, 0x8b, 0xa7, 0xa1, 0xf0, 0x03, 0x98, 0x21, 0xac, - 0xfc, 0x8b, 0x90, 0xb8, 0x63, 0x08, 0xd8, 0x0c, 0xef, 0xce, 0x79, 0xbc, 0x54, 0xf8, 0x3b, 0xb6, - 0x1f, 0x8a, 0x44, 0xf0, 0x19, 0x52, 0xc9, 0x53, 0x02, 0x3c, 0x03, 0x5e, 0x18, 0x82, 0x5d, 0x16, - 0xc4, 0x3b, 0x70, 0x86, 0xa7, 0xfe, 0x3d, 0x84, 0x36, 0x76, 0x05, 0x67, 0xaf, 0xd8, 0x4e, 0x0a, - 0xb8, 0x8b, 0xea, 0xbe, 0x80, 0x20, 0x69, 0x9b, 0xbd, 0xea, 0x62, 0xd3, 0x69, 0x4e, 0x8f, 0xba, - 0xf5, 0x4d, 0x09, 0xd0, 0x1c, 0x5f, 0x6b, 0x7c, 0xfa, 0xdc, 0x35, 0xf6, 0x7f, 0xf4, 0x8c, 0xfe, - 0x97, 0x0a, 0x6a, 0xbd, 0x8c, 0x26, 0x10, 0x52, 0xc8, 0x7c, 0xf8, 0x80, 0xdf, 0xa1, 0x86, 0xec, - 0xdb, 0x88, 0x09, 0xd6, 0x36, 0x7b, 0xe6, 0x62, 0x6b, 0xf9, 0x36, 0xd1, 0x23, 0x2c, 0xdb, 0x28, - 0x86, 0x28, 0xa3, 0x49, 0x36, 0x20, 0xcf, 0x87, 0xef, 0xc1, 0x15, 0x4f, 0x41, 0x30, 0x07, 0x1f, - 0x1c, 0x75, 0x8d, 0xe9, 0x51, 0x17, 0x15, 0x18, 0x3d, 0x51, 0xc5, 0x6f, 0x51, 0x2d, 0x89, 0xc1, - 0x6d, 0x57, 0x94, 0xfa, 0x43, 0x72, 0x91, 0x0f, 0x42, 0x4a, 0xa5, 0xbe, 0x88, 0xc1, 0x75, 0xfe, - 0xd3, 0xa9, 0x6a, 0xf2, 0x46, 0x95, 0x30, 0xf6, 0xd0, 0x5c, 0x22, 0x98, 0x48, 0x93, 0x76, 0x55, - 0xa5, 0x78, 0x74, 0xf9, 0x14, 0x4a, 0xc6, 0xf9, 0x5f, 0x27, 0x99, 0xcb, 0xef, 0x54, 0xcb, 0xf7, - 0x57, 0xd0, 0x95, 0xbf, 0xea, 0xc1, 0x37, 0x50, 0x5d, 0x48, 0x48, 0xf5, 0xae, 0xe9, 0xcc, 0x6b, - 0x66, 0x3d, 0x8f, 0xcb, 0xdf, 0xfa, 0x5f, 0x4d, 0x74, 0x75, 0x26, 0x0b, 0xbe, 0x8f, 0xe6, 0x4b, - 0xc5, 0xc0, 0x48, 0x49, 0x34, 0x9c, 0x6b, 0x5a, 0x62, 0x7e, 0xbd, 0xfc, 0x48, 0x4f, 0xc7, 0xe2, - 0xd7, 0xa8, 0x96, 0x26, 0xc0, 0x75, 0x53, 0x57, 0x2e, 0xe6, 0x78, 0x2b, 0x01, 0xbe, 0x19, 0x6e, - 0x47, 0x45, 0x37, 0x25, 0x42, 0x95, 0xa2, 0x74, 0x04, 0x9c, 0x47, 0x5c, 0x35, 0xb3, 0xe4, 0x68, - 0x43, 0x82, 0x34, 0x7f, 0xeb, 0x7f, 0xab, 0xa0, 0xc6, 0x1f, 0x15, 0xbc, 0x84, 0x1a, 0x92, 0x19, - 0xb2, 0x00, 0x74, 0x1b, 0x16, 0x34, 0x49, 0xc5, 0x48, 0x9c, 0x9e, 0x44, 0xe0, 0xeb, 0xa8, 0x9a, - 0xfa, 0x23, 0x55, 0x78, 0xd3, 0x69, 0xe9, 0xc0, 0xea, 0xd6, 0xe6, 0x63, 0x2a, 0x71, 0xdc, 0x47, - 0x73, 0x1e, 0x8f, 0xd2, 0x58, 0x0e, 0x53, 0xfe, 0x65, 0x24, 0xe7, 0xf0, 0x44, 0x21, 0x54, 0xbf, - 0xe0, 0x6d, 0x54, 0x07, 0xf9, 0xf9, 0xdb, 0xb5, 0x5e, 0x75, 0xb1, 0xb5, 0xbc, 0x7e, 0x39, 0xf7, - 0x44, 0x2d, 0xd0, 0x46, 0x28, 0xf8, 0x5e, 0xc9, 0xa5, 0xc4, 0x68, 0x2e, 0xdf, 0xe1, 0x7a, 0xc9, - 0x54, 0x0c, 0x5e, 0x40, 0xd5, 0x09, 0xec, 0xe5, 0x0e, 0xa9, 0x3c, 0xe2, 0x67, 0xa8, 0x9e, 0xc9, - 0xfd, 0xd3, 0x53, 0x58, 0xbd, 0x58, 0x1d, 0xc5, 0xfe, 0xd2, 0x5c, 0x66, 0xad, 0xb2, 0x6a, 0x3a, - 0x37, 0x0f, 0x8e, 0x2d, 0xe3, 0xf0, 0xd8, 0x32, 0xbe, 0x1f, 0x5b, 0xc6, 0xfe, 0xd4, 0x32, 0x0f, - 0xa6, 0x96, 0x79, 0x38, 0xb5, 0xcc, 0x9f, 0x53, 0xcb, 0xfc, 0xf8, 0xcb, 0x32, 0xde, 0x54, 0xb2, - 0xc1, 0xef, 0x00, 0x00, 0x00, 0xff, 0xff, 0xbb, 0x6b, 0x11, 0x20, 0xa4, 0x05, 0x00, 0x00, + // 640 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x53, 0xcd, 0x6e, 0xd3, 0x40, + 0x10, 0xb6, 0xf3, 0x53, 0x25, 0x1b, 0x0a, 0x65, 0x25, 0xa4, 0x28, 0x12, 0x4e, 0x14, 0x2e, 0x39, + 0x94, 0x35, 0x29, 0xa8, 0x54, 0x05, 0x84, 0x6a, 0x51, 0xa1, 0x1e, 0x00, 0x69, 0xa1, 0x08, 0x71, + 0x81, 0x8d, 0x33, 0x75, 0x96, 0xd4, 0x3f, 0x5a, 0xaf, 0x03, 0xbd, 0xf5, 0x11, 0x38, 0x72, 0xe4, + 0x35, 0x78, 0x83, 0xde, 0xe8, 0x8d, 0x1e, 0x50, 0x45, 0xcd, 0x8b, 0xa0, 0x5d, 0x2f, 0x4d, 0xda, + 0x52, 0xa1, 0xf6, 0xe6, 0xfd, 0x66, 0xbe, 0x6f, 0xbe, 0x99, 0xf1, 0xa0, 0x87, 0xe3, 0x95, 0x94, + 0xf0, 0xd8, 0x1d, 0x67, 0x03, 0x10, 0x11, 0x48, 0x48, 0xdd, 0x64, 0x1c, 0xb8, 0x2c, 0xe1, 0xa9, + 0xcb, 0x32, 0x39, 0x82, 0x48, 0x72, 0x9f, 0x49, 0x1e, 0x47, 0xee, 0xa4, 0xef, 0x06, 0x10, 0x81, + 0x60, 0x12, 0x86, 0x24, 0x11, 0xb1, 0x8c, 0xf1, 0x62, 0xc1, 0x26, 0x53, 0x36, 0x49, 0xc6, 0x01, + 0x51, 0x6c, 0x72, 0x92, 0x4d, 0x26, 0xfd, 0xd6, 0xed, 0x80, 0xcb, 0x51, 0x36, 0x20, 0x7e, 0x1c, + 0xba, 0x41, 0x1c, 0xc4, 0xae, 0x16, 0x19, 0x64, 0x5b, 0xfa, 0xa5, 0x1f, 0xfa, 0xab, 0x10, 0x6f, + 0xdd, 0x33, 0xd6, 0x58, 0xc2, 0x43, 0xe6, 0x8f, 0x78, 0x04, 0x62, 0x67, 0x6a, 0x2e, 0x04, 0xc9, + 0xfe, 0x61, 0xa9, 0xe5, 0x9e, 0xc7, 0x12, 0x59, 0x24, 0x79, 0x08, 0x67, 0x08, 0xcb, 0xff, 0x23, + 0xa4, 0xfe, 0x08, 0x42, 0x76, 0x86, 0x77, 0xf7, 0x3c, 0x5e, 0x26, 0xf9, 0xb6, 0xcb, 0x23, 0x99, + 0x4a, 0x71, 0x9a, 0xd4, 0xbd, 0x8f, 0xd0, 0xfa, 0x27, 0x29, 0xd8, 0x6b, 0xb6, 0x9d, 0x01, 0x6e, + 0xa3, 0x2a, 0x97, 0x10, 0xa6, 0x4d, 0xbb, 0x53, 0xee, 0xd5, 0xbd, 0x7a, 0x7e, 0xd8, 0xae, 0x6e, + 0x28, 0x80, 0x16, 0xf8, 0x6a, 0xed, 0xcb, 0xd7, 0xb6, 0xb5, 0xfb, 0xb3, 0x63, 0x75, 0xbf, 0x95, + 0x50, 0xe3, 0x55, 0x3c, 0x86, 0x88, 0xc2, 0x84, 0xc3, 0x47, 0xfc, 0x1e, 0xd5, 0xd4, 0x04, 0x86, + 0x4c, 0xb2, 0xa6, 0xdd, 0xb1, 0x7b, 0x8d, 0xa5, 0x3b, 0xc4, 0x2c, 0x63, 0xd6, 0xd0, 0x74, 0x1d, + 0x2a, 0x9b, 0x4c, 0xfa, 0xe4, 0xc5, 0xe0, 0x03, 0xf8, 0xf2, 0x19, 0x48, 0xe6, 0xe1, 0xbd, 0xc3, + 0xb6, 0x95, 0x1f, 0xb6, 0xd1, 0x14, 0xa3, 0xc7, 0xaa, 0xf8, 0x1d, 0xaa, 0xa4, 0x09, 0xf8, 0xcd, + 0x92, 0x56, 0x7f, 0x44, 0x2e, 0xb2, 0x6a, 0x32, 0x63, 0xf5, 0x65, 0x02, 0xbe, 0x77, 0xc5, 0x94, + 0xaa, 0xa8, 0x17, 0xd5, 0xc2, 0x38, 0x40, 0x73, 0xa9, 0x64, 0x32, 0x4b, 0x9b, 0x65, 0x5d, 0xe2, + 0xf1, 0xe5, 0x4b, 0x68, 0x19, 0xef, 0xaa, 0x29, 0x32, 0x57, 0xbc, 0xa9, 0x91, 0xef, 0x2e, 0xa3, + 0x6b, 0xa7, 0xfc, 0xe0, 0x5b, 0xa8, 0x2a, 0x15, 0xa4, 0x67, 0x57, 0xf7, 0xe6, 0x0d, 0xb3, 0x5a, + 0xe4, 0x15, 0xb1, 0xee, 0x77, 0x1b, 0x5d, 0x3f, 0x53, 0x05, 0x3f, 0x40, 0xf3, 0x33, 0x66, 0x60, + 0xa8, 0x25, 0x6a, 0xde, 0x0d, 0x23, 0x31, 0xbf, 0x36, 0x1b, 0xa4, 0x27, 0x73, 0xf1, 0x1b, 0x54, + 0xc9, 0x52, 0x10, 0x66, 0xa8, 0xcb, 0x17, 0xeb, 0x78, 0x33, 0x05, 0xb1, 0x11, 0x6d, 0xc5, 0xd3, + 0x69, 0x2a, 0x84, 0x6a, 0x45, 0xd5, 0x11, 0x08, 0x11, 0x0b, 0x3d, 0xcc, 0x99, 0x8e, 0xd6, 0x15, + 0x48, 0x8b, 0x58, 0xf7, 0x47, 0x09, 0xd5, 0xfe, 0xaa, 0xe0, 0x45, 0x54, 0x53, 0xcc, 0x88, 0x85, + 0x60, 0xc6, 0xb0, 0x60, 0x48, 0x3a, 0x47, 0xe1, 0xf4, 0x38, 0x03, 0xdf, 0x44, 0xe5, 0x8c, 0x0f, + 0xb5, 0xf1, 0xba, 0xd7, 0x30, 0x89, 0xe5, 0xcd, 0x8d, 0x27, 0x54, 0xe1, 0xb8, 0x8b, 0xe6, 0x02, + 0x11, 0x67, 0x89, 0x5a, 0xa6, 0xfa, 0x97, 0x91, 0xda, 0xc3, 0x53, 0x8d, 0x50, 0x13, 0xc1, 0x5b, + 0xa8, 0x0a, 0xea, 0xe7, 0x6f, 0x56, 0x3a, 0xe5, 0x5e, 0x63, 0x69, 0xed, 0x72, 0xdd, 0x13, 0x7d, + 0x40, 0xeb, 0x91, 0x14, 0x3b, 0x33, 0x5d, 0x2a, 0x8c, 0x16, 0xf2, 0x2d, 0x61, 0x8e, 0x4c, 0xe7, + 0xe0, 0x05, 0x54, 0x1e, 0xc3, 0x4e, 0xd1, 0x21, 0x55, 0x9f, 0xf8, 0x39, 0xaa, 0x4e, 0xd4, 0xfd, + 0x99, 0x2d, 0xac, 0x5c, 0xcc, 0xc7, 0xf4, 0x7e, 0x69, 0x21, 0xb3, 0x5a, 0x5a, 0xb1, 0xbd, 0xde, + 0xde, 0x91, 0x63, 0xed, 0x1f, 0x39, 0xd6, 0xc1, 0x91, 0x63, 0xed, 0xe6, 0x8e, 0xbd, 0x97, 0x3b, + 0xf6, 0x7e, 0xee, 0xd8, 0x07, 0xb9, 0x63, 0xff, 0xca, 0x1d, 0xfb, 0xf3, 0x6f, 0xc7, 0x7a, 0x5b, + 0x9a, 0xf4, 0xff, 0x04, 0x00, 0x00, 0xff, 0xff, 0x01, 0xcb, 0xf3, 0xc9, 0x72, 0x05, 0x00, 0x00, } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/authentication/v1/generated.proto b/vendor/k8s.io/kubernetes/pkg/apis/authentication/v1/generated.proto index ea5203d3..6507b876 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/authentication/v1/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/apis/authentication/v1/generated.proto @@ -25,7 +25,6 @@ import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; // Package-wide variables from generator "generated". option go_package = "v1"; diff --git a/vendor/k8s.io/kubernetes/pkg/apis/authentication/v1beta1/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/apis/authentication/v1beta1/generated.pb.go index 61d03f1f..8e940b2c 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/authentication/v1beta1/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/authentication/v1beta1/generated.pb.go @@ -37,9 +37,10 @@ import proto "github.com/gogo/protobuf/proto" import fmt "fmt" import math "math" +import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + import strings "strings" import reflect "reflect" -import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" import io "io" @@ -255,10 +256,15 @@ func (m *UserInfo) MarshalTo(dAtA []byte) (int, error) { } } if len(m.Extra) > 0 { + keysForExtra := make([]string, 0, len(m.Extra)) for k := range m.Extra { + keysForExtra = append(keysForExtra, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForExtra) + for _, k := range keysForExtra { dAtA[i] = 0x22 i++ - v := m.Extra[k] + v := m.Extra[string(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -1251,47 +1257,46 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 660 bytes of a gzipped FileDescriptorProto + // 647 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x53, 0x4f, 0x6f, 0xd3, 0x4e, - 0x10, 0x8d, 0xf3, 0xa7, 0xbf, 0x64, 0xf3, 0x2b, 0x94, 0x95, 0x90, 0xa2, 0x48, 0x38, 0x51, 0xb8, - 0x14, 0x09, 0xd6, 0xa4, 0xa0, 0x52, 0xb5, 0xe2, 0x50, 0xab, 0x05, 0xf5, 0x80, 0x90, 0xb6, 0x94, - 0x03, 0x12, 0x12, 0x1b, 0x67, 0xea, 0x18, 0xc7, 0x7f, 0xb4, 0x5e, 0xa7, 0xed, 0xad, 0x1f, 0x81, - 0x23, 0x47, 0xbe, 0x0b, 0x97, 0x1e, 0x7b, 0xe0, 0xc0, 0x01, 0x55, 0x24, 0x7c, 0x11, 0xb4, 0xeb, - 0xa5, 0x76, 0x09, 0x15, 0xa2, 0xbd, 0x79, 0xdf, 0xcc, 0x7b, 0x33, 0x6f, 0xc6, 0x83, 0x36, 0xfd, - 0xb5, 0x84, 0x78, 0x91, 0xe5, 0xa7, 0x03, 0xe0, 0x21, 0x08, 0x48, 0xac, 0xd8, 0x77, 0x2d, 0x16, - 0x7b, 0x89, 0xc5, 0x52, 0x31, 0x82, 0x50, 0x78, 0x0e, 0x13, 0x5e, 0x14, 0x5a, 0x93, 0xfe, 0x00, - 0x04, 0xeb, 0x5b, 0x2e, 0x84, 0xc0, 0x99, 0x80, 0x21, 0x89, 0x79, 0x24, 0x22, 0xdc, 0xcf, 0x24, - 0x48, 0x2e, 0x41, 0x62, 0xdf, 0x25, 0x52, 0x82, 0x5c, 0x94, 0x20, 0x5a, 0xa2, 0xfd, 0xc0, 0xf5, - 0xc4, 0x28, 0x1d, 0x10, 0x27, 0x0a, 0x2c, 0x37, 0x72, 0x23, 0x4b, 0x29, 0x0d, 0xd2, 0x7d, 0xf5, - 0x52, 0x0f, 0xf5, 0x95, 0x55, 0x68, 0x3f, 0xd6, 0x4d, 0xb2, 0xd8, 0x0b, 0x98, 0x33, 0xf2, 0x42, - 0xe0, 0x47, 0x79, 0x9b, 0x01, 0x08, 0x66, 0x4d, 0xe6, 0xfa, 0x6a, 0x5b, 0x97, 0xb1, 0x78, 0x1a, - 0x0a, 0x2f, 0x80, 0x39, 0xc2, 0xea, 0xdf, 0x08, 0x89, 0x33, 0x82, 0x80, 0xcd, 0xf1, 0x1e, 0x5d, - 0xc6, 0x4b, 0x85, 0x37, 0xb6, 0xbc, 0x50, 0x24, 0x82, 0xcf, 0x91, 0x0a, 0x9e, 0x12, 0xe0, 0x13, - 0xe0, 0xb9, 0x21, 0x38, 0x64, 0x41, 0x3c, 0x86, 0x3f, 0x78, 0xea, 0x3d, 0x41, 0x68, 0xfb, 0x50, - 0x70, 0xf6, 0x9a, 0x8d, 0x53, 0xc0, 0x1d, 0x54, 0xf3, 0x04, 0x04, 0x49, 0xcb, 0xe8, 0x56, 0x96, - 0x1b, 0x76, 0x63, 0x76, 0xd6, 0xa9, 0xed, 0x48, 0x80, 0x66, 0xf8, 0x7a, 0xfd, 0xe3, 0xa7, 0x4e, - 0xe9, 0xf8, 0x5b, 0xb7, 0xd4, 0xfb, 0x5c, 0x46, 0xcd, 0x57, 0x91, 0x0f, 0x21, 0x85, 0x89, 0x07, - 0x07, 0xf8, 0x1d, 0xaa, 0xcb, 0xb9, 0x0d, 0x99, 0x60, 0x2d, 0xa3, 0x6b, 0x2c, 0x37, 0x57, 0x1e, - 0x12, 0xbd, 0xc7, 0xa2, 0x8d, 0x7c, 0x93, 0x32, 0x9b, 0x4c, 0xfa, 0xe4, 0xe5, 0xe0, 0x3d, 0x38, - 0xe2, 0x05, 0x08, 0x66, 0xe3, 0x93, 0xb3, 0x4e, 0x69, 0x76, 0xd6, 0x41, 0x39, 0x46, 0xcf, 0x55, - 0xf1, 0x10, 0x55, 0x93, 0x18, 0x9c, 0x56, 0x59, 0xa9, 0xdb, 0xe4, 0x9f, 0xff, 0x12, 0x52, 0xe8, - 0x77, 0x37, 0x06, 0xc7, 0xfe, 0x5f, 0xd7, 0xab, 0xca, 0x17, 0x55, 0xea, 0x78, 0x8c, 0x16, 0x12, - 0xc1, 0x44, 0x9a, 0xb4, 0x2a, 0xaa, 0xce, 0xd6, 0x35, 0xeb, 0x28, 0x2d, 0xfb, 0x86, 0xae, 0xb4, - 0x90, 0xbd, 0xa9, 0xae, 0xd1, 0x5b, 0x45, 0x37, 0x7f, 0x6b, 0x0a, 0xdf, 0x45, 0x35, 0x21, 0x21, - 0x35, 0xc5, 0x86, 0xbd, 0xa8, 0x99, 0xb5, 0x2c, 0x2f, 0x8b, 0xf5, 0xbe, 0x18, 0xe8, 0xd6, 0x5c, - 0x15, 0xbc, 0x81, 0x16, 0x0b, 0x1d, 0xc1, 0x50, 0x49, 0xd4, 0xed, 0xdb, 0x5a, 0x62, 0x71, 0xb3, - 0x18, 0xa4, 0x17, 0x73, 0xf1, 0x5b, 0x54, 0x4d, 0x13, 0xe0, 0x7a, 0xbc, 0x1b, 0x57, 0xb0, 0xbd, - 0x97, 0x00, 0xdf, 0x09, 0xf7, 0xa3, 0x7c, 0xae, 0x12, 0xa1, 0x4a, 0x56, 0xda, 0x02, 0xce, 0x23, - 0xae, 0xc6, 0x5a, 0xb0, 0xb5, 0x2d, 0x41, 0x9a, 0xc5, 0x7a, 0xd3, 0x32, 0xaa, 0xff, 0x52, 0xc1, - 0xf7, 0x51, 0x5d, 0x32, 0x43, 0x16, 0x80, 0x9e, 0xc5, 0x92, 0x26, 0xa9, 0x1c, 0x89, 0xd3, 0xf3, - 0x0c, 0x7c, 0x07, 0x55, 0x52, 0x6f, 0xa8, 0xba, 0x6f, 0xd8, 0x4d, 0x9d, 0x58, 0xd9, 0xdb, 0xd9, - 0xa2, 0x12, 0xc7, 0x3d, 0xb4, 0xe0, 0xf2, 0x28, 0x8d, 0xe5, 0x5a, 0xe5, 0xaf, 0x8d, 0xe4, 0x32, - 0x9e, 0x2b, 0x84, 0xea, 0x08, 0xf6, 0x51, 0x0d, 0xe4, 0x2d, 0xb4, 0xaa, 0xdd, 0xca, 0x72, 0x73, - 0xe5, 0xd9, 0x35, 0x46, 0x40, 0xd4, 0x51, 0x6d, 0x87, 0x82, 0x1f, 0x15, 0xac, 0x4a, 0x8c, 0x66, - 0x35, 0xda, 0x07, 0xfa, 0xf0, 0x54, 0x0e, 0x5e, 0x42, 0x15, 0x1f, 0x8e, 0x32, 0x9b, 0x54, 0x7e, - 0xe2, 0x5d, 0x54, 0x9b, 0xc8, 0x9b, 0xd4, 0xfb, 0x78, 0x7a, 0x85, 0x66, 0xf2, 0xc3, 0xa6, 0x99, - 0xd6, 0x7a, 0x79, 0xcd, 0xb0, 0xef, 0x9d, 0x4c, 0xcd, 0xd2, 0xe9, 0xd4, 0x2c, 0x7d, 0x9d, 0x9a, - 0xa5, 0xe3, 0x99, 0x69, 0x9c, 0xcc, 0x4c, 0xe3, 0x74, 0x66, 0x1a, 0xdf, 0x67, 0xa6, 0xf1, 0xe1, - 0x87, 0x59, 0x7a, 0xf3, 0x9f, 0x16, 0xf8, 0x19, 0x00, 0x00, 0xff, 0xff, 0xc6, 0x0a, 0xc4, 0x2e, - 0xcc, 0x05, 0x00, 0x00, + 0x10, 0xb5, 0xf3, 0xa7, 0xbf, 0x64, 0xf3, 0x2b, 0x94, 0x95, 0x90, 0xa2, 0x48, 0x38, 0x51, 0xb8, + 0xf4, 0x40, 0xd7, 0xa4, 0xa0, 0x52, 0xb5, 0xe2, 0x50, 0xab, 0x05, 0xf5, 0x80, 0x90, 0xb6, 0x94, + 0x03, 0x12, 0x12, 0x1b, 0x67, 0xea, 0x18, 0xd7, 0x7f, 0xb4, 0x5e, 0xa7, 0xf4, 0xd6, 0x8f, 0xc0, + 0x91, 0x23, 0xdf, 0x85, 0x4b, 0x8f, 0x3d, 0x70, 0xe8, 0x01, 0x45, 0xc4, 0x7c, 0x11, 0xb4, 0xeb, + 0xa5, 0x49, 0x1b, 0x55, 0x88, 0xf6, 0xe6, 0x7d, 0x33, 0xef, 0xcd, 0x9b, 0x19, 0x0f, 0xda, 0x0a, + 0xd6, 0x53, 0xe2, 0xc7, 0x76, 0x90, 0xf5, 0x81, 0x47, 0x20, 0x20, 0xb5, 0x93, 0xc0, 0xb3, 0x59, + 0xe2, 0xa7, 0x36, 0xcb, 0xc4, 0x10, 0x22, 0xe1, 0xbb, 0x4c, 0xf8, 0x71, 0x64, 0x8f, 0x7a, 0x7d, + 0x10, 0xac, 0x67, 0x7b, 0x10, 0x01, 0x67, 0x02, 0x06, 0x24, 0xe1, 0xb1, 0x88, 0x71, 0xaf, 0x90, + 0x20, 0x53, 0x09, 0x92, 0x04, 0x1e, 0x91, 0x12, 0xe4, 0xb2, 0x04, 0xd1, 0x12, 0xad, 0x15, 0xcf, + 0x17, 0xc3, 0xac, 0x4f, 0xdc, 0x38, 0xb4, 0xbd, 0xd8, 0x8b, 0x6d, 0xa5, 0xd4, 0xcf, 0x0e, 0xd4, + 0x4b, 0x3d, 0xd4, 0x57, 0x51, 0xa1, 0xf5, 0x54, 0x9b, 0x64, 0x89, 0x1f, 0x32, 0x77, 0xe8, 0x47, + 0xc0, 0x8f, 0xa7, 0x36, 0x43, 0x10, 0xcc, 0x1e, 0xcd, 0xf9, 0x6a, 0xd9, 0xd7, 0xb1, 0x78, 0x16, + 0x09, 0x3f, 0x84, 0x39, 0xc2, 0xda, 0xdf, 0x08, 0xa9, 0x3b, 0x84, 0x90, 0xcd, 0xf1, 0x9e, 0x5c, + 0xc7, 0xcb, 0x84, 0x7f, 0x68, 0xfb, 0x91, 0x48, 0x05, 0xbf, 0x4a, 0xea, 0x3e, 0x43, 0x68, 0xe7, + 0x93, 0xe0, 0xec, 0x2d, 0x3b, 0xcc, 0x00, 0xb7, 0x51, 0xd5, 0x17, 0x10, 0xa6, 0x4d, 0xb3, 0x53, + 0x5e, 0xae, 0x3b, 0xf5, 0x7c, 0xdc, 0xae, 0xee, 0x4a, 0x80, 0x16, 0xf8, 0x46, 0xed, 0xcb, 0xd7, + 0xb6, 0x71, 0xf2, 0xa3, 0x63, 0x74, 0xbf, 0x95, 0x50, 0xe3, 0x4d, 0x1c, 0x40, 0x44, 0x61, 0xe4, + 0xc3, 0x11, 0xfe, 0x80, 0x6a, 0x72, 0x02, 0x03, 0x26, 0x58, 0xd3, 0xec, 0x98, 0xcb, 0x8d, 0xd5, + 0xc7, 0x44, 0x6f, 0x64, 0xd6, 0xd0, 0x74, 0x27, 0x32, 0x9b, 0x8c, 0x7a, 0xe4, 0x75, 0xff, 0x23, + 0xb8, 0xe2, 0x15, 0x08, 0xe6, 0xe0, 0xd3, 0x71, 0xdb, 0xc8, 0xc7, 0x6d, 0x34, 0xc5, 0xe8, 0x85, + 0x2a, 0x1e, 0xa0, 0x4a, 0x9a, 0x80, 0xdb, 0x2c, 0x29, 0x75, 0x87, 0xfc, 0xf3, 0xbe, 0xc9, 0x8c, + 0xdf, 0xbd, 0x04, 0x5c, 0xe7, 0x7f, 0x5d, 0xaf, 0x22, 0x5f, 0x54, 0xa9, 0xe3, 0x43, 0xb4, 0x90, + 0x0a, 0x26, 0xb2, 0xb4, 0x59, 0x56, 0x75, 0xb6, 0x6f, 0x59, 0x47, 0x69, 0x39, 0x77, 0x74, 0xa5, + 0x85, 0xe2, 0x4d, 0x75, 0x8d, 0xee, 0x1a, 0xba, 0x7b, 0xc5, 0x14, 0x7e, 0x88, 0xaa, 0x42, 0x42, + 0x6a, 0x8a, 0x75, 0x67, 0x51, 0x33, 0xab, 0x45, 0x5e, 0x11, 0xeb, 0x7e, 0x37, 0xd1, 0xbd, 0xb9, + 0x2a, 0x78, 0x13, 0x2d, 0xce, 0x38, 0x82, 0x81, 0x92, 0xa8, 0x39, 0xf7, 0xb5, 0xc4, 0xe2, 0xd6, + 0x6c, 0x90, 0x5e, 0xce, 0xc5, 0xef, 0x51, 0x25, 0x4b, 0x81, 0xeb, 0xf1, 0x6e, 0xde, 0xa0, 0xed, + 0xfd, 0x14, 0xf8, 0x6e, 0x74, 0x10, 0x4f, 0xe7, 0x2a, 0x11, 0xaa, 0x64, 0x65, 0x5b, 0xc0, 0x79, + 0xcc, 0xd5, 0x58, 0x67, 0xda, 0xda, 0x91, 0x20, 0x2d, 0x62, 0xdd, 0x49, 0x09, 0xd5, 0xfe, 0xa8, + 0xe0, 0x47, 0xa8, 0x26, 0x99, 0x11, 0x0b, 0x41, 0xcf, 0x62, 0x49, 0x93, 0x54, 0x8e, 0xc4, 0xe9, + 0x45, 0x06, 0x7e, 0x80, 0xca, 0x99, 0x3f, 0x50, 0xee, 0xeb, 0x4e, 0x43, 0x27, 0x96, 0xf7, 0x77, + 0xb7, 0xa9, 0xc4, 0x71, 0x17, 0x2d, 0x78, 0x3c, 0xce, 0x12, 0xb9, 0x56, 0xf9, 0x6b, 0x23, 0xb9, + 0x8c, 0x97, 0x0a, 0xa1, 0x3a, 0x82, 0x03, 0x54, 0x05, 0x79, 0x0b, 0xcd, 0x4a, 0xa7, 0xbc, 0xdc, + 0x58, 0x7d, 0x71, 0x8b, 0x11, 0x10, 0x75, 0x54, 0x3b, 0x91, 0xe0, 0xc7, 0x33, 0xad, 0x4a, 0x8c, + 0x16, 0x35, 0x5a, 0x47, 0xfa, 0xf0, 0x54, 0x0e, 0x5e, 0x42, 0xe5, 0x00, 0x8e, 0x8b, 0x36, 0xa9, + 0xfc, 0xc4, 0x7b, 0xa8, 0x3a, 0x92, 0x37, 0xa9, 0xf7, 0xf1, 0xfc, 0x06, 0x66, 0xa6, 0x87, 0x4d, + 0x0b, 0xad, 0x8d, 0xd2, 0xba, 0xe9, 0xac, 0x9c, 0x4e, 0x2c, 0xe3, 0x6c, 0x62, 0x19, 0xe7, 0x13, + 0xcb, 0x38, 0xc9, 0x2d, 0xf3, 0x34, 0xb7, 0xcc, 0xb3, 0xdc, 0x32, 0xcf, 0x73, 0xcb, 0xfc, 0x99, + 0x5b, 0xe6, 0xe7, 0x5f, 0x96, 0xf1, 0xee, 0x3f, 0x2d, 0xf2, 0x3b, 0x00, 0x00, 0xff, 0xff, 0x35, + 0x3c, 0x74, 0xb0, 0x9a, 0x05, 0x00, 0x00, } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/authentication/v1beta1/generated.proto b/vendor/k8s.io/kubernetes/pkg/apis/authentication/v1beta1/generated.proto index e0d3f0dd..6ae022f7 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/authentication/v1beta1/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/apis/authentication/v1beta1/generated.proto @@ -25,7 +25,6 @@ import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; // Package-wide variables from generator "generated". option go_package = "v1beta1"; diff --git a/vendor/k8s.io/kubernetes/pkg/apis/authorization/v1/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/apis/authorization/v1/generated.pb.go index 22d655ac..3626a516 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/authorization/v1/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/authorization/v1/generated.pb.go @@ -41,9 +41,10 @@ import proto "github.com/gogo/protobuf/proto" import fmt "fmt" import math "math" +import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + import strings "strings" import reflect "reflect" -import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" import io "io" @@ -435,10 +436,15 @@ func (m *SubjectAccessReviewSpec) MarshalTo(dAtA []byte) (int, error) { } } if len(m.Extra) > 0 { + keysForExtra := make([]string, 0, len(m.Extra)) for k := range m.Extra { + keysForExtra = append(keysForExtra, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForExtra) + for _, k := range keysForExtra { dAtA[i] = 0x2a i++ - v := m.Extra[k] + v := m.Extra[string(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -2298,62 +2304,61 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 898 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x56, 0x4f, 0x6f, 0x1b, 0x45, - 0x14, 0xf7, 0xfa, 0x5f, 0xec, 0x09, 0x90, 0x32, 0x55, 0xc9, 0x36, 0x48, 0xb6, 0x65, 0x10, 0x0a, - 0x02, 0x76, 0x49, 0xf9, 0xd3, 0xaa, 0x1c, 0x50, 0x56, 0x84, 0x3f, 0x12, 0x6d, 0xd1, 0x44, 0xe4, - 0x00, 0x17, 0xc6, 0x9b, 0x17, 0x7b, 0x6b, 0xef, 0xce, 0x32, 0x33, 0xbb, 0x6d, 0x38, 0xf5, 0xc6, - 0x15, 0x89, 0x0b, 0x47, 0xbe, 0x02, 0x1f, 0x00, 0xce, 0xb9, 0xd1, 0x03, 0x12, 0x1c, 0x90, 0x45, - 0x96, 0x0b, 0x1f, 0x03, 0xcd, 0xec, 0xc4, 0x6b, 0xe3, 0x0d, 0x95, 0xa1, 0x12, 0x1c, 0x72, 0xdb, - 0x79, 0xef, 0xf7, 0x7b, 0xef, 0xf7, 0x66, 0xde, 0xec, 0x1b, 0xf4, 0xd6, 0xf8, 0x86, 0x70, 0x02, - 0xe6, 0x8e, 0x93, 0x01, 0xf0, 0x08, 0x24, 0x08, 0x37, 0x1e, 0x0f, 0x5d, 0x1a, 0x07, 0xc2, 0xa5, - 0x89, 0x1c, 0x31, 0x1e, 0x7c, 0x41, 0x65, 0xc0, 0x22, 0x37, 0xdd, 0x71, 0x87, 0x10, 0x01, 0xa7, - 0x12, 0x0e, 0x9d, 0x98, 0x33, 0xc9, 0xf0, 0x4b, 0x39, 0xd9, 0x29, 0xc8, 0x4e, 0x3c, 0x1e, 0x3a, - 0x8a, 0xec, 0x2c, 0x90, 0x9d, 0x74, 0x67, 0xeb, 0x95, 0x61, 0x20, 0x47, 0xc9, 0xc0, 0xf1, 0x59, - 0xe8, 0x0e, 0xd9, 0x90, 0xb9, 0x3a, 0xc6, 0x20, 0x39, 0xd2, 0x2b, 0xbd, 0xd0, 0x5f, 0x79, 0xec, - 0xad, 0xd7, 0x8d, 0x30, 0x1a, 0x07, 0x21, 0xf5, 0x47, 0x41, 0x04, 0xfc, 0xb8, 0x90, 0x16, 0x82, - 0xa4, 0x25, 0x8a, 0xb6, 0xdc, 0xf3, 0x58, 0x3c, 0x89, 0x64, 0x10, 0xc2, 0x12, 0xe1, 0xcd, 0x47, - 0x11, 0x84, 0x3f, 0x82, 0x90, 0x2e, 0xf1, 0x5e, 0x3b, 0x8f, 0x97, 0xc8, 0x60, 0xe2, 0x06, 0x91, - 0x14, 0x92, 0x2f, 0x91, 0xe6, 0x6a, 0x12, 0xc0, 0x53, 0xe0, 0x45, 0x41, 0x70, 0x9f, 0x86, 0xf1, - 0x04, 0x4a, 0x6a, 0xea, 0x5f, 0x47, 0x68, 0xef, 0xbe, 0xe4, 0xf4, 0x80, 0x4e, 0x12, 0xc0, 0x5d, - 0xd4, 0x08, 0x24, 0x84, 0xc2, 0xb6, 0x7a, 0xb5, 0xed, 0xb6, 0xd7, 0xce, 0xa6, 0xdd, 0xc6, 0x07, - 0xca, 0x40, 0x72, 0xfb, 0xcd, 0xd6, 0x37, 0xdf, 0x76, 0x2b, 0x0f, 0x7e, 0xed, 0x55, 0xfa, 0x3f, - 0x55, 0x91, 0xfd, 0x21, 0xf3, 0xe9, 0x64, 0x3f, 0x19, 0xdc, 0x05, 0x5f, 0xee, 0xfa, 0x3e, 0x08, - 0x41, 0x20, 0x0d, 0xe0, 0x1e, 0xfe, 0x0c, 0xb5, 0xd4, 0x26, 0x1e, 0x52, 0x49, 0x6d, 0xab, 0x67, - 0x6d, 0xaf, 0x5f, 0x7b, 0xd5, 0x31, 0xc7, 0x39, 0x5f, 0x53, 0x71, 0xa0, 0x0a, 0xed, 0xa4, 0x3b, - 0xce, 0x1d, 0x1d, 0xeb, 0x16, 0x48, 0xea, 0xe1, 0x93, 0x69, 0xb7, 0x92, 0x4d, 0xbb, 0xa8, 0xb0, - 0x91, 0x59, 0x54, 0x7c, 0x84, 0xea, 0x22, 0x06, 0xdf, 0xae, 0xea, 0xe8, 0xef, 0x38, 0x2b, 0x34, - 0x8b, 0x53, 0xa2, 0x78, 0x3f, 0x06, 0xdf, 0x7b, 0xc2, 0x64, 0xac, 0xab, 0x15, 0xd1, 0xf1, 0x71, - 0x84, 0x9a, 0x42, 0x52, 0x99, 0x08, 0xbb, 0xa6, 0x33, 0xbd, 0xfb, 0xaf, 0x33, 0xe9, 0x68, 0xde, - 0x53, 0x26, 0x57, 0x33, 0x5f, 0x13, 0x93, 0xa5, 0xff, 0x29, 0xba, 0x72, 0x9b, 0x45, 0x04, 0x04, - 0x4b, 0xb8, 0x0f, 0xbb, 0x52, 0xf2, 0x60, 0x90, 0x48, 0x10, 0xb8, 0x87, 0xea, 0x31, 0x95, 0x23, - 0xbd, 0x9d, 0xed, 0x42, 0xea, 0x47, 0x54, 0x8e, 0x88, 0xf6, 0x28, 0x44, 0x0a, 0x7c, 0xa0, 0xb7, - 0x64, 0x0e, 0x71, 0x00, 0x7c, 0x40, 0xb4, 0xa7, 0xff, 0x43, 0x15, 0xe1, 0x92, 0xd0, 0x2e, 0x6a, - 0x47, 0x34, 0x04, 0x11, 0x53, 0x1f, 0x4c, 0xfc, 0xa7, 0x0d, 0xbb, 0x7d, 0xfb, 0xcc, 0x41, 0x0a, - 0xcc, 0xa3, 0x33, 0xe1, 0xe7, 0x50, 0x63, 0xc8, 0x59, 0x12, 0xeb, 0x5d, 0x6b, 0x7b, 0x4f, 0x1a, - 0x48, 0xe3, 0x3d, 0x65, 0x24, 0xb9, 0x0f, 0xbf, 0x88, 0xd6, 0x52, 0xe0, 0x22, 0x60, 0x91, 0x5d, - 0xd7, 0xb0, 0x0d, 0x03, 0x5b, 0x3b, 0xc8, 0xcd, 0xe4, 0xcc, 0x8f, 0x5f, 0x46, 0x2d, 0x6e, 0x84, - 0xdb, 0x0d, 0x8d, 0xbd, 0x64, 0xb0, 0xad, 0xb3, 0x82, 0xc8, 0x0c, 0x81, 0xdf, 0x40, 0xeb, 0x22, - 0x19, 0xcc, 0x08, 0x4d, 0x4d, 0xb8, 0x6c, 0x08, 0xeb, 0xfb, 0x85, 0x8b, 0xcc, 0xe3, 0x54, 0x59, - 0xaa, 0x46, 0x7b, 0x6d, 0xb1, 0x2c, 0xb5, 0x05, 0x44, 0x7b, 0xfa, 0x3f, 0x57, 0xd1, 0xe6, 0x3e, - 0x4c, 0x8e, 0xfe, 0x9b, 0x9e, 0xbf, 0xbb, 0xd0, 0xf3, 0xef, 0xaf, 0xd6, 0x89, 0xe5, 0xaa, 0xff, - 0x37, 0x7d, 0xff, 0x7d, 0x15, 0x3d, 0xfb, 0x37, 0x1a, 0xf1, 0x97, 0x16, 0xc2, 0x7c, 0xa9, 0x75, - 0xcd, 0x46, 0xbf, 0xbd, 0x92, 0xb8, 0xe5, 0x1b, 0xe0, 0x3d, 0x93, 0x4d, 0xbb, 0x25, 0x37, 0x83, - 0x94, 0xa4, 0xc4, 0x5f, 0x5b, 0xe8, 0x4a, 0x54, 0x76, 0x45, 0xcd, 0xb9, 0x78, 0x2b, 0x89, 0x29, - 0xbd, 0xec, 0xde, 0xd5, 0x6c, 0xda, 0x2d, 0xff, 0x0f, 0x90, 0xf2, 0xdc, 0xfd, 0x1f, 0xab, 0xe8, - 0xf2, 0xc5, 0x9f, 0xf8, 0x71, 0x76, 0xe4, 0x1f, 0x75, 0xb4, 0x79, 0xd1, 0x8d, 0xff, 0xa8, 0x1b, - 0x67, 0x03, 0xa2, 0xb6, 0xf8, 0x27, 0xfd, 0x58, 0x00, 0x37, 0x03, 0xa2, 0x8f, 0x9a, 0x7a, 0x08, - 0x08, 0xbb, 0xae, 0x9f, 0x1a, 0x48, 0x9d, 0x80, 0x9e, 0x0e, 0x82, 0x18, 0x0f, 0x96, 0xa8, 0x01, - 0xea, 0x6d, 0x62, 0x37, 0x7a, 0xb5, 0xed, 0xf5, 0x6b, 0x77, 0x1e, 0x47, 0x6b, 0x39, 0xfa, 0xb5, - 0xb3, 0x17, 0x49, 0x7e, 0x5c, 0x4c, 0x25, 0x6d, 0x23, 0x79, 0xb2, 0xad, 0xcf, 0xcd, 0x8b, 0x48, - 0x63, 0xf0, 0x25, 0x54, 0x1b, 0xc3, 0x71, 0x3e, 0x15, 0x89, 0xfa, 0xc4, 0xb7, 0x50, 0x23, 0x55, - 0x8f, 0x25, 0xb3, 0xc1, 0xd7, 0x57, 0x52, 0x55, 0xbc, 0xb5, 0x48, 0x1e, 0xe5, 0x66, 0xf5, 0x86, - 0xd5, 0xff, 0xce, 0x42, 0x57, 0xcf, 0x6d, 0x50, 0x35, 0x26, 0xe9, 0x64, 0xc2, 0xee, 0xc1, 0xa1, - 0x96, 0xd1, 0x2a, 0xc6, 0xe4, 0x6e, 0x6e, 0x26, 0x67, 0x7e, 0xfc, 0x02, 0x6a, 0x72, 0xa0, 0x82, - 0x45, 0x66, 0x34, 0xcf, 0x7a, 0x9b, 0x68, 0x2b, 0x31, 0x5e, 0xbc, 0x8b, 0x36, 0x40, 0xa5, 0xd7, - 0xba, 0xf6, 0x38, 0x67, 0xdc, 0x1c, 0xd5, 0xa6, 0x21, 0x6c, 0xec, 0x2d, 0xba, 0xc9, 0x5f, 0xf1, - 0xde, 0xf3, 0x27, 0xa7, 0x9d, 0xca, 0xc3, 0xd3, 0x4e, 0xe5, 0x97, 0xd3, 0x4e, 0xe5, 0x41, 0xd6, - 0xb1, 0x4e, 0xb2, 0x8e, 0xf5, 0x30, 0xeb, 0x58, 0xbf, 0x65, 0x1d, 0xeb, 0xab, 0xdf, 0x3b, 0x95, - 0x4f, 0xaa, 0xe9, 0xce, 0x9f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x43, 0x53, 0x67, 0x22, 0x02, 0x0c, - 0x00, 0x00, + // 885 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x56, 0x4f, 0x6f, 0xdc, 0x44, + 0x14, 0x5f, 0xef, 0xbf, 0xec, 0x4e, 0x80, 0x94, 0xa9, 0x4a, 0xdc, 0x20, 0x79, 0x57, 0x8b, 0x84, + 0x82, 0x00, 0x9b, 0x94, 0x3f, 0xad, 0xca, 0x01, 0xc5, 0x22, 0xfc, 0x91, 0x68, 0x8b, 0x26, 0x22, + 0x07, 0xb8, 0x30, 0x76, 0x5e, 0x76, 0xdd, 0xdd, 0xf5, 0x98, 0x99, 0xb1, 0x4b, 0x38, 0xf5, 0xc6, + 0x15, 0x89, 0x0b, 0x47, 0xbe, 0x02, 0x1f, 0x00, 0xce, 0xb9, 0xd1, 0x03, 0x12, 0x3d, 0xa0, 0x15, + 0x31, 0x17, 0x3e, 0x06, 0x9a, 0xf1, 0x64, 0x9d, 0x6d, 0x1c, 0xaa, 0x85, 0x4a, 0x70, 0xc8, 0xcd, + 0xf3, 0xde, 0xef, 0xf7, 0xde, 0x6f, 0xde, 0xbc, 0xf1, 0x1b, 0xf4, 0xf6, 0xf8, 0x86, 0x70, 0x23, + 0xe6, 0x8d, 0xd3, 0x00, 0x78, 0x0c, 0x12, 0x84, 0x97, 0x8c, 0x87, 0x1e, 0x4d, 0x22, 0xe1, 0xd1, + 0x54, 0x8e, 0x18, 0x8f, 0xbe, 0xa2, 0x32, 0x62, 0xb1, 0x97, 0x6d, 0x79, 0x43, 0x88, 0x81, 0x53, + 0x09, 0xfb, 0x6e, 0xc2, 0x99, 0x64, 0xf8, 0xe5, 0x82, 0xec, 0x96, 0x64, 0x37, 0x19, 0x0f, 0x5d, + 0x45, 0x76, 0x17, 0xc8, 0x6e, 0xb6, 0xb5, 0xf1, 0xea, 0x30, 0x92, 0xa3, 0x34, 0x70, 0x43, 0x36, + 0xf5, 0x86, 0x6c, 0xc8, 0x3c, 0x1d, 0x23, 0x48, 0x0f, 0xf4, 0x4a, 0x2f, 0xf4, 0x57, 0x11, 0x7b, + 0xe3, 0x0d, 0x23, 0x8c, 0x26, 0xd1, 0x94, 0x86, 0xa3, 0x28, 0x06, 0x7e, 0x58, 0x4a, 0x9b, 0x82, + 0xa4, 0x15, 0x8a, 0x36, 0xbc, 0xf3, 0x58, 0x3c, 0x8d, 0x65, 0x34, 0x85, 0x33, 0x84, 0xb7, 0x1e, + 0x47, 0x10, 0xe1, 0x08, 0xa6, 0xf4, 0x0c, 0xef, 0xf5, 0xf3, 0x78, 0xa9, 0x8c, 0x26, 0x5e, 0x14, + 0x4b, 0x21, 0xf9, 0xa3, 0xa4, 0xc1, 0x75, 0x84, 0x76, 0xbe, 0x94, 0x9c, 0xee, 0xd1, 0x49, 0x0a, + 0xb8, 0x87, 0x5a, 0x91, 0x84, 0xa9, 0xb0, 0xad, 0x7e, 0x63, 0xb3, 0xeb, 0x77, 0xf3, 0x59, 0xaf, + 0xf5, 0xa1, 0x32, 0x90, 0xc2, 0x7e, 0xb3, 0xf3, 0xdd, 0xf7, 0xbd, 0xda, 0xfd, 0xdf, 0xfa, 0xb5, + 0xc1, 0x2f, 0x75, 0x64, 0x7f, 0xc4, 0x42, 0x3a, 0xd9, 0x4d, 0x83, 0xbb, 0x10, 0xca, 0xed, 0x30, + 0x04, 0x21, 0x08, 0x64, 0x11, 0xdc, 0xc3, 0x9f, 0xa3, 0x8e, 0x2a, 0xc7, 0x3e, 0x95, 0xd4, 0xb6, + 0xfa, 0xd6, 0xe6, 0xea, 0xb5, 0xd7, 0x5c, 0x73, 0x30, 0xa7, 0xd5, 0x95, 0x47, 0xa3, 0xd0, 0x6e, + 0xb6, 0xe5, 0xde, 0xd1, 0xb1, 0x6e, 0x81, 0xa4, 0x3e, 0x3e, 0x9a, 0xf5, 0x6a, 0xf9, 0xac, 0x87, + 0x4a, 0x1b, 0x99, 0x47, 0xc5, 0x07, 0xa8, 0x29, 0x12, 0x08, 0xed, 0xba, 0x8e, 0xfe, 0xae, 0xbb, + 0xc4, 0xb1, 0xbb, 0x15, 0x8a, 0x77, 0x13, 0x08, 0xfd, 0xa7, 0x4c, 0xc6, 0xa6, 0x5a, 0x11, 0x1d, + 0x1f, 0xc7, 0xa8, 0x2d, 0x24, 0x95, 0xa9, 0xb0, 0x1b, 0x3a, 0xd3, 0x7b, 0xff, 0x3a, 0x93, 0x8e, + 0xe6, 0x3f, 0x63, 0x72, 0xb5, 0x8b, 0x35, 0x31, 0x59, 0x06, 0x9f, 0xa1, 0x2b, 0xb7, 0x59, 0x4c, + 0x40, 0xb0, 0x94, 0x87, 0xb0, 0x2d, 0x25, 0x8f, 0x82, 0x54, 0x82, 0xc0, 0x7d, 0xd4, 0x4c, 0xa8, + 0x1c, 0xe9, 0x72, 0x76, 0x4b, 0xa9, 0x1f, 0x53, 0x39, 0x22, 0xda, 0xa3, 0x10, 0x19, 0xf0, 0x40, + 0x97, 0xe4, 0x14, 0x62, 0x0f, 0x78, 0x40, 0xb4, 0x67, 0xf0, 0x53, 0x1d, 0xe1, 0x8a, 0xd0, 0x1e, + 0xea, 0xc6, 0x74, 0x0a, 0x22, 0xa1, 0x21, 0x98, 0xf8, 0xcf, 0x1a, 0x76, 0xf7, 0xf6, 0x89, 0x83, + 0x94, 0x98, 0xc7, 0x67, 0xc2, 0x2f, 0xa0, 0xd6, 0x90, 0xb3, 0x34, 0xd1, 0x55, 0xeb, 0xfa, 0x4f, + 0x1b, 0x48, 0xeb, 0x7d, 0x65, 0x24, 0x85, 0x0f, 0xbf, 0x84, 0x56, 0x32, 0xe0, 0x22, 0x62, 0xb1, + 0xdd, 0xd4, 0xb0, 0x35, 0x03, 0x5b, 0xd9, 0x2b, 0xcc, 0xe4, 0xc4, 0x8f, 0x5f, 0x41, 0x1d, 0x6e, + 0x84, 0xdb, 0x2d, 0x8d, 0xbd, 0x64, 0xb0, 0x9d, 0x93, 0x0d, 0x91, 0x39, 0x02, 0xbf, 0x89, 0x56, + 0x45, 0x1a, 0xcc, 0x09, 0x6d, 0x4d, 0xb8, 0x6c, 0x08, 0xab, 0xbb, 0xa5, 0x8b, 0x9c, 0xc6, 0xa9, + 0x6d, 0xa9, 0x3d, 0xda, 0x2b, 0x8b, 0xdb, 0x52, 0x25, 0x20, 0xda, 0x33, 0xf8, 0xb5, 0x8e, 0xd6, + 0x77, 0x61, 0x72, 0xf0, 0xdf, 0xf4, 0xfc, 0xdd, 0x85, 0x9e, 0xff, 0x60, 0xb9, 0x4e, 0xac, 0x56, + 0xfd, 0xbf, 0xe9, 0xfb, 0x1f, 0xeb, 0xe8, 0xf9, 0xbf, 0xd1, 0x88, 0xbf, 0xb6, 0x10, 0xe6, 0x67, + 0x5a, 0xd7, 0x14, 0xfa, 0x9d, 0xa5, 0xc4, 0x9d, 0xbd, 0x01, 0xfe, 0x73, 0xf9, 0xac, 0x57, 0x71, + 0x33, 0x48, 0x45, 0x4a, 0xfc, 0xad, 0x85, 0xae, 0xc4, 0x55, 0x57, 0xd4, 0x9c, 0x8b, 0xbf, 0x94, + 0x98, 0xca, 0xcb, 0xee, 0x5f, 0xcd, 0x67, 0xbd, 0xea, 0xff, 0x00, 0xa9, 0xce, 0x3d, 0xf8, 0xb9, + 0x8e, 0x2e, 0x5f, 0xfc, 0x89, 0x9f, 0x64, 0x47, 0xfe, 0xd9, 0x44, 0xeb, 0x17, 0xdd, 0xf8, 0x8f, + 0xba, 0x71, 0x3e, 0x20, 0x1a, 0x8b, 0x7f, 0xd2, 0x4f, 0x04, 0x70, 0x33, 0x20, 0x06, 0xa8, 0xad, + 0x87, 0x80, 0xb0, 0x9b, 0xfa, 0xa9, 0x81, 0xd4, 0x09, 0xe8, 0xe9, 0x20, 0x88, 0xf1, 0x60, 0x89, + 0x5a, 0xa0, 0xde, 0x26, 0x76, 0xab, 0xdf, 0xd8, 0x5c, 0xbd, 0x76, 0xe7, 0x49, 0xb4, 0x96, 0xab, + 0x5f, 0x3b, 0x3b, 0xb1, 0xe4, 0x87, 0xe5, 0x54, 0xd2, 0x36, 0x52, 0x24, 0xdb, 0xf8, 0xc2, 0xbc, + 0x88, 0x34, 0x06, 0x5f, 0x42, 0x8d, 0x31, 0x1c, 0x16, 0x53, 0x91, 0xa8, 0x4f, 0x7c, 0x0b, 0xb5, + 0x32, 0xf5, 0x58, 0x32, 0x05, 0xbe, 0xbe, 0x94, 0xaa, 0xf2, 0xad, 0x45, 0x8a, 0x28, 0x37, 0xeb, + 0x37, 0xac, 0xc1, 0x0f, 0x16, 0xba, 0x7a, 0x6e, 0x83, 0xaa, 0x31, 0x49, 0x27, 0x13, 0x76, 0x0f, + 0xf6, 0xb5, 0x8c, 0x4e, 0x39, 0x26, 0xb7, 0x0b, 0x33, 0x39, 0xf1, 0xe3, 0x17, 0x51, 0x9b, 0x03, + 0x15, 0x2c, 0x36, 0xa3, 0x79, 0xde, 0xdb, 0x44, 0x5b, 0x89, 0xf1, 0xe2, 0x6d, 0xb4, 0x06, 0x2a, + 0xbd, 0xd6, 0xb5, 0xc3, 0x39, 0xe3, 0xe6, 0xa8, 0xd6, 0x0d, 0x61, 0x6d, 0x67, 0xd1, 0x4d, 0x1e, + 0xc5, 0xfb, 0x9b, 0x47, 0xc7, 0x4e, 0xed, 0xc1, 0xb1, 0x53, 0x7b, 0x78, 0xec, 0xd4, 0xee, 0xe7, + 0x8e, 0x75, 0x94, 0x3b, 0xd6, 0x83, 0xdc, 0xb1, 0x1e, 0xe6, 0x8e, 0xf5, 0x7b, 0xee, 0x58, 0xdf, + 0xfc, 0xe1, 0xd4, 0x3e, 0xad, 0x67, 0x5b, 0x7f, 0x05, 0x00, 0x00, 0xff, 0xff, 0x38, 0xb6, 0x9a, + 0xe3, 0xd0, 0x0b, 0x00, 0x00, } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/authorization/v1/generated.proto b/vendor/k8s.io/kubernetes/pkg/apis/authorization/v1/generated.proto index 334e6a37..7a8fdb6a 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/authorization/v1/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/apis/authorization/v1/generated.proto @@ -25,7 +25,6 @@ import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; // Package-wide variables from generator "generated". option go_package = "v1"; diff --git a/vendor/k8s.io/kubernetes/pkg/apis/authorization/v1beta1/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/apis/authorization/v1beta1/generated.pb.go index 48908e69..dc4bb117 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/authorization/v1beta1/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/authorization/v1beta1/generated.pb.go @@ -41,9 +41,10 @@ import proto "github.com/gogo/protobuf/proto" import fmt "fmt" import math "math" +import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + import strings "strings" import reflect "reflect" -import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" import io "io" @@ -435,10 +436,15 @@ func (m *SubjectAccessReviewSpec) MarshalTo(dAtA []byte) (int, error) { } } if len(m.Extra) > 0 { + keysForExtra := make([]string, 0, len(m.Extra)) for k := range m.Extra { + keysForExtra = append(keysForExtra, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForExtra) + for _, k := range keysForExtra { dAtA[i] = 0x2a i++ - v := m.Extra[k] + v := m.Extra[string(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -2298,62 +2304,61 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 898 bytes of a gzipped FileDescriptorProto + // 886 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x56, 0x4f, 0x6f, 0xdc, 0x44, - 0x14, 0x5f, 0xef, 0x9f, 0x64, 0x77, 0x02, 0xa4, 0x4c, 0x55, 0xe2, 0x06, 0x69, 0x77, 0xb5, 0x48, - 0x28, 0x95, 0xc0, 0x6e, 0xca, 0xbf, 0xaa, 0xe2, 0x40, 0x2c, 0xa2, 0xaa, 0x82, 0x16, 0x34, 0x81, - 0x1c, 0xe0, 0xc2, 0xd8, 0x79, 0xdd, 0x35, 0xbb, 0xf6, 0x58, 0x33, 0x63, 0xb7, 0xe1, 0xd4, 0x0f, - 0xc0, 0x81, 0x63, 0x8f, 0x7c, 0x05, 0xbe, 0x00, 0x57, 0x72, 0xec, 0x11, 0x24, 0xb4, 0x22, 0xe6, - 0x5b, 0x70, 0x42, 0x33, 0x9e, 0x5d, 0x67, 0x59, 0x87, 0x6a, 0xa1, 0x88, 0x1e, 0x72, 0xb3, 0xdf, - 0xfb, 0xbd, 0xdf, 0xfb, 0xbd, 0x99, 0x37, 0xf3, 0x06, 0x7d, 0x30, 0xbe, 0x29, 0x9c, 0x90, 0xb9, - 0xe3, 0xd4, 0x07, 0x1e, 0x83, 0x04, 0xe1, 0x26, 0xe3, 0xa1, 0x4b, 0x93, 0x50, 0xb8, 0x34, 0x95, - 0x23, 0xc6, 0xc3, 0x6f, 0xa8, 0x0c, 0x59, 0xec, 0x66, 0xbb, 0x3e, 0x48, 0xba, 0xeb, 0x0e, 0x21, - 0x06, 0x4e, 0x25, 0x1c, 0x39, 0x09, 0x67, 0x92, 0xe1, 0xeb, 0x05, 0x83, 0x53, 0x32, 0x38, 0xc9, - 0x78, 0xe8, 0x28, 0x06, 0x67, 0x81, 0xc1, 0x31, 0x0c, 0xdb, 0x6f, 0x0e, 0x43, 0x39, 0x4a, 0x7d, - 0x27, 0x60, 0x91, 0x3b, 0x64, 0x43, 0xe6, 0x6a, 0x22, 0x3f, 0xbd, 0xaf, 0xff, 0xf4, 0x8f, 0xfe, - 0x2a, 0x12, 0x6c, 0xbf, 0x6d, 0x24, 0xd2, 0x24, 0x8c, 0x68, 0x30, 0x0a, 0x63, 0xe0, 0xc7, 0xa5, - 0xc8, 0x08, 0x24, 0x75, 0xb3, 0x25, 0x59, 0xdb, 0xee, 0x79, 0x51, 0x3c, 0x8d, 0x65, 0x18, 0xc1, - 0x52, 0xc0, 0xbb, 0x4f, 0x0b, 0x10, 0xc1, 0x08, 0x22, 0xba, 0x14, 0xf7, 0xd6, 0x79, 0x71, 0xa9, - 0x0c, 0x27, 0x6e, 0x18, 0x4b, 0x21, 0xf9, 0x52, 0xd0, 0x99, 0x9a, 0x04, 0xf0, 0x0c, 0x78, 0x59, - 0x10, 0x3c, 0xa4, 0x51, 0x32, 0x81, 0x8a, 0x9a, 0x06, 0xef, 0x21, 0xb4, 0xff, 0x50, 0x72, 0x7a, - 0x48, 0x27, 0x29, 0xe0, 0x1e, 0x6a, 0x85, 0x12, 0x22, 0x61, 0x5b, 0xfd, 0xc6, 0x4e, 0xc7, 0xeb, - 0xe4, 0xd3, 0x5e, 0xeb, 0x8e, 0x32, 0x90, 0xc2, 0x7e, 0xab, 0xfd, 0xf8, 0xfb, 0x5e, 0xed, 0xd1, - 0xaf, 0xfd, 0xda, 0x60, 0x5a, 0x47, 0xf6, 0xc7, 0x2c, 0xa0, 0x93, 0x83, 0xd4, 0xff, 0x1a, 0x02, - 0xb9, 0x17, 0x04, 0x20, 0x04, 0x81, 0x2c, 0x84, 0x07, 0xf8, 0x2b, 0xd4, 0x56, 0x8b, 0x78, 0x44, - 0x25, 0xb5, 0xad, 0xbe, 0xb5, 0xb3, 0x71, 0xe3, 0xba, 0x63, 0xf6, 0xf4, 0x6c, 0x4d, 0xe5, 0xae, - 0x2a, 0xb4, 0x93, 0xed, 0x3a, 0x9f, 0x68, 0xae, 0xbb, 0x20, 0xa9, 0x87, 0x4f, 0xa6, 0xbd, 0x5a, - 0x3e, 0xed, 0xa1, 0xd2, 0x46, 0xe6, 0xac, 0x78, 0x8c, 0x9a, 0x22, 0x81, 0xc0, 0xae, 0x6b, 0xf6, - 0x3b, 0xce, 0xaa, 0x1d, 0xe3, 0x54, 0xc8, 0x3e, 0x48, 0x20, 0xf0, 0x5e, 0x30, 0x69, 0x9b, 0xea, - 0x8f, 0xe8, 0x24, 0x58, 0xa0, 0x35, 0x21, 0xa9, 0x4c, 0x85, 0xdd, 0xd0, 0xe9, 0x3e, 0x7a, 0x36, - 0xe9, 0x34, 0xa5, 0xf7, 0x92, 0x49, 0xb8, 0x56, 0xfc, 0x13, 0x93, 0x6a, 0xf0, 0x25, 0xba, 0x72, - 0x8f, 0xc5, 0x04, 0x04, 0x4b, 0x79, 0x00, 0x7b, 0x52, 0xf2, 0xd0, 0x4f, 0x25, 0x08, 0xdc, 0x47, - 0xcd, 0x84, 0xca, 0x91, 0x5e, 0xd8, 0x4e, 0xa9, 0xf7, 0x53, 0x2a, 0x47, 0x44, 0x7b, 0x14, 0x22, - 0x03, 0xee, 0xeb, 0xc5, 0x39, 0x83, 0x38, 0x04, 0xee, 0x13, 0xed, 0x19, 0xfc, 0x58, 0x47, 0xb8, - 0x82, 0xda, 0x45, 0x9d, 0x98, 0x46, 0x20, 0x12, 0x1a, 0x80, 0xe1, 0x7f, 0xd9, 0x44, 0x77, 0xee, - 0xcd, 0x1c, 0xa4, 0xc4, 0x3c, 0x3d, 0x13, 0x7e, 0x0d, 0xb5, 0x86, 0x9c, 0xa5, 0x89, 0x5e, 0xba, - 0x8e, 0xf7, 0xa2, 0x81, 0xb4, 0x6e, 0x2b, 0x23, 0x29, 0x7c, 0xf8, 0x1a, 0x5a, 0xcf, 0x80, 0x8b, - 0x90, 0xc5, 0x76, 0x53, 0xc3, 0x36, 0x0d, 0x6c, 0xfd, 0xb0, 0x30, 0x93, 0x99, 0x1f, 0xbf, 0x81, - 0xda, 0xdc, 0x08, 0xb7, 0x5b, 0x1a, 0x7b, 0xc9, 0x60, 0xdb, 0xb3, 0x82, 0xc8, 0x1c, 0x81, 0xdf, - 0x41, 0x1b, 0x22, 0xf5, 0xe7, 0x01, 0x6b, 0x3a, 0xe0, 0xb2, 0x09, 0xd8, 0x38, 0x28, 0x5d, 0xe4, - 0x2c, 0x4e, 0x95, 0xa5, 0x6a, 0xb4, 0xd7, 0x17, 0xcb, 0x52, 0x4b, 0x40, 0xb4, 0x67, 0x70, 0x5a, - 0x47, 0x5b, 0x07, 0x30, 0xb9, 0xff, 0xff, 0x74, 0x3f, 0x5b, 0xe8, 0xfe, 0xbb, 0xff, 0xa0, 0x1d, - 0xab, 0xa5, 0x3f, 0x5f, 0x27, 0xe0, 0xa7, 0x3a, 0x7a, 0xf5, 0x6f, 0x84, 0xe2, 0x6f, 0x2d, 0x84, - 0xf9, 0x52, 0x13, 0x9b, 0x25, 0xff, 0x70, 0x75, 0x85, 0xcb, 0x07, 0xc2, 0x7b, 0x25, 0x9f, 0xf6, - 0x2a, 0x0e, 0x0a, 0xa9, 0xc8, 0x8b, 0x1f, 0x5b, 0xe8, 0x4a, 0x5c, 0x75, 0x62, 0xcd, 0x36, 0xdd, - 0x5e, 0x5d, 0x51, 0xe5, 0x05, 0xe0, 0x5d, 0xcd, 0xa7, 0xbd, 0xea, 0xbb, 0x81, 0x54, 0x0b, 0x18, - 0xfc, 0x52, 0x47, 0x97, 0x2f, 0xee, 0xe9, 0xff, 0xa6, 0x4b, 0xff, 0x68, 0xa2, 0xad, 0x8b, 0x0e, - 0xfd, 0x97, 0x1d, 0x3a, 0x1f, 0x24, 0x8d, 0xc5, 0x1b, 0xf7, 0x73, 0x01, 0xdc, 0x0c, 0x92, 0xfe, - 0x6c, 0x90, 0x34, 0xf5, 0xdb, 0x04, 0xa9, 0xad, 0xd0, 0x43, 0x44, 0xcc, 0xa6, 0xc8, 0x31, 0x6a, - 0x81, 0x7a, 0xcb, 0xd8, 0xad, 0x7e, 0x63, 0x67, 0xe3, 0xc6, 0x67, 0xcf, 0xac, 0xd9, 0x1c, 0xfd, - 0x44, 0xda, 0x8f, 0x25, 0x3f, 0x2e, 0x07, 0x98, 0xb6, 0x91, 0x22, 0xe3, 0x76, 0x66, 0x9e, 0x51, - 0x1a, 0x83, 0x2f, 0xa1, 0xc6, 0x18, 0x8e, 0x8b, 0x01, 0x4a, 0xd4, 0x27, 0x26, 0xa8, 0x95, 0xa9, - 0x17, 0x96, 0x59, 0xe8, 0xf7, 0x57, 0x97, 0x56, 0xbe, 0xd2, 0x48, 0x41, 0x75, 0xab, 0x7e, 0xd3, - 0x1a, 0xfc, 0x60, 0xa1, 0xab, 0xe7, 0xb6, 0xac, 0x1a, 0xab, 0x74, 0x32, 0x61, 0x0f, 0xe0, 0x48, - 0x6b, 0x69, 0x97, 0x63, 0x75, 0xaf, 0x30, 0x93, 0x99, 0x1f, 0xbf, 0x8e, 0xd6, 0x38, 0x50, 0xc1, - 0x62, 0x33, 0xca, 0xe7, 0xdd, 0x4e, 0xb4, 0x95, 0x18, 0x2f, 0xde, 0x43, 0x9b, 0xa0, 0xd2, 0x6b, - 0x71, 0xfb, 0x9c, 0x33, 0x6e, 0xb6, 0x6c, 0xcb, 0x04, 0x6c, 0xee, 0x2f, 0xba, 0xc9, 0x5f, 0xf1, - 0xde, 0xb5, 0x93, 0xd3, 0x6e, 0xed, 0xc9, 0x69, 0xb7, 0xf6, 0xf3, 0x69, 0xb7, 0xf6, 0x28, 0xef, - 0x5a, 0x27, 0x79, 0xd7, 0x7a, 0x92, 0x77, 0xad, 0xdf, 0xf2, 0xae, 0xf5, 0xdd, 0xef, 0xdd, 0xda, - 0x17, 0xeb, 0xa6, 0xe8, 0x3f, 0x03, 0x00, 0x00, 0xff, 0xff, 0x2a, 0x8e, 0xe3, 0x5a, 0x4b, 0x0c, - 0x00, 0x00, + 0x14, 0x5f, 0xef, 0x9f, 0x64, 0x77, 0x02, 0xa4, 0x4c, 0x55, 0xe2, 0x06, 0xc9, 0xbb, 0x5a, 0x24, + 0x14, 0x24, 0x6a, 0x37, 0xe5, 0x5f, 0x55, 0x71, 0x20, 0x16, 0x51, 0x55, 0x41, 0x0b, 0x9a, 0x40, + 0x0e, 0x70, 0x61, 0xec, 0xbc, 0xee, 0x9a, 0xdd, 0xf5, 0x58, 0x33, 0x63, 0x97, 0x70, 0xea, 0x07, + 0xe0, 0xc0, 0xb1, 0x47, 0xbe, 0x02, 0x5f, 0x80, 0x2b, 0x39, 0xf6, 0x58, 0x24, 0xb4, 0x22, 0xe6, + 0x5b, 0x70, 0x42, 0x33, 0x9e, 0x5d, 0x67, 0xbb, 0x0e, 0xd5, 0x42, 0x11, 0x1c, 0x72, 0xb3, 0xdf, + 0xfb, 0xbd, 0xdf, 0xfb, 0xcd, 0x9b, 0x37, 0xf3, 0x06, 0x7d, 0x30, 0xba, 0x29, 0xdc, 0x88, 0x79, + 0xa3, 0x34, 0x00, 0x1e, 0x83, 0x04, 0xe1, 0x25, 0xa3, 0x81, 0x47, 0x93, 0x48, 0x78, 0x34, 0x95, + 0x43, 0xc6, 0xa3, 0x6f, 0xa9, 0x8c, 0x58, 0xec, 0x65, 0xbb, 0x01, 0x48, 0xba, 0xeb, 0x0d, 0x20, + 0x06, 0x4e, 0x25, 0x1c, 0xb9, 0x09, 0x67, 0x92, 0xe1, 0xeb, 0x05, 0x83, 0x5b, 0x32, 0xb8, 0xc9, + 0x68, 0xe0, 0x2a, 0x06, 0x77, 0x81, 0xc1, 0x35, 0x0c, 0xdb, 0xd7, 0x06, 0x91, 0x1c, 0xa6, 0x81, + 0x1b, 0xb2, 0x89, 0x37, 0x60, 0x03, 0xe6, 0x69, 0xa2, 0x20, 0xbd, 0xaf, 0xff, 0xf4, 0x8f, 0xfe, + 0x2a, 0x12, 0x6c, 0xbf, 0x6d, 0x24, 0xd2, 0x24, 0x9a, 0xd0, 0x70, 0x18, 0xc5, 0xc0, 0x8f, 0x4b, + 0x91, 0x13, 0x90, 0xd4, 0xcb, 0x96, 0x64, 0x6d, 0x7b, 0xe7, 0x45, 0xf1, 0x34, 0x96, 0xd1, 0x04, + 0x96, 0x02, 0xde, 0x7d, 0x56, 0x80, 0x08, 0x87, 0x30, 0xa1, 0x4b, 0x71, 0x6f, 0x9d, 0x17, 0x97, + 0xca, 0x68, 0xec, 0x45, 0xb1, 0x14, 0x92, 0x3f, 0x1d, 0xd4, 0x7f, 0x0f, 0xa1, 0xfd, 0x6f, 0x24, + 0xa7, 0x87, 0x74, 0x9c, 0x02, 0xee, 0xa2, 0x56, 0x24, 0x61, 0x22, 0x6c, 0xab, 0xd7, 0xd8, 0xe9, + 0xf8, 0x9d, 0x7c, 0xda, 0x6d, 0xdd, 0x51, 0x06, 0x52, 0xd8, 0x6f, 0xb5, 0x1f, 0xfd, 0xd0, 0xad, + 0x3d, 0xfc, 0xb5, 0x57, 0xeb, 0x4f, 0xeb, 0xc8, 0xfe, 0x98, 0x85, 0x74, 0x7c, 0x90, 0x06, 0x5f, + 0x43, 0x28, 0xf7, 0xc2, 0x10, 0x84, 0x20, 0x90, 0x45, 0xf0, 0x00, 0x7f, 0x85, 0xda, 0xaa, 0x1c, + 0x47, 0x54, 0x52, 0xdb, 0xea, 0x59, 0x3b, 0x1b, 0x37, 0xae, 0xbb, 0x66, 0x77, 0xce, 0xaa, 0x2b, + 0xf7, 0x47, 0xa1, 0xdd, 0x6c, 0xd7, 0xfd, 0x44, 0x73, 0xdd, 0x05, 0x49, 0x7d, 0x7c, 0x32, 0xed, + 0xd6, 0xf2, 0x69, 0x17, 0x95, 0x36, 0x32, 0x67, 0xc5, 0x23, 0xd4, 0x14, 0x09, 0x84, 0x76, 0x5d, + 0xb3, 0xdf, 0x71, 0x57, 0xdd, 0x7b, 0xb7, 0x42, 0xf6, 0x41, 0x02, 0xa1, 0xff, 0x82, 0x49, 0xdb, + 0x54, 0x7f, 0x44, 0x27, 0xc1, 0x02, 0xad, 0x09, 0x49, 0x65, 0x2a, 0xec, 0x86, 0x4e, 0xf7, 0xd1, + 0xf3, 0x49, 0xa7, 0x29, 0xfd, 0x97, 0x4c, 0xc2, 0xb5, 0xe2, 0x9f, 0x98, 0x54, 0xfd, 0x2f, 0xd1, + 0x95, 0x7b, 0x2c, 0x26, 0x20, 0x58, 0xca, 0x43, 0xd8, 0x93, 0x92, 0x47, 0x41, 0x2a, 0x41, 0xe0, + 0x1e, 0x6a, 0x26, 0x54, 0x0e, 0x75, 0x61, 0x3b, 0xa5, 0xde, 0x4f, 0xa9, 0x1c, 0x12, 0xed, 0x51, + 0x88, 0x0c, 0x78, 0xa0, 0x8b, 0x73, 0x06, 0x71, 0x08, 0x3c, 0x20, 0xda, 0xd3, 0xff, 0xa9, 0x8e, + 0x70, 0x05, 0xb5, 0x87, 0x3a, 0x31, 0x9d, 0x80, 0x48, 0x68, 0x08, 0x86, 0xff, 0x65, 0x13, 0xdd, + 0xb9, 0x37, 0x73, 0x90, 0x12, 0xf3, 0xec, 0x4c, 0xf8, 0x35, 0xd4, 0x1a, 0x70, 0x96, 0x26, 0xba, + 0x74, 0x1d, 0xff, 0x45, 0x03, 0x69, 0xdd, 0x56, 0x46, 0x52, 0xf8, 0xf0, 0x1b, 0x68, 0x3d, 0x03, + 0x2e, 0x22, 0x16, 0xdb, 0x4d, 0x0d, 0xdb, 0x34, 0xb0, 0xf5, 0xc3, 0xc2, 0x4c, 0x66, 0x7e, 0xfc, + 0x26, 0x6a, 0x73, 0x23, 0xdc, 0x6e, 0x69, 0xec, 0x25, 0x83, 0x6d, 0xcf, 0x16, 0x44, 0xe6, 0x08, + 0xfc, 0x0e, 0xda, 0x10, 0x69, 0x30, 0x0f, 0x58, 0xd3, 0x01, 0x97, 0x4d, 0xc0, 0xc6, 0x41, 0xe9, + 0x22, 0x67, 0x71, 0x6a, 0x59, 0x6a, 0x8d, 0xf6, 0xfa, 0xe2, 0xb2, 0x54, 0x09, 0x88, 0xf6, 0xf4, + 0x4f, 0xeb, 0x68, 0xeb, 0x00, 0xc6, 0xf7, 0xff, 0x9b, 0xee, 0x67, 0x0b, 0xdd, 0x7f, 0xf7, 0x6f, + 0xb4, 0x63, 0xb5, 0xf4, 0xff, 0xd7, 0x09, 0xf8, 0xb9, 0x8e, 0x5e, 0xfd, 0x0b, 0xa1, 0xf8, 0x3b, + 0x0b, 0x61, 0xbe, 0xd4, 0xc4, 0xa6, 0xe4, 0x1f, 0xae, 0xae, 0x70, 0xf9, 0x40, 0xf8, 0xaf, 0xe4, + 0xd3, 0x6e, 0xc5, 0x41, 0x21, 0x15, 0x79, 0xf1, 0x23, 0x0b, 0x5d, 0x89, 0xab, 0x4e, 0xac, 0xd9, + 0xa6, 0xdb, 0xab, 0x2b, 0xaa, 0xbc, 0x00, 0xfc, 0xab, 0xf9, 0xb4, 0x5b, 0x7d, 0x37, 0x90, 0x6a, + 0x01, 0xfd, 0x5f, 0xea, 0xe8, 0xf2, 0xc5, 0x3d, 0xfd, 0xef, 0x74, 0xe9, 0x1f, 0x4d, 0xb4, 0x75, + 0xd1, 0xa1, 0xff, 0xb0, 0x43, 0xe7, 0x83, 0xa4, 0xb1, 0x78, 0xe3, 0x7e, 0x2e, 0x80, 0x9b, 0x41, + 0xd2, 0x9b, 0x0d, 0x92, 0xa6, 0x7e, 0x9b, 0x20, 0xb5, 0x15, 0x7a, 0x88, 0x88, 0xd9, 0x14, 0x39, + 0x46, 0x2d, 0x50, 0x6f, 0x19, 0xbb, 0xd5, 0x6b, 0xec, 0x6c, 0xdc, 0xf8, 0xec, 0xb9, 0x35, 0x9b, + 0xab, 0x9f, 0x48, 0xfb, 0xb1, 0xe4, 0xc7, 0xe5, 0x00, 0xd3, 0x36, 0x52, 0x64, 0xdc, 0xce, 0xcc, + 0x33, 0x4a, 0x63, 0xf0, 0x25, 0xd4, 0x18, 0xc1, 0x71, 0x31, 0x40, 0x89, 0xfa, 0xc4, 0x04, 0xb5, + 0x32, 0xf5, 0xc2, 0x32, 0x85, 0x7e, 0x7f, 0x75, 0x69, 0xe5, 0x2b, 0x8d, 0x14, 0x54, 0xb7, 0xea, + 0x37, 0xad, 0xfe, 0x8f, 0x16, 0xba, 0x7a, 0x6e, 0xcb, 0xaa, 0xb1, 0x4a, 0xc7, 0x63, 0xf6, 0x00, + 0x8e, 0xb4, 0x96, 0x76, 0x39, 0x56, 0xf7, 0x0a, 0x33, 0x99, 0xf9, 0xf1, 0xeb, 0x68, 0x8d, 0x03, + 0x15, 0x2c, 0x36, 0xa3, 0x7c, 0xde, 0xed, 0x44, 0x5b, 0x89, 0xf1, 0xe2, 0x3d, 0xb4, 0x09, 0x2a, + 0xbd, 0x16, 0xb7, 0xcf, 0x39, 0xe3, 0x66, 0xcb, 0xb6, 0x4c, 0xc0, 0xe6, 0xfe, 0xa2, 0x9b, 0x3c, + 0x8d, 0xf7, 0xaf, 0x9d, 0x9c, 0x3a, 0xb5, 0xc7, 0xa7, 0x4e, 0xed, 0xc9, 0xa9, 0x53, 0x7b, 0x98, + 0x3b, 0xd6, 0x49, 0xee, 0x58, 0x8f, 0x73, 0xc7, 0x7a, 0x92, 0x3b, 0xd6, 0x6f, 0xb9, 0x63, 0x7d, + 0xff, 0xbb, 0x53, 0xfb, 0x62, 0xdd, 0x2c, 0xfc, 0xcf, 0x00, 0x00, 0x00, 0xff, 0xff, 0x24, 0x8e, + 0x13, 0x84, 0x19, 0x0c, 0x00, 0x00, } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/authorization/v1beta1/generated.proto b/vendor/k8s.io/kubernetes/pkg/apis/authorization/v1beta1/generated.proto index 9258e4e0..5653c29a 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/authorization/v1beta1/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/apis/authorization/v1beta1/generated.proto @@ -25,7 +25,6 @@ import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; // Package-wide variables from generator "generated". option go_package = "v1beta1"; diff --git a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/annotations.go b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/annotations.go index 4c377561..c6586ea7 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/annotations.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/annotations.go @@ -24,6 +24,10 @@ const MetricSpecsAnnotation = "autoscaling.alpha.kubernetes.io/metrics" // statuses when converting the `CurrentMetrics` field from autoscaling/v2alpha1 const MetricStatusesAnnotation = "autoscaling.alpha.kubernetes.io/current-metrics" +// HorizontalPodAutoscalerConditionsAnnotation is the annotation which holds the conditions +// of an HPA when converting the `Conditions` field from autoscaling/v2alpha1 +const HorizontalPodAutoscalerConditionsAnnotation = "autoscaling.alpha.kubernetes.io/conditions" + // DefaultCPUUtilization is the default value for CPU utilization, provided no other // metrics are present. This is here because it's used by both the v2alpha1 defaulting // logic, and the pseudo-defaulting done in v1 conversion. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/types.go b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/types.go index 27d9a602..04d88e21 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/types.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/types.go @@ -25,15 +25,15 @@ import ( // Scale represents a scaling request for a resource. type Scale struct { metav1.TypeMeta - // Standard object metadata; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata. + // Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. // +optional metav1.ObjectMeta - // defines the behavior of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. + // defines the behavior of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. // +optional Spec ScaleSpec - // current status of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. Read-only. + // current status of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. Read-only. // +optional Status ScaleStatus } @@ -60,7 +60,7 @@ type ScaleStatus struct { // CrossVersionObjectReference contains enough information to let you identify the referred resource. type CrossVersionObjectReference struct { - // Kind of the referent; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds" + // Kind of the referent; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds" Kind string // Name of the referent; More info: http://kubernetes.io/docs/user-guide/identifiers#names Name string @@ -174,7 +174,7 @@ type ResourceMetricSource struct { // the requested value of the resource for the pods. // +optional TargetAverageUtilization *int32 - // TargetAverageValue is the the target value of the average of the + // TargetAverageValue is the target value of the average of the // resource metric across all relevant pods, as a raw value (instead of as // a percentage of the request), similar to the "pods" metric source type. // +optional @@ -202,6 +202,59 @@ type HorizontalPodAutoscalerStatus struct { // CurrentMetrics is the last read state of the metrics used by this autoscaler. CurrentMetrics []MetricStatus + + // Conditions is the set of conditions required for this autoscaler to scale its target, + // and indicates whether or not those conditions are met. + Conditions []HorizontalPodAutoscalerCondition +} + +// ConditionStatus indicates the status of a condition (true, false, or unknown). +type ConditionStatus string + +// These are valid condition statuses. "ConditionTrue" means a resource is in the condition; +// "ConditionFalse" means a resource is not in the condition; "ConditionUnknown" means kubernetes +// can't decide if a resource is in the condition or not. In the future, we could add other +// intermediate conditions, e.g. ConditionDegraded. +const ( + ConditionTrue ConditionStatus = "True" + ConditionFalse ConditionStatus = "False" + ConditionUnknown ConditionStatus = "Unknown" +) + +// HorizontalPodAutoscalerConditionType are the valid conditions of +// a HorizontalPodAutoscaler. +type HorizontalPodAutoscalerConditionType string + +var ( + // ScalingActive indicates that the HPA controller is able to scale if necessary: + // it's correctly configured, can fetch the desired metrics, and isn't disabled. + ScalingActive HorizontalPodAutoscalerConditionType = "ScalingActive" + // AbleToScale indicates a lack of transient issues which prevent scaling from occuring, + // such as being in a backoff window, or being unable to access/update the target scale. + AbleToScale HorizontalPodAutoscalerConditionType = "AbleToScale" + // ScalingLimited indicates that the calculated scale based on metrics would be above or + // below the range for the HPA, and has thus been capped. + ScalingLimited HorizontalPodAutoscalerConditionType = "ScalingLimited" +) + +// HorizontalPodAutoscalerCondition describes the state of +// a HorizontalPodAutoscaler at a certain point. +type HorizontalPodAutoscalerCondition struct { + // Type describes the current condition + Type HorizontalPodAutoscalerConditionType + // Status is the status of the condition (True, False, Unknown) + Status ConditionStatus + // LastTransitionTime is the last time the condition transitioned from + // one status to another + // +optional + LastTransitionTime metav1.Time + // Reason is the reason for the condition's last transition. + // +optional + Reason string + // Message is a human-readable explanation containing details about + // the transition + // +optional + Message string } // MetricStatus describes the last-read state of a single metric. @@ -264,7 +317,7 @@ type ResourceMetricStatus struct { // specification. // +optional CurrentAverageUtilization *int32 - // CurrentAverageValue is the the current value of the average of the + // CurrentAverageValue is the current value of the average of the // resource metric across all relevant pods, as a raw value (instead of as // a percentage of the request), similar to the "pods" metric source type. // It will always be set, regardless of the corresponding metric specification. @@ -279,12 +332,12 @@ type ResourceMetricStatus struct { type HorizontalPodAutoscaler struct { metav1.TypeMeta // Metadata is the standard object metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta // Spec is the specification for the behaviour of the autoscaler. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. // +optional Spec HorizontalPodAutoscalerSpec diff --git a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/conversion.go b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/conversion.go index b8096af8..0bce7a12 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/conversion.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/conversion.go @@ -68,9 +68,17 @@ func Convert_autoscaling_HorizontalPodAutoscaler_To_v1_HorizontalPodAutoscaler(i } } - if len(otherMetrics) > 0 || len(in.Status.CurrentMetrics) > 0 { + // store HPA conditions in an annotation + currentConditions := make([]HorizontalPodAutoscalerCondition, len(in.Status.Conditions)) + for i, currentCondition := range in.Status.Conditions { + if err := Convert_autoscaling_HorizontalPodAutoscalerCondition_To_v1_HorizontalPodAutoscalerCondition(¤tCondition, ¤tConditions[i], s); err != nil { + return err + } + } + + if len(otherMetrics) > 0 || len(in.Status.CurrentMetrics) > 0 || len(currentConditions) > 0 { old := out.Annotations - out.Annotations = make(map[string]string, len(old)+2) + out.Annotations = make(map[string]string, len(old)+3) if old != nil { for k, v := range old { out.Annotations[k] = v @@ -94,6 +102,14 @@ func Convert_autoscaling_HorizontalPodAutoscaler_To_v1_HorizontalPodAutoscaler(i out.Annotations[autoscaling.MetricStatusesAnnotation] = string(currentMetricsEnc) } + if len(in.Status.Conditions) > 0 { + currentConditionsEnc, err := json.Marshal(currentConditions) + if err != nil { + return err + } + out.Annotations[autoscaling.HorizontalPodAutoscalerConditionsAnnotation] = string(currentConditionsEnc) + } + return nil } @@ -154,6 +170,21 @@ func Convert_v1_HorizontalPodAutoscaler_To_autoscaling_HorizontalPodAutoscaler(i *out.Spec.Metrics[0].Resource.TargetAverageUtilization = autoscaling.DefaultCPUUtilization } + if currentConditionsEnc, hasCurrentConditions := out.Annotations[autoscaling.HorizontalPodAutoscalerConditionsAnnotation]; hasCurrentConditions { + var currentConditions []HorizontalPodAutoscalerCondition + if err := json.Unmarshal([]byte(currentConditionsEnc), ¤tConditions); err != nil { + return err + } + + out.Status.Conditions = make([]autoscaling.HorizontalPodAutoscalerCondition, len(currentConditions)) + for i, currentCondition := range currentConditions { + if err := Convert_v1_HorizontalPodAutoscalerCondition_To_autoscaling_HorizontalPodAutoscalerCondition(¤tCondition, &out.Status.Conditions[i], s); err != nil { + return err + } + } + delete(out.Annotations, autoscaling.HorizontalPodAutoscalerConditionsAnnotation) + } + return nil } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/generated.pb.go index e209f6c4..5660bfd8 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/generated.pb.go @@ -27,6 +27,7 @@ limitations under the License. It has these top-level messages: CrossVersionObjectReference HorizontalPodAutoscaler + HorizontalPodAutoscalerCondition HorizontalPodAutoscalerList HorizontalPodAutoscalerSpec HorizontalPodAutoscalerStatus @@ -79,71 +80,78 @@ func (m *HorizontalPodAutoscaler) Reset() { *m = HorizontalPo func (*HorizontalPodAutoscaler) ProtoMessage() {} func (*HorizontalPodAutoscaler) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{1} } +func (m *HorizontalPodAutoscalerCondition) Reset() { *m = HorizontalPodAutoscalerCondition{} } +func (*HorizontalPodAutoscalerCondition) ProtoMessage() {} +func (*HorizontalPodAutoscalerCondition) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{2} +} + func (m *HorizontalPodAutoscalerList) Reset() { *m = HorizontalPodAutoscalerList{} } func (*HorizontalPodAutoscalerList) ProtoMessage() {} func (*HorizontalPodAutoscalerList) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{2} + return fileDescriptorGenerated, []int{3} } func (m *HorizontalPodAutoscalerSpec) Reset() { *m = HorizontalPodAutoscalerSpec{} } func (*HorizontalPodAutoscalerSpec) ProtoMessage() {} func (*HorizontalPodAutoscalerSpec) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{3} + return fileDescriptorGenerated, []int{4} } func (m *HorizontalPodAutoscalerStatus) Reset() { *m = HorizontalPodAutoscalerStatus{} } func (*HorizontalPodAutoscalerStatus) ProtoMessage() {} func (*HorizontalPodAutoscalerStatus) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{4} + return fileDescriptorGenerated, []int{5} } func (m *MetricSpec) Reset() { *m = MetricSpec{} } func (*MetricSpec) ProtoMessage() {} -func (*MetricSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{5} } +func (*MetricSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{6} } func (m *MetricStatus) Reset() { *m = MetricStatus{} } func (*MetricStatus) ProtoMessage() {} -func (*MetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{6} } +func (*MetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{7} } func (m *ObjectMetricSource) Reset() { *m = ObjectMetricSource{} } func (*ObjectMetricSource) ProtoMessage() {} -func (*ObjectMetricSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{7} } +func (*ObjectMetricSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{8} } func (m *ObjectMetricStatus) Reset() { *m = ObjectMetricStatus{} } func (*ObjectMetricStatus) ProtoMessage() {} -func (*ObjectMetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{8} } +func (*ObjectMetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{9} } func (m *PodsMetricSource) Reset() { *m = PodsMetricSource{} } func (*PodsMetricSource) ProtoMessage() {} -func (*PodsMetricSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{9} } +func (*PodsMetricSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{10} } func (m *PodsMetricStatus) Reset() { *m = PodsMetricStatus{} } func (*PodsMetricStatus) ProtoMessage() {} -func (*PodsMetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{10} } +func (*PodsMetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{11} } func (m *ResourceMetricSource) Reset() { *m = ResourceMetricSource{} } func (*ResourceMetricSource) ProtoMessage() {} -func (*ResourceMetricSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{11} } +func (*ResourceMetricSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{12} } func (m *ResourceMetricStatus) Reset() { *m = ResourceMetricStatus{} } func (*ResourceMetricStatus) ProtoMessage() {} -func (*ResourceMetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{12} } +func (*ResourceMetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{13} } func (m *Scale) Reset() { *m = Scale{} } func (*Scale) ProtoMessage() {} -func (*Scale) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{13} } +func (*Scale) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{14} } func (m *ScaleSpec) Reset() { *m = ScaleSpec{} } func (*ScaleSpec) ProtoMessage() {} -func (*ScaleSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{14} } +func (*ScaleSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{15} } func (m *ScaleStatus) Reset() { *m = ScaleStatus{} } func (*ScaleStatus) ProtoMessage() {} -func (*ScaleStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{15} } +func (*ScaleStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{16} } func init() { proto.RegisterType((*CrossVersionObjectReference)(nil), "k8s.io.kubernetes.pkg.apis.autoscaling.v1.CrossVersionObjectReference") proto.RegisterType((*HorizontalPodAutoscaler)(nil), "k8s.io.kubernetes.pkg.apis.autoscaling.v1.HorizontalPodAutoscaler") + proto.RegisterType((*HorizontalPodAutoscalerCondition)(nil), "k8s.io.kubernetes.pkg.apis.autoscaling.v1.HorizontalPodAutoscalerCondition") proto.RegisterType((*HorizontalPodAutoscalerList)(nil), "k8s.io.kubernetes.pkg.apis.autoscaling.v1.HorizontalPodAutoscalerList") proto.RegisterType((*HorizontalPodAutoscalerSpec)(nil), "k8s.io.kubernetes.pkg.apis.autoscaling.v1.HorizontalPodAutoscalerSpec") proto.RegisterType((*HorizontalPodAutoscalerStatus)(nil), "k8s.io.kubernetes.pkg.apis.autoscaling.v1.HorizontalPodAutoscalerStatus") @@ -231,6 +239,48 @@ func (m *HorizontalPodAutoscaler) MarshalTo(dAtA []byte) (int, error) { return i, nil } +func (m *HorizontalPodAutoscalerCondition) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *HorizontalPodAutoscalerCondition) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.Type))) + i += copy(dAtA[i:], m.Type) + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.Status))) + i += copy(dAtA[i:], m.Status) + dAtA[i] = 0x1a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.LastTransitionTime.Size())) + n4, err := m.LastTransitionTime.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n4 + dAtA[i] = 0x22 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.Reason))) + i += copy(dAtA[i:], m.Reason) + dAtA[i] = 0x2a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.Message))) + i += copy(dAtA[i:], m.Message) + return i, nil +} + func (m *HorizontalPodAutoscalerList) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -249,11 +299,11 @@ func (m *HorizontalPodAutoscalerList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n4, err := m.ListMeta.MarshalTo(dAtA[i:]) + n5, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n4 + i += n5 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -287,11 +337,11 @@ func (m *HorizontalPodAutoscalerSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ScaleTargetRef.Size())) - n5, err := m.ScaleTargetRef.MarshalTo(dAtA[i:]) + n6, err := m.ScaleTargetRef.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n5 + i += n6 if m.MinReplicas != nil { dAtA[i] = 0x10 i++ @@ -332,11 +382,11 @@ func (m *HorizontalPodAutoscalerStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.LastScaleTime.Size())) - n6, err := m.LastScaleTime.MarshalTo(dAtA[i:]) + n7, err := m.LastScaleTime.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n6 + i += n7 } dAtA[i] = 0x18 i++ @@ -375,32 +425,32 @@ func (m *MetricSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Object.Size())) - n7, err := m.Object.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n7 - } - if m.Pods != nil { - dAtA[i] = 0x1a - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Pods.Size())) - n8, err := m.Pods.MarshalTo(dAtA[i:]) + n8, err := m.Object.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n8 } - if m.Resource != nil { - dAtA[i] = 0x22 + if m.Pods != nil { + dAtA[i] = 0x1a i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Resource.Size())) - n9, err := m.Resource.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.Pods.Size())) + n9, err := m.Pods.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n9 } + if m.Resource != nil { + dAtA[i] = 0x22 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Resource.Size())) + n10, err := m.Resource.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n10 + } return i, nil } @@ -427,32 +477,32 @@ func (m *MetricStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Object.Size())) - n10, err := m.Object.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n10 - } - if m.Pods != nil { - dAtA[i] = 0x1a - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Pods.Size())) - n11, err := m.Pods.MarshalTo(dAtA[i:]) + n11, err := m.Object.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n11 } - if m.Resource != nil { - dAtA[i] = 0x22 + if m.Pods != nil { + dAtA[i] = 0x1a i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Resource.Size())) - n12, err := m.Resource.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.Pods.Size())) + n12, err := m.Pods.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n12 } + if m.Resource != nil { + dAtA[i] = 0x22 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Resource.Size())) + n13, err := m.Resource.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n13 + } return i, nil } @@ -474,11 +524,11 @@ func (m *ObjectMetricSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Target.Size())) - n13, err := m.Target.MarshalTo(dAtA[i:]) + n14, err := m.Target.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n13 + i += n14 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.MetricName))) @@ -486,11 +536,11 @@ func (m *ObjectMetricSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.TargetValue.Size())) - n14, err := m.TargetValue.MarshalTo(dAtA[i:]) + n15, err := m.TargetValue.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n14 + i += n15 return i, nil } @@ -512,11 +562,11 @@ func (m *ObjectMetricStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Target.Size())) - n15, err := m.Target.MarshalTo(dAtA[i:]) + n16, err := m.Target.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n15 + i += n16 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.MetricName))) @@ -524,11 +574,11 @@ func (m *ObjectMetricStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.CurrentValue.Size())) - n16, err := m.CurrentValue.MarshalTo(dAtA[i:]) + n17, err := m.CurrentValue.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n16 + i += n17 return i, nil } @@ -554,11 +604,11 @@ func (m *PodsMetricSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.TargetAverageValue.Size())) - n17, err := m.TargetAverageValue.MarshalTo(dAtA[i:]) + n18, err := m.TargetAverageValue.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n17 + i += n18 return i, nil } @@ -584,11 +634,11 @@ func (m *PodsMetricStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.CurrentAverageValue.Size())) - n18, err := m.CurrentAverageValue.MarshalTo(dAtA[i:]) + n19, err := m.CurrentAverageValue.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n18 + i += n19 return i, nil } @@ -620,11 +670,11 @@ func (m *ResourceMetricSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.TargetAverageValue.Size())) - n19, err := m.TargetAverageValue.MarshalTo(dAtA[i:]) + n20, err := m.TargetAverageValue.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n19 + i += n20 } return i, nil } @@ -656,11 +706,11 @@ func (m *ResourceMetricStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.CurrentAverageValue.Size())) - n20, err := m.CurrentAverageValue.MarshalTo(dAtA[i:]) + n21, err := m.CurrentAverageValue.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n20 + i += n21 return i, nil } @@ -682,27 +732,27 @@ func (m *Scale) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) - n21, err := m.ObjectMeta.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n21 - dAtA[i] = 0x12 - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) - n22, err := m.Spec.MarshalTo(dAtA[i:]) + n22, err := m.ObjectMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n22 - dAtA[i] = 0x1a + dAtA[i] = 0x12 i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) - n23, err := m.Status.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) + n23, err := m.Spec.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n23 + dAtA[i] = 0x1a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Status.Size())) + n24, err := m.Status.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n24 return i, nil } @@ -803,6 +853,22 @@ func (m *HorizontalPodAutoscaler) Size() (n int) { return n } +func (m *HorizontalPodAutoscalerCondition) Size() (n int) { + var l int + _ = l + l = len(m.Type) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.Status) + n += 1 + l + sovGenerated(uint64(l)) + l = m.LastTransitionTime.Size() + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.Reason) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.Message) + n += 1 + l + sovGenerated(uint64(l)) + return n +} + func (m *HorizontalPodAutoscalerList) Size() (n int) { var l int _ = l @@ -1027,6 +1093,20 @@ func (this *HorizontalPodAutoscaler) String() string { }, "") return s } +func (this *HorizontalPodAutoscalerCondition) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&HorizontalPodAutoscalerCondition{`, + `Type:` + fmt.Sprintf("%v", this.Type) + `,`, + `Status:` + fmt.Sprintf("%v", this.Status) + `,`, + `LastTransitionTime:` + strings.Replace(strings.Replace(this.LastTransitionTime.String(), "Time", "k8s_io_apimachinery_pkg_apis_meta_v1.Time", 1), `&`, ``, 1) + `,`, + `Reason:` + fmt.Sprintf("%v", this.Reason) + `,`, + `Message:` + fmt.Sprintf("%v", this.Message) + `,`, + `}`, + }, "") + return s +} func (this *HorizontalPodAutoscalerList) String() string { if this == nil { return "nil" @@ -1479,6 +1559,202 @@ func (m *HorizontalPodAutoscaler) Unmarshal(dAtA []byte) error { } return nil } +func (m *HorizontalPodAutoscalerCondition) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: HorizontalPodAutoscalerCondition: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: HorizontalPodAutoscalerCondition: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Type", 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.Type = HorizontalPodAutoscalerConditionType(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Status", 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.Status = k8s_io_kubernetes_pkg_api_v1.ConditionStatus(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field LastTransitionTime", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.LastTransitionTime.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Reason", 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.Reason = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Message", 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.Message = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func (m *HorizontalPodAutoscalerList) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 @@ -3420,85 +3696,92 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 1279 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x57, 0xcd, 0x6f, 0x1b, 0x45, - 0x14, 0xcf, 0xda, 0x4e, 0x94, 0xce, 0xa6, 0x1f, 0x4c, 0xaa, 0xd4, 0x4d, 0xa8, 0x37, 0x5a, 0x38, - 0xb4, 0xa8, 0xec, 0x12, 0x13, 0x2a, 0x22, 0x84, 0x50, 0x6c, 0x54, 0x5a, 0x51, 0xb7, 0x61, 0xe2, - 0x46, 0x7c, 0x09, 0x31, 0x59, 0x4f, 0x9d, 0x69, 0xbc, 0x1f, 0x9a, 0x1d, 0x5b, 0x4d, 0x24, 0x24, - 0x4e, 0x9c, 0xb9, 0x70, 0x46, 0xf0, 0x4f, 0x70, 0x2e, 0x12, 0x52, 0x8e, 0xbd, 0xc1, 0xc9, 0x22, - 0x0b, 0x37, 0xc4, 0x3f, 0x50, 0x71, 0x40, 0x3b, 0x3b, 0x5e, 0xef, 0xda, 0x5e, 0x27, 0x4e, 0xd3, - 0x22, 0x6e, 0xbb, 0x33, 0xef, 0xfd, 0x7e, 0xef, 0xfd, 0xe6, 0xcd, 0x9b, 0x19, 0xb0, 0xb6, 0xfb, - 0xb6, 0x6f, 0x50, 0xd7, 0xdc, 0x6d, 0x6f, 0x13, 0xe6, 0x10, 0x4e, 0x7c, 0xd3, 0xdb, 0x6d, 0x9a, - 0xd8, 0xa3, 0xbe, 0x89, 0xdb, 0xdc, 0xf5, 0x2d, 0xdc, 0xa2, 0x4e, 0xd3, 0xec, 0xac, 0x98, 0x4d, - 0xe2, 0x10, 0x86, 0x39, 0x69, 0x18, 0x1e, 0x73, 0xb9, 0x0b, 0xaf, 0x45, 0xae, 0x46, 0xdf, 0xd5, - 0xf0, 0x76, 0x9b, 0x46, 0xe8, 0x6a, 0x24, 0x5c, 0x8d, 0xce, 0xca, 0xe2, 0xeb, 0x4d, 0xca, 0x77, - 0xda, 0xdb, 0x86, 0xe5, 0xda, 0x66, 0xd3, 0x6d, 0xba, 0xa6, 0x40, 0xd8, 0x6e, 0x3f, 0x10, 0x7f, - 0xe2, 0x47, 0x7c, 0x45, 0xc8, 0x8b, 0xab, 0x32, 0x28, 0xec, 0x51, 0x1b, 0x5b, 0x3b, 0xd4, 0x21, - 0x6c, 0xaf, 0x17, 0x96, 0xc9, 0x88, 0xef, 0xb6, 0x99, 0x45, 0x06, 0xe3, 0x19, 0xeb, 0xe5, 0x9b, - 0x36, 0xe1, 0x78, 0x44, 0x16, 0x8b, 0x66, 0x96, 0x17, 0x6b, 0x3b, 0x9c, 0xda, 0xc3, 0x34, 0x37, - 0x8e, 0x72, 0xf0, 0xad, 0x1d, 0x62, 0xe3, 0x21, 0xbf, 0x37, 0xb3, 0xfc, 0xda, 0x9c, 0xb6, 0x4c, - 0xea, 0x70, 0x9f, 0xb3, 0x71, 0x39, 0xf9, 0x84, 0x75, 0x08, 0xeb, 0x27, 0x44, 0x1e, 0x61, 0xdb, - 0x6b, 0x91, 0x51, 0x39, 0x5d, 0xcf, 0x5c, 0xd4, 0x11, 0xd6, 0xfa, 0x77, 0x0a, 0x58, 0xaa, 0x32, - 0xd7, 0xf7, 0xb7, 0x08, 0xf3, 0xa9, 0xeb, 0xdc, 0xdb, 0x7e, 0x48, 0x2c, 0x8e, 0xc8, 0x03, 0xc2, - 0x88, 0x63, 0x11, 0xb8, 0x0c, 0x0a, 0xbb, 0xd4, 0x69, 0x14, 0x95, 0x65, 0xe5, 0xea, 0x99, 0xca, - 0xdc, 0x41, 0x57, 0x9b, 0x0a, 0xba, 0x5a, 0xe1, 0x43, 0xea, 0x34, 0x90, 0x98, 0x09, 0x2d, 0x1c, - 0x6c, 0x93, 0x62, 0x2e, 0x6d, 0x71, 0x17, 0xdb, 0x04, 0x89, 0x19, 0x58, 0x06, 0x00, 0x7b, 0x54, - 0x12, 0x14, 0xf3, 0xc2, 0x0e, 0x4a, 0x3b, 0xb0, 0xbe, 0x71, 0x5b, 0xce, 0xa0, 0x84, 0x95, 0xfe, - 0x6b, 0x0e, 0x5c, 0xba, 0xe5, 0x32, 0xba, 0xef, 0x3a, 0x1c, 0xb7, 0x36, 0xdc, 0xc6, 0xba, 0x2c, - 0x2a, 0xc2, 0xe0, 0x97, 0x60, 0x36, 0x5c, 0xd0, 0x06, 0xe6, 0x58, 0xc4, 0xa5, 0x96, 0xdf, 0x30, - 0x64, 0x39, 0x26, 0xf5, 0xed, 0x17, 0x64, 0x68, 0x6d, 0x74, 0x56, 0x8c, 0x28, 0xb9, 0x1a, 0xe1, - 0xb8, 0xcf, 0xdf, 0x1f, 0x43, 0x31, 0x2a, 0xdc, 0x01, 0x05, 0xdf, 0x23, 0x96, 0xc8, 0x49, 0x2d, - 0xdf, 0x34, 0x8e, 0x5d, 0xec, 0x46, 0x46, 0xcc, 0x9b, 0x1e, 0xb1, 0xfa, 0xda, 0x84, 0x7f, 0x48, - 0x30, 0x40, 0x0f, 0xcc, 0xf8, 0x1c, 0xf3, 0xb6, 0x2f, 0x74, 0x51, 0xcb, 0xb7, 0x4e, 0x81, 0x4b, - 0xe0, 0x55, 0xce, 0x49, 0xb6, 0x99, 0xe8, 0x1f, 0x49, 0x1e, 0xfd, 0x4f, 0x05, 0x2c, 0x65, 0x78, - 0xde, 0xa1, 0x3e, 0x87, 0x9f, 0x0f, 0xa9, 0x6b, 0x1c, 0x4f, 0xdd, 0xd0, 0x5b, 0x68, 0x7b, 0x41, - 0x32, 0xcf, 0xf6, 0x46, 0x12, 0xca, 0x36, 0xc1, 0x34, 0xe5, 0xc4, 0xf6, 0x8b, 0xb9, 0xe5, 0xfc, - 0x55, 0xb5, 0x5c, 0x79, 0xf6, 0x74, 0x2b, 0x67, 0x25, 0xdd, 0xf4, 0xed, 0x10, 0x18, 0x45, 0xf8, - 0xfa, 0x3f, 0xb9, 0xcc, 0x34, 0x43, 0xf9, 0xe1, 0x37, 0x0a, 0x38, 0x27, 0x7e, 0xeb, 0x98, 0x35, - 0x49, 0x58, 0xf1, 0x32, 0xdb, 0x49, 0x56, 0x7b, 0xcc, 0xce, 0xa9, 0x2c, 0xc8, 0xb0, 0xce, 0x6d, - 0xa6, 0x58, 0xd0, 0x00, 0x2b, 0x5c, 0x01, 0xaa, 0x4d, 0x1d, 0x44, 0xbc, 0x16, 0xb5, 0xb0, 0x2f, - 0x4a, 0x6e, 0xba, 0x72, 0x3e, 0xe8, 0x6a, 0x6a, 0xad, 0x3f, 0x8c, 0x92, 0x36, 0xf0, 0x2d, 0xa0, - 0xda, 0xf8, 0x51, 0xec, 0x92, 0x17, 0x2e, 0xf3, 0x92, 0x4f, 0xad, 0xf5, 0xa7, 0x50, 0xd2, 0x0e, - 0x3e, 0x04, 0x25, 0x2e, 0x68, 0xab, 0x1b, 0xf7, 0xef, 0x73, 0xda, 0xa2, 0xfb, 0x98, 0x53, 0xd7, - 0xd9, 0x20, 0xcc, 0x22, 0x0e, 0xc7, 0x4d, 0x52, 0x2c, 0x08, 0x24, 0x3d, 0xe8, 0x6a, 0xa5, 0xfa, - 0x58, 0x4b, 0x74, 0x04, 0x92, 0xfe, 0x38, 0x0f, 0xae, 0x8c, 0xad, 0x4f, 0x78, 0x13, 0x40, 0x77, - 0x5b, 0xf4, 0xb5, 0xc6, 0x07, 0x51, 0x53, 0x0a, 0xbb, 0x43, 0xb8, 0x06, 0xf9, 0xca, 0x42, 0xd0, - 0xd5, 0xe0, 0xbd, 0xa1, 0x59, 0x34, 0xc2, 0x03, 0x5a, 0xe0, 0x6c, 0x0b, 0xfb, 0x3c, 0x52, 0x99, - 0xca, 0x46, 0xa4, 0x96, 0x5f, 0x3b, 0x5e, 0xd1, 0x86, 0x1e, 0x95, 0x97, 0x82, 0xae, 0x76, 0xf6, - 0x4e, 0x12, 0x04, 0xa5, 0x31, 0xe1, 0x3a, 0x38, 0x6f, 0xb5, 0x19, 0x23, 0x0e, 0x1f, 0x50, 0xfd, - 0x92, 0x54, 0xfd, 0x7c, 0x35, 0x3d, 0x8d, 0x06, 0xed, 0x43, 0x88, 0x06, 0xf1, 0x29, 0x23, 0x8d, - 0x18, 0xa2, 0x90, 0x86, 0x78, 0x3f, 0x3d, 0x8d, 0x06, 0xed, 0xa1, 0x0d, 0x34, 0x89, 0x9a, 0xb9, - 0x82, 0xd3, 0x02, 0xf2, 0x95, 0xa0, 0xab, 0x69, 0xd5, 0xf1, 0xa6, 0xe8, 0x28, 0x2c, 0xfd, 0xaf, - 0x1c, 0x00, 0x35, 0xc2, 0x19, 0xb5, 0xc4, 0x8e, 0x59, 0x05, 0x05, 0xbe, 0xe7, 0x11, 0x79, 0x14, - 0x2c, 0xf7, 0x9a, 0x59, 0x7d, 0xcf, 0x23, 0x4f, 0xbb, 0xda, 0x05, 0x69, 0x29, 0x8e, 0xe7, 0x70, - 0x0c, 0x09, 0x6b, 0x88, 0xc1, 0x8c, 0x2b, 0x76, 0x86, 0x5c, 0x97, 0x77, 0x27, 0xd8, 0x5e, 0x71, - 0x6f, 0x8e, 0x81, 0x2b, 0x20, 0xec, 0x68, 0x72, 0xab, 0x49, 0x60, 0xf8, 0x09, 0x28, 0x78, 0x6e, - 0xa3, 0xd7, 0x41, 0xdf, 0x99, 0x80, 0x60, 0xc3, 0x6d, 0xf8, 0x29, 0xf8, 0xd9, 0x30, 0xa3, 0x70, - 0x14, 0x09, 0x48, 0x48, 0xc1, 0x6c, 0xef, 0xca, 0x21, 0x56, 0x4b, 0x2d, 0xbf, 0x37, 0x01, 0x3c, - 0x92, 0xae, 0x29, 0x8a, 0xb9, 0xb0, 0x33, 0xf6, 0x66, 0x50, 0x0c, 0xaf, 0xff, 0x9d, 0x03, 0x73, - 0xd2, 0x30, 0xda, 0x20, 0xff, 0xb1, 0xde, 0xd1, 0x29, 0xf2, 0xdc, 0xf4, 0x8e, 0xe0, 0x9f, 0xab, - 0xde, 0x11, 0x45, 0x96, 0xde, 0xdf, 0xe7, 0x00, 0x1c, 0x2e, 0x30, 0xe8, 0x80, 0x99, 0xa8, 0xb5, - 0x9d, 0xf2, 0x71, 0x10, 0x1f, 0xc7, 0xb2, 0xf3, 0x4b, 0x96, 0xf0, 0x72, 0x64, 0x0b, 0xfe, 0xbb, - 0xfd, 0x4b, 0x54, 0x7c, 0x39, 0xa9, 0xc5, 0x33, 0x28, 0x61, 0x05, 0x09, 0x50, 0x23, 0xef, 0x2d, - 0xdc, 0x6a, 0x13, 0xb9, 0x0e, 0x63, 0x4f, 0x69, 0xa3, 0x97, 0xb6, 0xf1, 0x51, 0x1b, 0x3b, 0x9c, - 0xf2, 0xbd, 0xfe, 0x79, 0x51, 0xef, 0x43, 0xa1, 0x24, 0xae, 0xfe, 0xe3, 0xa0, 0x42, 0x51, 0x5d, - 0xfe, 0x1f, 0x14, 0xda, 0x01, 0x73, 0xb2, 0xbb, 0x3d, 0x8b, 0x44, 0x17, 0x25, 0xcb, 0x5c, 0x35, - 0x81, 0x85, 0x52, 0xc8, 0xfa, 0xcf, 0x0a, 0xb8, 0x30, 0xd8, 0x46, 0x06, 0x42, 0x56, 0x8e, 0x15, - 0xf2, 0x3e, 0x80, 0x51, 0xc2, 0xeb, 0x1d, 0xc2, 0x70, 0x93, 0x44, 0x81, 0xe7, 0x4e, 0x14, 0xf8, - 0xa2, 0xe4, 0x82, 0xf5, 0x21, 0x44, 0x34, 0x82, 0x45, 0xff, 0x25, 0x9d, 0x44, 0xb4, 0xce, 0x27, - 0x49, 0xe2, 0x2b, 0x30, 0x2f, 0xd5, 0x39, 0x85, 0x2c, 0x96, 0x24, 0xd9, 0x7c, 0x75, 0x18, 0x12, - 0x8d, 0xe2, 0xd1, 0x7f, 0xca, 0x81, 0x8b, 0xa3, 0x9a, 0x2e, 0xac, 0xc9, 0x47, 0x4a, 0x94, 0xc5, - 0x5a, 0xf2, 0x91, 0xf2, 0xb4, 0xab, 0x5d, 0x1b, 0xf7, 0x64, 0x8a, 0xbb, 0x4a, 0xe2, 0x45, 0xf3, - 0x31, 0x28, 0xa6, 0x54, 0x4c, 0x9c, 0x9f, 0xf2, 0x02, 0xf7, 0x72, 0xd0, 0xd5, 0x8a, 0xf5, 0x0c, - 0x1b, 0x94, 0xe9, 0x0d, 0x3b, 0x23, 0xab, 0xe0, 0x64, 0xe5, 0xbb, 0x30, 0x41, 0x05, 0x3c, 0x1e, - 0x56, 0x2e, 0xaa, 0x82, 0x53, 0x56, 0xee, 0x33, 0x70, 0x39, 0xbd, 0x70, 0xc3, 0xd2, 0x5d, 0x09, - 0xba, 0xda, 0xe5, 0x6a, 0x96, 0x11, 0xca, 0xf6, 0xcf, 0xaa, 0xbe, 0xfc, 0x0b, 0xaa, 0xbe, 0x1f, - 0x72, 0x60, 0x5a, 0x5c, 0x19, 0x5f, 0xc0, 0x0b, 0x75, 0x2b, 0xf5, 0x42, 0x5d, 0x9d, 0xa0, 0x05, - 0x8b, 0x08, 0x33, 0xdf, 0xa3, 0x5f, 0x0c, 0xbc, 0x47, 0x6f, 0x4c, 0x8c, 0x3c, 0xfe, 0xf5, 0xb9, - 0x06, 0xce, 0xc4, 0x01, 0xc0, 0xeb, 0xe1, 0x69, 0x2f, 0xef, 0xc2, 0x8a, 0x58, 0xfb, 0xf8, 0xe9, - 0x18, 0x5f, 0x82, 0x63, 0x0b, 0x9d, 0x02, 0x35, 0xc1, 0x30, 0x99, 0x73, 0x68, 0xed, 0x93, 0x16, - 0xb1, 0xb8, 0xcb, 0xe4, 0x11, 0x12, 0x5b, 0x6f, 0xca, 0x71, 0x14, 0x5b, 0x54, 0x5e, 0x3d, 0x38, - 0x2c, 0x4d, 0x3d, 0x39, 0x2c, 0x4d, 0xfd, 0x76, 0x58, 0x9a, 0xfa, 0x3a, 0x28, 0x29, 0x07, 0x41, - 0x49, 0x79, 0x12, 0x94, 0x94, 0xdf, 0x83, 0x92, 0xf2, 0xed, 0x1f, 0xa5, 0xa9, 0x4f, 0x73, 0x9d, - 0x95, 0x7f, 0x03, 0x00, 0x00, 0xff, 0xff, 0x61, 0xfc, 0xd4, 0x31, 0x3f, 0x13, 0x00, 0x00, + // 1381 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x58, 0xcf, 0x6f, 0x1b, 0xc5, + 0x17, 0xcf, 0xda, 0x4e, 0x9a, 0x8e, 0xd3, 0xa6, 0xdf, 0x69, 0xd5, 0xba, 0xe9, 0xb7, 0xde, 0x68, + 0x41, 0xa8, 0x45, 0x65, 0x4d, 0x42, 0xa8, 0xa8, 0x10, 0xa0, 0xd8, 0xa8, 0xb4, 0xa2, 0x6e, 0xc3, + 0xd4, 0x8d, 0xf8, 0x25, 0xc4, 0x64, 0x3d, 0x75, 0xa6, 0xf1, 0xfe, 0xd0, 0xcc, 0xd8, 0x22, 0x95, + 0x90, 0x38, 0x71, 0x85, 0x0b, 0x67, 0x04, 0xff, 0x04, 0xe7, 0x22, 0x21, 0xf5, 0xd8, 0x1b, 0x3d, + 0x59, 0x74, 0xe1, 0x86, 0xf8, 0x07, 0x2a, 0x0e, 0x68, 0x66, 0xc7, 0xeb, 0x5d, 0xdb, 0xeb, 0xc4, + 0x6d, 0x5a, 0xc4, 0xcd, 0x9e, 0xf9, 0xbc, 0xcf, 0xe7, 0xbd, 0x37, 0x6f, 0xde, 0xcc, 0x2c, 0xb8, + 0xb4, 0xf3, 0x06, 0xb7, 0xa9, 0x5f, 0xd9, 0xe9, 0x6c, 0x11, 0xe6, 0x11, 0x41, 0x78, 0x25, 0xd8, + 0x69, 0x55, 0x70, 0x40, 0x79, 0x05, 0x77, 0x84, 0xcf, 0x1d, 0xdc, 0xa6, 0x5e, 0xab, 0xd2, 0x5d, + 0xa9, 0xb4, 0x88, 0x47, 0x18, 0x16, 0xa4, 0x69, 0x07, 0xcc, 0x17, 0x3e, 0x3c, 0x1f, 0x99, 0xda, + 0x03, 0x53, 0x3b, 0xd8, 0x69, 0xd9, 0xd2, 0xd4, 0x4e, 0x98, 0xda, 0xdd, 0x95, 0xa5, 0x57, 0x5a, + 0x54, 0x6c, 0x77, 0xb6, 0x6c, 0xc7, 0x77, 0x2b, 0x2d, 0xbf, 0xe5, 0x57, 0x14, 0xc3, 0x56, 0xe7, + 0xb6, 0xfa, 0xa7, 0xfe, 0xa8, 0x5f, 0x11, 0xf3, 0xd2, 0x9a, 0x76, 0x0a, 0x07, 0xd4, 0xc5, 0xce, + 0x36, 0xf5, 0x08, 0xdb, 0xed, 0xbb, 0x55, 0x61, 0x84, 0xfb, 0x1d, 0xe6, 0x90, 0x61, 0x7f, 0x26, + 0x5a, 0xf1, 0x8a, 0x4b, 0x04, 0x1e, 0x13, 0xc5, 0x52, 0x25, 0xcb, 0x8a, 0x75, 0x3c, 0x41, 0xdd, + 0x51, 0x99, 0x8b, 0x7b, 0x19, 0x70, 0x67, 0x9b, 0xb8, 0x78, 0xc4, 0xee, 0xb5, 0x2c, 0xbb, 0x8e, + 0xa0, 0xed, 0x0a, 0xf5, 0x04, 0x17, 0x6c, 0xc4, 0xe8, 0x42, 0xe6, 0xf2, 0x8c, 0x89, 0xc5, 0xfa, + 0xce, 0x00, 0x67, 0x6a, 0xcc, 0xe7, 0x7c, 0x93, 0x30, 0x4e, 0x7d, 0xef, 0xc6, 0xd6, 0x1d, 0xe2, + 0x08, 0x44, 0x6e, 0x13, 0x46, 0x3c, 0x87, 0xc0, 0x65, 0x50, 0xd8, 0xa1, 0x5e, 0xb3, 0x64, 0x2c, + 0x1b, 0xe7, 0x0e, 0x57, 0x17, 0xee, 0xf7, 0xcc, 0x99, 0xb0, 0x67, 0x16, 0xde, 0xa7, 0x5e, 0x13, + 0xa9, 0x19, 0x89, 0xf0, 0xb0, 0x4b, 0x4a, 0xb9, 0x34, 0xe2, 0x3a, 0x76, 0x09, 0x52, 0x33, 0x70, + 0x15, 0x00, 0x1c, 0x50, 0x2d, 0x50, 0xca, 0x2b, 0x1c, 0xd4, 0x38, 0xb0, 0xbe, 0x71, 0x55, 0xcf, + 0xa0, 0x04, 0xca, 0xfa, 0x35, 0x07, 0x4e, 0x5d, 0xf1, 0x19, 0xbd, 0xeb, 0x7b, 0x02, 0xb7, 0x37, + 0xfc, 0xe6, 0xba, 0x2e, 0x0f, 0xc2, 0xe0, 0xe7, 0x60, 0x5e, 0x2e, 0x4d, 0x13, 0x0b, 0xac, 0xfc, + 0x2a, 0xae, 0xbe, 0x6a, 0xeb, 0xc2, 0x4a, 0x66, 0x6a, 0x50, 0x5a, 0x12, 0x6d, 0x77, 0x57, 0xec, + 0x28, 0xb8, 0x3a, 0x11, 0x78, 0xa0, 0x3f, 0x18, 0x43, 0x31, 0x2b, 0xdc, 0x06, 0x05, 0x1e, 0x10, + 0x47, 0xc5, 0x54, 0x5c, 0xbd, 0x6c, 0xef, 0xbb, 0x6c, 0xed, 0x0c, 0x9f, 0x6f, 0x06, 0xc4, 0x19, + 0xe4, 0x46, 0xfe, 0x43, 0x4a, 0x01, 0x06, 0x60, 0x8e, 0x0b, 0x2c, 0x3a, 0x5c, 0xe5, 0xa5, 0xb8, + 0x7a, 0xe5, 0x00, 0xb4, 0x14, 0x5f, 0xf5, 0xa8, 0x56, 0x9b, 0x8b, 0xfe, 0x23, 0xad, 0x63, 0x7d, + 0x93, 0x07, 0xcb, 0x19, 0x96, 0x35, 0xdf, 0x6b, 0x52, 0x41, 0x7d, 0x0f, 0x5e, 0x01, 0x05, 0xb1, + 0x1b, 0x10, 0xbd, 0xec, 0x6b, 0x7d, 0xc7, 0x1b, 0xbb, 0x01, 0x79, 0xdc, 0x33, 0x5f, 0xdc, 0xcb, + 0x5e, 0xe2, 0x90, 0x62, 0x80, 0x9b, 0x71, 0x80, 0x51, 0x81, 0xbc, 0x9d, 0x76, 0xeb, 0x71, 0xcf, + 0x9c, 0x58, 0xb0, 0x76, 0xcc, 0x99, 0x0e, 0x03, 0x76, 0x01, 0x6c, 0x63, 0x2e, 0x1a, 0x0c, 0x7b, + 0x3c, 0xd2, 0xa4, 0x2e, 0xd1, 0x49, 0x7c, 0x79, 0x7f, 0xe5, 0x20, 0x2d, 0xaa, 0x4b, 0xda, 0x1f, + 0x78, 0x6d, 0x84, 0x0d, 0x8d, 0x51, 0x80, 0x2f, 0x81, 0x39, 0x46, 0x30, 0xf7, 0xbd, 0x52, 0x41, + 0xc5, 0x13, 0xa7, 0x19, 0xa9, 0x51, 0xa4, 0x67, 0xe1, 0x79, 0x70, 0xc8, 0x25, 0x9c, 0xe3, 0x16, + 0x29, 0xcd, 0x2a, 0xe0, 0xa2, 0x06, 0x1e, 0xaa, 0x47, 0xc3, 0xa8, 0x3f, 0x6f, 0xfd, 0x61, 0x80, + 0x33, 0x19, 0x19, 0xbd, 0x46, 0xb9, 0x80, 0x9f, 0x8e, 0xd4, 0xbb, 0xbd, 0xbf, 0x00, 0xa5, 0xb5, + 0xaa, 0xf6, 0x63, 0x5a, 0x7b, 0xbe, 0x3f, 0x92, 0xa8, 0xf5, 0x16, 0x98, 0xa5, 0x82, 0xb8, 0x72, + 0x7d, 0xf2, 0xe7, 0x8a, 0xab, 0xd5, 0xa7, 0x2f, 0xc0, 0xea, 0x11, 0x2d, 0x37, 0x7b, 0x55, 0x12, + 0xa3, 0x88, 0xdf, 0xfa, 0x3b, 0x97, 0x19, 0xa6, 0xdc, 0x10, 0xf0, 0x6b, 0x03, 0x1c, 0x55, 0x7f, + 0x1b, 0x98, 0xb5, 0x88, 0xec, 0x41, 0x3a, 0xda, 0x69, 0xf6, 0xdf, 0x84, 0x5e, 0x56, 0x3d, 0xa9, + 0xdd, 0x3a, 0x7a, 0x33, 0xa5, 0x82, 0x86, 0x54, 0xe1, 0x0a, 0x28, 0xba, 0xd4, 0x43, 0x24, 0x68, + 0x53, 0x07, 0x47, 0x75, 0x3b, 0x5b, 0x5d, 0x0c, 0x7b, 0x66, 0xb1, 0x3e, 0x18, 0x46, 0x49, 0x0c, + 0x7c, 0x1d, 0x14, 0x5d, 0xfc, 0x45, 0x6c, 0x92, 0x57, 0x26, 0xc7, 0xb5, 0x5e, 0xb1, 0x3e, 0x98, + 0x42, 0x49, 0x1c, 0xbc, 0x03, 0xca, 0x42, 0xc9, 0xd6, 0x36, 0x6e, 0xdd, 0x12, 0xb4, 0x4d, 0xef, + 0x62, 0x59, 0x68, 0x1b, 0x84, 0x39, 0xc4, 0x13, 0xb2, 0x76, 0x0a, 0x8a, 0xc9, 0x0a, 0x7b, 0x66, + 0xb9, 0x31, 0x11, 0x89, 0xf6, 0x60, 0xb2, 0xee, 0xe5, 0xc1, 0xd9, 0x89, 0x1d, 0x03, 0x5e, 0x06, + 0xd0, 0xdf, 0xe2, 0x84, 0x75, 0x49, 0xf3, 0xbd, 0xe8, 0x98, 0x90, 0xfd, 0x5a, 0xae, 0x41, 0xbe, + 0x7a, 0x52, 0x6e, 0x91, 0x1b, 0x23, 0xb3, 0x68, 0x8c, 0x05, 0x74, 0xc0, 0x11, 0xb9, 0x71, 0xa2, + 0x2c, 0x53, 0x7d, 0x34, 0x4c, 0xb7, 0x2b, 0xff, 0x17, 0xf6, 0xcc, 0x23, 0xd7, 0x92, 0x24, 0x28, + 0xcd, 0x09, 0xd7, 0xc1, 0xa2, 0xd3, 0x61, 0x8c, 0x78, 0x62, 0x28, 0xeb, 0xa7, 0x74, 0xd6, 0x17, + 0x6b, 0xe9, 0x69, 0x34, 0x8c, 0x97, 0x14, 0x4d, 0xc2, 0x29, 0x23, 0xcd, 0x98, 0xa2, 0x90, 0xa6, + 0x78, 0x37, 0x3d, 0x8d, 0x86, 0xf1, 0xd0, 0x05, 0xa6, 0x66, 0xcd, 0x5c, 0xc1, 0x59, 0x45, 0xf9, + 0x42, 0xd8, 0x33, 0xcd, 0xda, 0x64, 0x28, 0xda, 0x8b, 0xcb, 0xfa, 0x33, 0x07, 0x40, 0x9d, 0x08, + 0x46, 0x1d, 0xb5, 0x63, 0xd6, 0x52, 0x5d, 0x7a, 0x79, 0xa8, 0x4b, 0x1f, 0xd3, 0x48, 0x75, 0xf5, + 0x49, 0x74, 0x64, 0x0c, 0xe6, 0x7c, 0xb5, 0x33, 0xf4, 0xba, 0xbc, 0x35, 0xc5, 0xf6, 0x8a, 0x4f, + 0xcb, 0x98, 0xb8, 0x0a, 0x64, 0xf3, 0xd3, 0x5b, 0x4d, 0x13, 0xc3, 0x8f, 0x40, 0x21, 0xf0, 0x9b, + 0xfd, 0x33, 0xed, 0xcd, 0x29, 0x04, 0x36, 0xfc, 0x26, 0x4f, 0xd1, 0xcf, 0xcb, 0x88, 0xe4, 0x28, + 0x52, 0x94, 0x90, 0x82, 0xf9, 0xfe, 0x75, 0x4e, 0xad, 0x56, 0x71, 0xf5, 0x9d, 0x29, 0xe8, 0x91, + 0x36, 0x4d, 0x49, 0x2c, 0xc8, 0xce, 0xd8, 0x9f, 0x41, 0x31, 0xbd, 0xf5, 0x57, 0x0e, 0x2c, 0x68, + 0x60, 0xb4, 0x41, 0xfe, 0xe5, 0x7c, 0x47, 0xe7, 0xfa, 0x33, 0xcb, 0x77, 0x44, 0xff, 0x4c, 0xf3, + 0x1d, 0x49, 0x64, 0xe5, 0xfb, 0xfb, 0x1c, 0x80, 0xa3, 0x05, 0x06, 0x3d, 0x30, 0x17, 0xb5, 0xb6, + 0x03, 0x3e, 0x0e, 0xe2, 0x93, 0x5b, 0x77, 0x7e, 0xad, 0x22, 0xaf, 0xab, 0xae, 0xd2, 0xbf, 0x3e, + 0xb8, 0xd6, 0xc6, 0xd7, 0xc5, 0x7a, 0x3c, 0x83, 0x12, 0x28, 0x48, 0x40, 0x31, 0xb2, 0xde, 0xc4, + 0xed, 0x4e, 0xff, 0x1a, 0x32, 0xf1, 0x94, 0xb6, 0xfb, 0x61, 0xdb, 0x1f, 0x74, 0xb0, 0x27, 0xa8, + 0xd8, 0x1d, 0x9c, 0x17, 0x8d, 0x01, 0x15, 0x4a, 0xf2, 0x5a, 0x3f, 0x0e, 0x67, 0x28, 0xaa, 0xcb, + 0xff, 0x42, 0x86, 0xb6, 0xc1, 0x82, 0xee, 0x6e, 0x4f, 0x93, 0xa2, 0x13, 0x5a, 0x65, 0xa1, 0x96, + 0xe0, 0x42, 0x29, 0x66, 0xeb, 0x67, 0x03, 0x1c, 0x1b, 0x6e, 0x23, 0x43, 0x2e, 0x1b, 0xfb, 0x72, + 0xf9, 0x2e, 0x80, 0x51, 0xc0, 0xeb, 0x5d, 0xc2, 0x70, 0x8b, 0x44, 0x8e, 0xe7, 0x9e, 0xc8, 0xf1, + 0xf8, 0x9a, 0xd9, 0x18, 0x61, 0x44, 0x63, 0x54, 0xac, 0x5f, 0xd2, 0x41, 0x44, 0xeb, 0xfc, 0x24, + 0x41, 0x7c, 0x09, 0x8e, 0xeb, 0xec, 0x1c, 0x40, 0x14, 0x67, 0xb4, 0xd8, 0xf1, 0xda, 0x28, 0x25, + 0x1a, 0xa7, 0x63, 0xfd, 0x94, 0x03, 0x27, 0xc6, 0x35, 0x5d, 0x58, 0xd7, 0xcf, 0xc6, 0x28, 0x8a, + 0x4b, 0xc9, 0x67, 0xe3, 0xe3, 0x9e, 0x79, 0x7e, 0xe2, 0x9b, 0xa0, 0x4f, 0x98, 0x78, 0x63, 0x7e, + 0x08, 0x4a, 0xa9, 0x2c, 0x26, 0xce, 0x4f, 0x7d, 0x81, 0xfb, 0x7f, 0xd8, 0x33, 0x4b, 0x8d, 0x0c, + 0x0c, 0xca, 0xb4, 0x96, 0x0f, 0x8d, 0x31, 0x55, 0xf0, 0x64, 0xe5, 0x7b, 0x72, 0x8a, 0x0a, 0xb8, + 0x37, 0x9a, 0xb9, 0xa8, 0x0a, 0x0e, 0x38, 0x73, 0x9f, 0x80, 0xd3, 0xe9, 0x85, 0x1b, 0x4d, 0xdd, + 0xd9, 0xb0, 0x67, 0x9e, 0xae, 0x65, 0x81, 0x50, 0xb6, 0x7d, 0x56, 0xf5, 0xe5, 0x9f, 0x53, 0xf5, + 0xfd, 0x90, 0x03, 0xb3, 0xea, 0xca, 0xf8, 0x1c, 0xbe, 0x19, 0x6c, 0xa6, 0xbe, 0x19, 0xac, 0x4d, + 0xd1, 0x82, 0x95, 0x87, 0x99, 0x5f, 0x08, 0x3e, 0x1b, 0xfa, 0x42, 0x70, 0x71, 0x6a, 0xe6, 0xc9, + 0xdf, 0x03, 0x2e, 0x81, 0xc3, 0xb1, 0x03, 0xf0, 0x82, 0x3c, 0xed, 0xf5, 0x5d, 0xd8, 0x50, 0x6b, + 0x1f, 0x3f, 0x1d, 0xe3, 0x4b, 0x70, 0x8c, 0xb0, 0x28, 0x28, 0x26, 0x14, 0xa6, 0x33, 0x96, 0x68, + 0x4e, 0xda, 0xc4, 0x11, 0x3e, 0xd3, 0x47, 0x48, 0x8c, 0xbe, 0xa9, 0xc7, 0x51, 0x8c, 0xa8, 0x9e, + 0xbb, 0xff, 0xa8, 0x3c, 0xf3, 0xe0, 0x51, 0x79, 0xe6, 0xe1, 0xa3, 0xf2, 0xcc, 0x57, 0x61, 0xd9, + 0xb8, 0x1f, 0x96, 0x8d, 0x07, 0x61, 0xd9, 0x78, 0x18, 0x96, 0x8d, 0xdf, 0xc2, 0xb2, 0xf1, 0xed, + 0xef, 0xe5, 0x99, 0x8f, 0x73, 0xdd, 0x95, 0x7f, 0x02, 0x00, 0x00, 0xff, 0xff, 0x5d, 0x20, 0x64, + 0x54, 0x9f, 0x14, 0x00, 0x00, } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/generated.proto b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/generated.proto index 4953624a..ba496588 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/generated.proto @@ -26,7 +26,6 @@ import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; import "k8s.io/kubernetes/pkg/api/v1/generated.proto"; // Package-wide variables from generator "generated". @@ -34,7 +33,7 @@ option go_package = "v1"; // CrossVersionObjectReference contains enough information to let you identify the referred resource. message CrossVersionObjectReference { - // Kind of the referent; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds" + // Kind of the referent; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds" optional string kind = 1; // Name of the referent; More info: http://kubernetes.io/docs/user-guide/identifiers#names @@ -47,11 +46,11 @@ message CrossVersionObjectReference { // configuration of a horizontal pod autoscaler. message HorizontalPodAutoscaler { - // Standard object metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata + // Standard object metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; - // behaviour of autoscaler. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. + // behaviour of autoscaler. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. // +optional optional HorizontalPodAutoscalerSpec spec = 2; @@ -60,6 +59,30 @@ message HorizontalPodAutoscaler { optional HorizontalPodAutoscalerStatus status = 3; } +// HorizontalPodAutoscalerCondition describes the state of +// a HorizontalPodAutoscaler at a certain point. +message HorizontalPodAutoscalerCondition { + // type describes the current condition + optional string type = 1; + + // status is the status of the condition (True, False, Unknown) + optional string status = 2; + + // lastTransitionTime is the last time the condition transitioned from + // one status to another + // +optional + optional k8s.io.apimachinery.pkg.apis.meta.v1.Time lastTransitionTime = 3; + + // reason is the reason for the condition's last transition. + // +optional + optional string reason = 4; + + // message is a human-readable explanation containing details about + // the transition + // +optional + optional string message = 5; +} + // list of horizontal pod autoscaler objects. message HorizontalPodAutoscalerList { // Standard list metadata. @@ -230,7 +253,7 @@ message ResourceMetricSource { // +optional optional int32 targetAverageUtilization = 2; - // targetAverageValue is the the target value of the average of the + // targetAverageValue is the target value of the average of the // resource metric across all relevant pods, as a raw value (instead of as // a percentage of the request), similar to the "pods" metric source type. // +optional @@ -254,7 +277,7 @@ message ResourceMetricStatus { // +optional optional int32 currentAverageUtilization = 2; - // currentAverageValue is the the current value of the average of the + // currentAverageValue is the current value of the average of the // resource metric across all relevant pods, as a raw value (instead of as // a percentage of the request), similar to the "pods" metric source type. // It will always be set, regardless of the corresponding metric specification. @@ -263,15 +286,15 @@ message ResourceMetricStatus { // Scale represents a scaling request for a resource. message Scale { - // Standard object metadata; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata. + // Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; - // defines the behavior of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. + // defines the behavior of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. // +optional optional ScaleSpec spec = 2; - // current status of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. Read-only. + // current status of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. Read-only. // +optional optional ScaleStatus status = 3; } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/types.generated.go b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/types.generated.go index 8be25448..c5de82b2 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/types.generated.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/types.generated.go @@ -4278,6 +4278,423 @@ func (x *MetricStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } +func (x HorizontalPodAutoscalerConditionType) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x)) + } +} + +func (x *HorizontalPodAutoscalerConditionType) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + *((*string)(x)) = r.DecodeString() + } +} + +func (x *HorizontalPodAutoscalerCondition) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [5]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[2] = true + yyq2[3] = x.Reason != "" + yyq2[4] = x.Message != "" + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(5) + } else { + yynn2 = 2 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + x.Type.CodecEncodeSelf(e) + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("type")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + x.Type.CodecEncodeSelf(e) + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yysf7 := &x.Status + yysf7.CodecEncodeSelf(e) + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("status")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yysf8 := &x.Status + yysf8.CodecEncodeSelf(e) + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yy10 := &x.LastTransitionTime + yym11 := z.EncBinary() + _ = yym11 + if false { + } else if z.HasExtensions() && z.EncExt(yy10) { + } else if yym11 { + z.EncBinaryMarshal(yy10) + } else if !yym11 && z.IsJSONHandle() { + z.EncJSONMarshal(yy10) + } else { + z.EncFallback(yy10) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("lastTransitionTime")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy12 := &x.LastTransitionTime + yym13 := z.EncBinary() + _ = yym13 + if false { + } else if z.HasExtensions() && z.EncExt(yy12) { + } else if yym13 { + z.EncBinaryMarshal(yy12) + } else if !yym13 && z.IsJSONHandle() { + z.EncJSONMarshal(yy12) + } else { + z.EncFallback(yy12) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[3] { + yym15 := z.EncBinary() + _ = yym15 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Reason)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[3] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("reason")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym16 := z.EncBinary() + _ = yym16 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Reason)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[4] { + yym18 := z.EncBinary() + _ = yym18 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Message)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[4] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("message")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym19 := z.EncBinary() + _ = yym19 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Message)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *HorizontalPodAutoscalerCondition) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *HorizontalPodAutoscalerCondition) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "type": + if r.TryDecodeAsNil() { + x.Type = "" + } else { + yyv4 := &x.Type + yyv4.CodecDecodeSelf(d) + } + case "status": + if r.TryDecodeAsNil() { + x.Status = "" + } else { + yyv5 := &x.Status + yyv5.CodecDecodeSelf(d) + } + case "lastTransitionTime": + if r.TryDecodeAsNil() { + x.LastTransitionTime = pkg1_v1.Time{} + } else { + yyv6 := &x.LastTransitionTime + yym7 := z.DecBinary() + _ = yym7 + if false { + } else if z.HasExtensions() && z.DecExt(yyv6) { + } else if yym7 { + z.DecBinaryUnmarshal(yyv6) + } else if !yym7 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv6) + } else { + z.DecFallback(yyv6, false) + } + } + case "reason": + if r.TryDecodeAsNil() { + x.Reason = "" + } else { + yyv8 := &x.Reason + yym9 := z.DecBinary() + _ = yym9 + if false { + } else { + *((*string)(yyv8)) = r.DecodeString() + } + } + case "message": + if r.TryDecodeAsNil() { + x.Message = "" + } else { + yyv10 := &x.Message + yym11 := z.DecBinary() + _ = yym11 + if false { + } else { + *((*string)(yyv10)) = r.DecodeString() + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *HorizontalPodAutoscalerCondition) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj12 int + var yyb12 bool + var yyhl12 bool = l >= 0 + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Type = "" + } else { + yyv13 := &x.Type + yyv13.CodecDecodeSelf(d) + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Status = "" + } else { + yyv14 := &x.Status + yyv14.CodecDecodeSelf(d) + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.LastTransitionTime = pkg1_v1.Time{} + } else { + yyv15 := &x.LastTransitionTime + yym16 := z.DecBinary() + _ = yym16 + if false { + } else if z.HasExtensions() && z.DecExt(yyv15) { + } else if yym16 { + z.DecBinaryUnmarshal(yyv15) + } else if !yym16 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv15) + } else { + z.DecFallback(yyv15, false) + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Reason = "" + } else { + yyv17 := &x.Reason + yym18 := z.DecBinary() + _ = yym18 + if false { + } else { + *((*string)(yyv17)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Message = "" + } else { + yyv19 := &x.Message + yym20 := z.DecBinary() + _ = yym20 + if false { + } else { + *((*string)(yyv19)) = r.DecodeString() + } + } + for { + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj12-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + func (x *ObjectMetricStatus) CodecEncodeSelf(e *codec1978.Encoder) { var h codecSelfer1234 z, r := codec1978.GenHelperEncoder(e) diff --git a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/types.go b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/types.go index 81402bac..18530c10 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/types.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/types.go @@ -24,7 +24,7 @@ import ( // CrossVersionObjectReference contains enough information to let you identify the referred resource. type CrossVersionObjectReference struct { - // Kind of the referent; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds" + // Kind of the referent; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds" Kind string `json:"kind" protobuf:"bytes,1,opt,name=kind"` // Name of the referent; More info: http://kubernetes.io/docs/user-guide/identifiers#names Name string `json:"name" protobuf:"bytes,2,opt,name=name"` @@ -77,11 +77,11 @@ type HorizontalPodAutoscalerStatus struct { // configuration of a horizontal pod autoscaler. type HorizontalPodAutoscaler struct { metav1.TypeMeta `json:",inline"` - // Standard object metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata + // Standard object metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` - // behaviour of autoscaler. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. + // behaviour of autoscaler. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. // +optional Spec HorizontalPodAutoscalerSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` @@ -104,15 +104,15 @@ type HorizontalPodAutoscalerList struct { // Scale represents a scaling request for a resource. type Scale struct { metav1.TypeMeta `json:",inline"` - // Standard object metadata; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata. + // Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` - // defines the behavior of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. + // defines the behavior of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. // +optional Spec ScaleSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` - // current status of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. Read-only. + // current status of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. Read-only. // +optional Status ScaleStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } @@ -221,7 +221,7 @@ type ResourceMetricSource struct { // the requested value of the resource for the pods. // +optional TargetAverageUtilization *int32 `json:"targetAverageUtilization,omitempty" protobuf:"varint,2,opt,name=targetAverageUtilization"` - // targetAverageValue is the the target value of the average of the + // targetAverageValue is the target value of the average of the // resource metric across all relevant pods, as a raw value (instead of as // a percentage of the request), similar to the "pods" metric source type. // +optional @@ -251,6 +251,42 @@ type MetricStatus struct { Resource *ResourceMetricStatus `json:"resource,omitempty" protobuf:"bytes,4,opt,name=resource"` } +// HorizontalPodAutoscalerConditionType are the valid conditions of +// a HorizontalPodAutoscaler. +type HorizontalPodAutoscalerConditionType string + +var ( + // ScalingActive indicates that the HPA controller is able to scale if necessary: + // it's correctly configured, can fetch the desired metrics, and isn't disabled. + ScalingActive HorizontalPodAutoscalerConditionType = "ScalingActive" + // AbleToScale indicates a lack of transient issues which prevent scaling from occuring, + // such as being in a backoff window, or being unable to access/update the target scale. + AbleToScale HorizontalPodAutoscalerConditionType = "AbleToScale" + // ScalingLimited indicates that the calculated scale based on metrics would be above or + // below the range for the HPA, and has thus been capped. + ScalingLimited HorizontalPodAutoscalerConditionType = "ScalingLimited" +) + +// HorizontalPodAutoscalerCondition describes the state of +// a HorizontalPodAutoscaler at a certain point. +type HorizontalPodAutoscalerCondition struct { + // type describes the current condition + Type HorizontalPodAutoscalerConditionType `json:"type" protobuf:"bytes,1,name=type"` + // status is the status of the condition (True, False, Unknown) + Status v1.ConditionStatus `json:"status" protobuf:"bytes,2,name=status"` + // lastTransitionTime is the last time the condition transitioned from + // one status to another + // +optional + LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty" protobuf:"bytes,3,opt,name=lastTransitionTime"` + // reason is the reason for the condition's last transition. + // +optional + Reason string `json:"reason,omitempty" protobuf:"bytes,4,opt,name=reason"` + // message is a human-readable explanation containing details about + // the transition + // +optional + Message string `json:"message,omitempty" protobuf:"bytes,5,opt,name=message"` +} + // ObjectMetricStatus indicates the current value of a metric describing a // kubernetes object (for example, hits-per-second on an Ingress object). type ObjectMetricStatus struct { @@ -288,7 +324,7 @@ type ResourceMetricStatus struct { // specification. // +optional CurrentAverageUtilization *int32 `json:"currentAverageUtilization,omitempty" protobuf:"bytes,2,opt,name=currentAverageUtilization"` - // currentAverageValue is the the current value of the average of the + // currentAverageValue is the current value of the average of the // resource metric across all relevant pods, as a raw value (instead of as // a percentage of the request), similar to the "pods" metric source type. // It will always be set, regardless of the corresponding metric specification. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/types_swagger_doc_generated.go b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/types_swagger_doc_generated.go index 01d205f8..7f84c2d9 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/types_swagger_doc_generated.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/types_swagger_doc_generated.go @@ -29,7 +29,7 @@ package v1 // AUTO-GENERATED FUNCTIONS START HERE var map_CrossVersionObjectReference = map[string]string{ "": "CrossVersionObjectReference contains enough information to let you identify the referred resource.", - "kind": "Kind of the referent; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds\"", + "kind": "Kind of the referent; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds\"", "name": "Name of the referent; More info: http://kubernetes.io/docs/user-guide/identifiers#names", "apiVersion": "API version of the referent", } @@ -40,8 +40,8 @@ func (CrossVersionObjectReference) SwaggerDoc() map[string]string { var map_HorizontalPodAutoscaler = map[string]string{ "": "configuration of a horizontal pod autoscaler.", - "metadata": "Standard object metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", - "spec": "behaviour of autoscaler. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status.", + "metadata": "Standard object metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "behaviour of autoscaler. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status.", "status": "current information about the autoscaler.", } @@ -49,6 +49,19 @@ func (HorizontalPodAutoscaler) SwaggerDoc() map[string]string { return map_HorizontalPodAutoscaler } +var map_HorizontalPodAutoscalerCondition = map[string]string{ + "": "HorizontalPodAutoscalerCondition describes the state of a HorizontalPodAutoscaler at a certain point.", + "type": "type describes the current condition", + "status": "status is the status of the condition (True, False, Unknown)", + "lastTransitionTime": "lastTransitionTime is the last time the condition transitioned from one status to another", + "reason": "reason is the reason for the condition's last transition.", + "message": "message is a human-readable explanation containing details about the transition", +} + +func (HorizontalPodAutoscalerCondition) SwaggerDoc() map[string]string { + return map_HorizontalPodAutoscalerCondition +} + var map_HorizontalPodAutoscalerList = map[string]string{ "": "list of horizontal pod autoscaler objects.", "metadata": "Standard list metadata.", @@ -154,7 +167,7 @@ var map_ResourceMetricSource = map[string]string{ "": "ResourceMetricSource indicates how to scale on a resource metric known to Kubernetes, as specified in requests and limits, describing each pod in the current scale target (e.g. CPU or memory). The values will be averaged together before being compared to the target. Such metrics are built in to Kubernetes, and have special scaling options on top of those available to normal per-pod metrics using the \"pods\" source. Only one \"target\" type should be set.", "name": "name is the name of the resource in question.", "targetAverageUtilization": "targetAverageUtilization is the target value of the average of the resource metric across all relevant pods, represented as a percentage of the requested value of the resource for the pods.", - "targetAverageValue": "targetAverageValue is the the target value of the average of the resource metric across all relevant pods, as a raw value (instead of as a percentage of the request), similar to the \"pods\" metric source type.", + "targetAverageValue": "targetAverageValue is the target value of the average of the resource metric across all relevant pods, as a raw value (instead of as a percentage of the request), similar to the \"pods\" metric source type.", } func (ResourceMetricSource) SwaggerDoc() map[string]string { @@ -165,7 +178,7 @@ var map_ResourceMetricStatus = map[string]string{ "": "ResourceMetricStatus indicates the current value of a resource metric known to Kubernetes, as specified in requests and limits, describing each pod in the current scale target (e.g. CPU or memory). Such metrics are built in to Kubernetes, and have special scaling options on top of those available to normal per-pod metrics using the \"pods\" source.", "name": "name is the name of the resource in question.", "currentAverageUtilization": "currentAverageUtilization is the current value of the average of the resource metric across all relevant pods, represented as a percentage of the requested value of the resource for the pods. It will only be present if `targetAverageValue` was set in the corresponding metric specification.", - "currentAverageValue": "currentAverageValue is the the current value of the average of the resource metric across all relevant pods, as a raw value (instead of as a percentage of the request), similar to the \"pods\" metric source type. It will always be set, regardless of the corresponding metric specification.", + "currentAverageValue": "currentAverageValue is the current value of the average of the resource metric across all relevant pods, as a raw value (instead of as a percentage of the request), similar to the \"pods\" metric source type. It will always be set, regardless of the corresponding metric specification.", } func (ResourceMetricStatus) SwaggerDoc() map[string]string { @@ -174,9 +187,9 @@ func (ResourceMetricStatus) SwaggerDoc() map[string]string { var map_Scale = map[string]string{ "": "Scale represents a scaling request for a resource.", - "metadata": "Standard object metadata; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata.", - "spec": "defines the behavior of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status.", - "status": "current status of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. Read-only.", + "metadata": "Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata.", + "spec": "defines the behavior of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status.", + "status": "current status of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. Read-only.", } func (Scale) SwaggerDoc() map[string]string { diff --git a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/zz_generated.conversion.go b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/zz_generated.conversion.go index 8fa6efa0..25e78690 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/zz_generated.conversion.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/zz_generated.conversion.go @@ -43,6 +43,8 @@ func RegisterConversions(scheme *runtime.Scheme) error { Convert_autoscaling_CrossVersionObjectReference_To_v1_CrossVersionObjectReference, Convert_v1_HorizontalPodAutoscaler_To_autoscaling_HorizontalPodAutoscaler, Convert_autoscaling_HorizontalPodAutoscaler_To_v1_HorizontalPodAutoscaler, + Convert_v1_HorizontalPodAutoscalerCondition_To_autoscaling_HorizontalPodAutoscalerCondition, + Convert_autoscaling_HorizontalPodAutoscalerCondition_To_v1_HorizontalPodAutoscalerCondition, Convert_v1_HorizontalPodAutoscalerList_To_autoscaling_HorizontalPodAutoscalerList, Convert_autoscaling_HorizontalPodAutoscalerList_To_v1_HorizontalPodAutoscalerList, Convert_v1_HorizontalPodAutoscalerSpec_To_autoscaling_HorizontalPodAutoscalerSpec, @@ -120,6 +122,34 @@ func autoConvert_autoscaling_HorizontalPodAutoscaler_To_v1_HorizontalPodAutoscal return nil } +func autoConvert_v1_HorizontalPodAutoscalerCondition_To_autoscaling_HorizontalPodAutoscalerCondition(in *HorizontalPodAutoscalerCondition, out *autoscaling.HorizontalPodAutoscalerCondition, s conversion.Scope) error { + out.Type = autoscaling.HorizontalPodAutoscalerConditionType(in.Type) + out.Status = autoscaling.ConditionStatus(in.Status) + out.LastTransitionTime = in.LastTransitionTime + out.Reason = in.Reason + out.Message = in.Message + return nil +} + +// Convert_v1_HorizontalPodAutoscalerCondition_To_autoscaling_HorizontalPodAutoscalerCondition is an autogenerated conversion function. +func Convert_v1_HorizontalPodAutoscalerCondition_To_autoscaling_HorizontalPodAutoscalerCondition(in *HorizontalPodAutoscalerCondition, out *autoscaling.HorizontalPodAutoscalerCondition, s conversion.Scope) error { + return autoConvert_v1_HorizontalPodAutoscalerCondition_To_autoscaling_HorizontalPodAutoscalerCondition(in, out, s) +} + +func autoConvert_autoscaling_HorizontalPodAutoscalerCondition_To_v1_HorizontalPodAutoscalerCondition(in *autoscaling.HorizontalPodAutoscalerCondition, out *HorizontalPodAutoscalerCondition, s conversion.Scope) error { + out.Type = HorizontalPodAutoscalerConditionType(in.Type) + out.Status = api_v1.ConditionStatus(in.Status) + out.LastTransitionTime = in.LastTransitionTime + out.Reason = in.Reason + out.Message = in.Message + return nil +} + +// Convert_autoscaling_HorizontalPodAutoscalerCondition_To_v1_HorizontalPodAutoscalerCondition is an autogenerated conversion function. +func Convert_autoscaling_HorizontalPodAutoscalerCondition_To_v1_HorizontalPodAutoscalerCondition(in *autoscaling.HorizontalPodAutoscalerCondition, out *HorizontalPodAutoscalerCondition, s conversion.Scope) error { + return autoConvert_autoscaling_HorizontalPodAutoscalerCondition_To_v1_HorizontalPodAutoscalerCondition(in, out, s) +} + func autoConvert_v1_HorizontalPodAutoscalerList_To_autoscaling_HorizontalPodAutoscalerList(in *HorizontalPodAutoscalerList, out *autoscaling.HorizontalPodAutoscalerList, s conversion.Scope) error { out.ListMeta = in.ListMeta if in.Items != nil { @@ -197,6 +227,7 @@ func autoConvert_autoscaling_HorizontalPodAutoscalerStatus_To_v1_HorizontalPodAu out.CurrentReplicas = in.CurrentReplicas out.DesiredReplicas = in.DesiredReplicas // WARNING: in.CurrentMetrics requires manual conversion: does not exist in peer-type + // WARNING: in.Conditions requires manual conversion: does not exist in peer-type return nil } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/zz_generated.deepcopy.go index db719174..94fdc46d 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/zz_generated.deepcopy.go @@ -38,6 +38,7 @@ func RegisterDeepCopies(scheme *runtime.Scheme) error { return scheme.AddGeneratedDeepCopyFuncs( conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_CrossVersionObjectReference, InType: reflect.TypeOf(&CrossVersionObjectReference{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_HorizontalPodAutoscaler, InType: reflect.TypeOf(&HorizontalPodAutoscaler{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_HorizontalPodAutoscalerCondition, InType: reflect.TypeOf(&HorizontalPodAutoscalerCondition{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_HorizontalPodAutoscalerList, InType: reflect.TypeOf(&HorizontalPodAutoscalerList{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_HorizontalPodAutoscalerSpec, InType: reflect.TypeOf(&HorizontalPodAutoscalerSpec{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_HorizontalPodAutoscalerStatus, InType: reflect.TypeOf(&HorizontalPodAutoscalerStatus{})}, @@ -86,6 +87,17 @@ func DeepCopy_v1_HorizontalPodAutoscaler(in interface{}, out interface{}, c *con } } +// DeepCopy_v1_HorizontalPodAutoscalerCondition is an autogenerated deepcopy function. +func DeepCopy_v1_HorizontalPodAutoscalerCondition(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*HorizontalPodAutoscalerCondition) + out := out.(*HorizontalPodAutoscalerCondition) + *out = *in + out.LastTransitionTime = in.LastTransitionTime.DeepCopy() + return nil + } +} + // DeepCopy_v1_HorizontalPodAutoscalerList is an autogenerated deepcopy function. func DeepCopy_v1_HorizontalPodAutoscalerList(in interface{}, out interface{}, c *conversion.Cloner) error { { diff --git a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v2alpha1/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v2alpha1/generated.pb.go index 7ad1f7a2..a2109009 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v2alpha1/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v2alpha1/generated.pb.go @@ -27,6 +27,7 @@ limitations under the License. It has these top-level messages: CrossVersionObjectReference HorizontalPodAutoscaler + HorizontalPodAutoscalerCondition HorizontalPodAutoscalerList HorizontalPodAutoscalerSpec HorizontalPodAutoscalerStatus @@ -76,59 +77,66 @@ func (m *HorizontalPodAutoscaler) Reset() { *m = HorizontalPo func (*HorizontalPodAutoscaler) ProtoMessage() {} func (*HorizontalPodAutoscaler) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{1} } +func (m *HorizontalPodAutoscalerCondition) Reset() { *m = HorizontalPodAutoscalerCondition{} } +func (*HorizontalPodAutoscalerCondition) ProtoMessage() {} +func (*HorizontalPodAutoscalerCondition) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{2} +} + func (m *HorizontalPodAutoscalerList) Reset() { *m = HorizontalPodAutoscalerList{} } func (*HorizontalPodAutoscalerList) ProtoMessage() {} func (*HorizontalPodAutoscalerList) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{2} + return fileDescriptorGenerated, []int{3} } func (m *HorizontalPodAutoscalerSpec) Reset() { *m = HorizontalPodAutoscalerSpec{} } func (*HorizontalPodAutoscalerSpec) ProtoMessage() {} func (*HorizontalPodAutoscalerSpec) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{3} + return fileDescriptorGenerated, []int{4} } func (m *HorizontalPodAutoscalerStatus) Reset() { *m = HorizontalPodAutoscalerStatus{} } func (*HorizontalPodAutoscalerStatus) ProtoMessage() {} func (*HorizontalPodAutoscalerStatus) Descriptor() ([]byte, []int) { - return fileDescriptorGenerated, []int{4} + return fileDescriptorGenerated, []int{5} } func (m *MetricSpec) Reset() { *m = MetricSpec{} } func (*MetricSpec) ProtoMessage() {} -func (*MetricSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{5} } +func (*MetricSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{6} } func (m *MetricStatus) Reset() { *m = MetricStatus{} } func (*MetricStatus) ProtoMessage() {} -func (*MetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{6} } +func (*MetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{7} } func (m *ObjectMetricSource) Reset() { *m = ObjectMetricSource{} } func (*ObjectMetricSource) ProtoMessage() {} -func (*ObjectMetricSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{7} } +func (*ObjectMetricSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{8} } func (m *ObjectMetricStatus) Reset() { *m = ObjectMetricStatus{} } func (*ObjectMetricStatus) ProtoMessage() {} -func (*ObjectMetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{8} } +func (*ObjectMetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{9} } func (m *PodsMetricSource) Reset() { *m = PodsMetricSource{} } func (*PodsMetricSource) ProtoMessage() {} -func (*PodsMetricSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{9} } +func (*PodsMetricSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{10} } func (m *PodsMetricStatus) Reset() { *m = PodsMetricStatus{} } func (*PodsMetricStatus) ProtoMessage() {} -func (*PodsMetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{10} } +func (*PodsMetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{11} } func (m *ResourceMetricSource) Reset() { *m = ResourceMetricSource{} } func (*ResourceMetricSource) ProtoMessage() {} -func (*ResourceMetricSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{11} } +func (*ResourceMetricSource) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{12} } func (m *ResourceMetricStatus) Reset() { *m = ResourceMetricStatus{} } func (*ResourceMetricStatus) ProtoMessage() {} -func (*ResourceMetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{12} } +func (*ResourceMetricStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{13} } func init() { proto.RegisterType((*CrossVersionObjectReference)(nil), "k8s.io.kubernetes.pkg.apis.autoscaling.v2alpha1.CrossVersionObjectReference") proto.RegisterType((*HorizontalPodAutoscaler)(nil), "k8s.io.kubernetes.pkg.apis.autoscaling.v2alpha1.HorizontalPodAutoscaler") + proto.RegisterType((*HorizontalPodAutoscalerCondition)(nil), "k8s.io.kubernetes.pkg.apis.autoscaling.v2alpha1.HorizontalPodAutoscalerCondition") proto.RegisterType((*HorizontalPodAutoscalerList)(nil), "k8s.io.kubernetes.pkg.apis.autoscaling.v2alpha1.HorizontalPodAutoscalerList") proto.RegisterType((*HorizontalPodAutoscalerSpec)(nil), "k8s.io.kubernetes.pkg.apis.autoscaling.v2alpha1.HorizontalPodAutoscalerSpec") proto.RegisterType((*HorizontalPodAutoscalerStatus)(nil), "k8s.io.kubernetes.pkg.apis.autoscaling.v2alpha1.HorizontalPodAutoscalerStatus") @@ -213,6 +221,48 @@ func (m *HorizontalPodAutoscaler) MarshalTo(dAtA []byte) (int, error) { return i, nil } +func (m *HorizontalPodAutoscalerCondition) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *HorizontalPodAutoscalerCondition) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.Type))) + i += copy(dAtA[i:], m.Type) + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.Status))) + i += copy(dAtA[i:], m.Status) + dAtA[i] = 0x1a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.LastTransitionTime.Size())) + n4, err := m.LastTransitionTime.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n4 + dAtA[i] = 0x22 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.Reason))) + i += copy(dAtA[i:], m.Reason) + dAtA[i] = 0x2a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(m.Message))) + i += copy(dAtA[i:], m.Message) + return i, nil +} + func (m *HorizontalPodAutoscalerList) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -231,11 +281,11 @@ func (m *HorizontalPodAutoscalerList) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) - n4, err := m.ListMeta.MarshalTo(dAtA[i:]) + n5, err := m.ListMeta.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n4 + i += n5 if len(m.Items) > 0 { for _, msg := range m.Items { dAtA[i] = 0x12 @@ -269,11 +319,11 @@ func (m *HorizontalPodAutoscalerSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ScaleTargetRef.Size())) - n5, err := m.ScaleTargetRef.MarshalTo(dAtA[i:]) + n6, err := m.ScaleTargetRef.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n5 + i += n6 if m.MinReplicas != nil { dAtA[i] = 0x10 i++ @@ -321,11 +371,11 @@ func (m *HorizontalPodAutoscalerStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.LastScaleTime.Size())) - n6, err := m.LastScaleTime.MarshalTo(dAtA[i:]) + n7, err := m.LastScaleTime.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n6 + i += n7 } dAtA[i] = 0x18 i++ @@ -345,6 +395,18 @@ func (m *HorizontalPodAutoscalerStatus) MarshalTo(dAtA []byte) (int, error) { i += n } } + if len(m.Conditions) > 0 { + for _, msg := range m.Conditions { + dAtA[i] = 0x32 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(msg.Size())) + n, err := msg.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n + } + } return i, nil } @@ -371,32 +433,32 @@ func (m *MetricSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Object.Size())) - n7, err := m.Object.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n7 - } - if m.Pods != nil { - dAtA[i] = 0x1a - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Pods.Size())) - n8, err := m.Pods.MarshalTo(dAtA[i:]) + n8, err := m.Object.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n8 } - if m.Resource != nil { - dAtA[i] = 0x22 + if m.Pods != nil { + dAtA[i] = 0x1a i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Resource.Size())) - n9, err := m.Resource.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.Pods.Size())) + n9, err := m.Pods.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n9 } + if m.Resource != nil { + dAtA[i] = 0x22 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Resource.Size())) + n10, err := m.Resource.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n10 + } return i, nil } @@ -423,32 +485,32 @@ func (m *MetricStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Object.Size())) - n10, err := m.Object.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n10 - } - if m.Pods != nil { - dAtA[i] = 0x1a - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Pods.Size())) - n11, err := m.Pods.MarshalTo(dAtA[i:]) + n11, err := m.Object.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n11 } - if m.Resource != nil { - dAtA[i] = 0x22 + if m.Pods != nil { + dAtA[i] = 0x1a i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.Resource.Size())) - n12, err := m.Resource.MarshalTo(dAtA[i:]) + i = encodeVarintGenerated(dAtA, i, uint64(m.Pods.Size())) + n12, err := m.Pods.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n12 } + if m.Resource != nil { + dAtA[i] = 0x22 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Resource.Size())) + n13, err := m.Resource.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n13 + } return i, nil } @@ -470,11 +532,11 @@ func (m *ObjectMetricSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Target.Size())) - n13, err := m.Target.MarshalTo(dAtA[i:]) + n14, err := m.Target.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n13 + i += n14 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.MetricName))) @@ -482,11 +544,11 @@ func (m *ObjectMetricSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.TargetValue.Size())) - n14, err := m.TargetValue.MarshalTo(dAtA[i:]) + n15, err := m.TargetValue.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n14 + i += n15 return i, nil } @@ -508,11 +570,11 @@ func (m *ObjectMetricStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0xa i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Target.Size())) - n15, err := m.Target.MarshalTo(dAtA[i:]) + n16, err := m.Target.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n15 + i += n16 dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(len(m.MetricName))) @@ -520,11 +582,11 @@ func (m *ObjectMetricStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.CurrentValue.Size())) - n16, err := m.CurrentValue.MarshalTo(dAtA[i:]) + n17, err := m.CurrentValue.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n16 + i += n17 return i, nil } @@ -550,11 +612,11 @@ func (m *PodsMetricSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.TargetAverageValue.Size())) - n17, err := m.TargetAverageValue.MarshalTo(dAtA[i:]) + n18, err := m.TargetAverageValue.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n17 + i += n18 return i, nil } @@ -580,11 +642,11 @@ func (m *PodsMetricStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.CurrentAverageValue.Size())) - n18, err := m.CurrentAverageValue.MarshalTo(dAtA[i:]) + n19, err := m.CurrentAverageValue.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n18 + i += n19 return i, nil } @@ -616,11 +678,11 @@ func (m *ResourceMetricSource) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.TargetAverageValue.Size())) - n19, err := m.TargetAverageValue.MarshalTo(dAtA[i:]) + n20, err := m.TargetAverageValue.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n19 + i += n20 } return i, nil } @@ -652,11 +714,11 @@ func (m *ResourceMetricStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x1a i++ i = encodeVarintGenerated(dAtA, i, uint64(m.CurrentAverageValue.Size())) - n20, err := m.CurrentAverageValue.MarshalTo(dAtA[i:]) + n21, err := m.CurrentAverageValue.MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n20 + i += n21 return i, nil } @@ -711,6 +773,22 @@ func (m *HorizontalPodAutoscaler) Size() (n int) { return n } +func (m *HorizontalPodAutoscalerCondition) Size() (n int) { + var l int + _ = l + l = len(m.Type) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.Status) + n += 1 + l + sovGenerated(uint64(l)) + l = m.LastTransitionTime.Size() + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.Reason) + n += 1 + l + sovGenerated(uint64(l)) + l = len(m.Message) + n += 1 + l + sovGenerated(uint64(l)) + return n +} + func (m *HorizontalPodAutoscalerList) Size() (n int) { var l int _ = l @@ -761,6 +839,12 @@ func (m *HorizontalPodAutoscalerStatus) Size() (n int) { n += 1 + l + sovGenerated(uint64(l)) } } + if len(m.Conditions) > 0 { + for _, e := range m.Conditions { + l = e.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + } return n } @@ -913,6 +997,20 @@ func (this *HorizontalPodAutoscaler) String() string { }, "") return s } +func (this *HorizontalPodAutoscalerCondition) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&HorizontalPodAutoscalerCondition{`, + `Type:` + fmt.Sprintf("%v", this.Type) + `,`, + `Status:` + fmt.Sprintf("%v", this.Status) + `,`, + `LastTransitionTime:` + strings.Replace(strings.Replace(this.LastTransitionTime.String(), "Time", "k8s_io_apimachinery_pkg_apis_meta_v1.Time", 1), `&`, ``, 1) + `,`, + `Reason:` + fmt.Sprintf("%v", this.Reason) + `,`, + `Message:` + fmt.Sprintf("%v", this.Message) + `,`, + `}`, + }, "") + return s +} func (this *HorizontalPodAutoscalerList) String() string { if this == nil { return "nil" @@ -947,6 +1045,7 @@ func (this *HorizontalPodAutoscalerStatus) String() string { `CurrentReplicas:` + fmt.Sprintf("%v", this.CurrentReplicas) + `,`, `DesiredReplicas:` + fmt.Sprintf("%v", this.DesiredReplicas) + `,`, `CurrentMetrics:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.CurrentMetrics), "MetricStatus", "MetricStatus", 1), `&`, ``, 1) + `,`, + `Conditions:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.Conditions), "HorizontalPodAutoscalerCondition", "HorizontalPodAutoscalerCondition", 1), `&`, ``, 1) + `,`, `}`, }, "") return s @@ -1332,6 +1431,202 @@ func (m *HorizontalPodAutoscaler) Unmarshal(dAtA []byte) error { } return nil } +func (m *HorizontalPodAutoscalerCondition) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: HorizontalPodAutoscalerCondition: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: HorizontalPodAutoscalerCondition: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Type", 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.Type = HorizontalPodAutoscalerConditionType(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Status", 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.Status = k8s_io_kubernetes_pkg_api_v1.ConditionStatus(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field LastTransitionTime", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.LastTransitionTime.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Reason", 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.Reason = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Message", 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.Message = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func (m *HorizontalPodAutoscalerList) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 @@ -1744,6 +2039,37 @@ func (m *HorizontalPodAutoscalerStatus) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Conditions", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Conditions = append(m.Conditions, HorizontalPodAutoscalerCondition{}) + if err := m.Conditions[len(m.Conditions)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipGenerated(dAtA[iNdEx:]) @@ -2988,81 +3314,89 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 1208 bytes of a gzipped FileDescriptorProto + // 1331 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x57, 0x5b, 0x6f, 0x1b, 0x45, - 0x14, 0x8e, 0x2f, 0x49, 0xc3, 0x38, 0x37, 0x26, 0x55, 0xea, 0x26, 0xd4, 0x8e, 0xf6, 0xa9, 0x54, - 0xb0, 0x4b, 0x4c, 0x41, 0x54, 0x08, 0xa1, 0xd8, 0x5c, 0x5a, 0x11, 0xa7, 0x61, 0x1a, 0x2a, 0x04, - 0x48, 0x30, 0x59, 0x4f, 0x9c, 0x21, 0xde, 0x8b, 0x76, 0x66, 0xad, 0x26, 0x52, 0x25, 0x7e, 0x00, - 0x0f, 0xbc, 0xf0, 0x13, 0x90, 0xf8, 0x07, 0x3c, 0x83, 0x84, 0x94, 0xc7, 0xf2, 0xc6, 0x93, 0x45, - 0xdc, 0x37, 0x7e, 0x42, 0x25, 0x2e, 0xda, 0x99, 0xf1, 0x5e, 0xbc, 0x5e, 0x13, 0x87, 0xb4, 0x82, - 0x37, 0xef, 0xcc, 0x39, 0xdf, 0x77, 0xce, 0xf9, 0xce, 0x9c, 0x19, 0x83, 0xb7, 0x0f, 0xdf, 0x60, - 0x3a, 0x75, 0x8c, 0x43, 0x7f, 0x8f, 0x78, 0x36, 0xe1, 0x84, 0x19, 0xee, 0x61, 0xdb, 0xc0, 0x2e, - 0x65, 0x06, 0xf6, 0xb9, 0xc3, 0x4c, 0xdc, 0xa1, 0x76, 0xdb, 0xe8, 0xd6, 0x70, 0xc7, 0x3d, 0xc0, - 0x1b, 0x46, 0x9b, 0xd8, 0xc4, 0xc3, 0x9c, 0xb4, 0x74, 0xd7, 0x73, 0xb8, 0x03, 0x0d, 0x09, 0xa0, - 0x47, 0x00, 0xba, 0x7b, 0xd8, 0xd6, 0x03, 0x00, 0x3d, 0x06, 0xa0, 0x0f, 0x00, 0x56, 0x5f, 0x6e, - 0x53, 0x7e, 0xe0, 0xef, 0xe9, 0xa6, 0x63, 0x19, 0x6d, 0xa7, 0xed, 0x18, 0x02, 0x67, 0xcf, 0xdf, - 0x17, 0x5f, 0xe2, 0x43, 0xfc, 0x92, 0xf8, 0xab, 0x37, 0x55, 0x80, 0xd8, 0xa5, 0x16, 0x36, 0x0f, - 0xa8, 0x4d, 0xbc, 0xa3, 0x41, 0x88, 0x86, 0x47, 0x98, 0xe3, 0x7b, 0x26, 0x19, 0x8e, 0x6a, 0xac, - 0x17, 0x33, 0x2c, 0xc2, 0xb1, 0xd1, 0x4d, 0xe5, 0xb2, 0x6a, 0x64, 0x79, 0x79, 0xbe, 0xcd, 0xa9, - 0x95, 0xa6, 0x79, 0xfd, 0x9f, 0x1c, 0x98, 0x79, 0x40, 0x2c, 0x9c, 0xf2, 0x7b, 0x35, 0xcb, 0xcf, - 0xe7, 0xb4, 0x63, 0x50, 0x9b, 0x33, 0xee, 0x8d, 0xcb, 0x89, 0x11, 0xaf, 0x4b, 0xbc, 0x28, 0x21, - 0xf2, 0x00, 0x5b, 0x6e, 0x87, 0x8c, 0xca, 0xe9, 0xa5, 0x4c, 0x81, 0x47, 0x59, 0xdf, 0x3a, 0x6b, - 0x3b, 0xa4, 0x5c, 0xb5, 0x6f, 0x73, 0x60, 0xad, 0xe1, 0x39, 0x8c, 0xdd, 0x27, 0x1e, 0xa3, 0x8e, - 0x7d, 0x77, 0xef, 0x4b, 0x62, 0x72, 0x44, 0xf6, 0x89, 0x47, 0x6c, 0x93, 0xc0, 0x75, 0x50, 0x3c, - 0xa4, 0x76, 0xab, 0x9c, 0x5b, 0xcf, 0x5d, 0x7f, 0xae, 0x3e, 0x77, 0xd2, 0xab, 0x4e, 0xf5, 0x7b, - 0xd5, 0xe2, 0x07, 0xd4, 0x6e, 0x21, 0xb1, 0x13, 0x58, 0xd8, 0xd8, 0x22, 0xe5, 0x7c, 0xd2, 0x62, - 0x1b, 0x5b, 0x04, 0x89, 0x1d, 0x58, 0x03, 0x00, 0xbb, 0x54, 0x11, 0x94, 0x0b, 0xc2, 0x0e, 0x2a, - 0x3b, 0xb0, 0xb9, 0x73, 0x47, 0xed, 0xa0, 0x98, 0x95, 0xf6, 0x38, 0x0f, 0xae, 0xdc, 0x76, 0x3c, - 0x7a, 0xec, 0xd8, 0x1c, 0x77, 0x76, 0x9c, 0xd6, 0xa6, 0xca, 0x83, 0x78, 0xf0, 0x0b, 0x30, 0x1b, - 0xf4, 0x42, 0x0b, 0x73, 0x2c, 0xe2, 0x2a, 0xd5, 0x5e, 0xd1, 0x55, 0x3f, 0xc7, 0xa5, 0x89, 0x3a, - 0x3a, 0xb0, 0xd6, 0xbb, 0x1b, 0xba, 0x4c, 0xae, 0x49, 0x38, 0x8e, 0xf8, 0xa3, 0x35, 0x14, 0xa2, - 0x42, 0x1b, 0x14, 0x99, 0x4b, 0x4c, 0x91, 0x53, 0xa9, 0xb6, 0xa5, 0x4f, 0x78, 0x5a, 0xf4, 0x8c, - 0xc8, 0xef, 0xb9, 0xc4, 0x8c, 0x2a, 0x14, 0x7c, 0x21, 0xc1, 0x03, 0xbb, 0x60, 0x86, 0x71, 0xcc, - 0x7d, 0x26, 0xaa, 0x53, 0xaa, 0x6d, 0x5f, 0x18, 0xa3, 0x40, 0xad, 0x2f, 0x28, 0xce, 0x19, 0xf9, - 0x8d, 0x14, 0x9b, 0xf6, 0x7b, 0x0e, 0xac, 0x65, 0x78, 0x6e, 0x51, 0xc6, 0xe1, 0x67, 0xa9, 0x4a, - 0xeb, 0x67, 0xab, 0x74, 0xe0, 0x2d, 0xea, 0xbc, 0xa4, 0x98, 0x67, 0x07, 0x2b, 0xb1, 0x2a, 0x5b, - 0x60, 0x9a, 0x72, 0x62, 0xb1, 0x72, 0x7e, 0xbd, 0x70, 0xbd, 0x54, 0xbb, 0x7d, 0x51, 0x49, 0xd7, - 0xe7, 0x15, 0xe9, 0xf4, 0x9d, 0x00, 0x1e, 0x49, 0x16, 0xed, 0xcf, 0x7c, 0x66, 0xb2, 0x81, 0x14, - 0xf0, 0xeb, 0x1c, 0x58, 0x10, 0x9f, 0xbb, 0xd8, 0x6b, 0x93, 0xe0, 0x0c, 0xa8, 0x9c, 0x27, 0xd7, - 0x7f, 0xcc, 0x89, 0xaa, 0xaf, 0xa8, 0xe0, 0x16, 0xee, 0x25, 0xb8, 0xd0, 0x10, 0x37, 0xdc, 0x00, - 0x25, 0x8b, 0xda, 0x88, 0xb8, 0x1d, 0x6a, 0x62, 0x26, 0x5a, 0x71, 0xba, 0xbe, 0xd8, 0xef, 0x55, - 0x4b, 0xcd, 0x68, 0x19, 0xc5, 0x6d, 0xe0, 0x6b, 0xa0, 0x64, 0xe1, 0x07, 0xa1, 0x4b, 0x41, 0xb8, - 0x2c, 0x2b, 0xbe, 0x52, 0x33, 0xda, 0x42, 0x71, 0x3b, 0xb8, 0x0f, 0x2e, 0x59, 0x84, 0x7b, 0xd4, - 0x64, 0xe5, 0xa2, 0x50, 0xe2, 0xcd, 0x89, 0x13, 0x6e, 0x0a, 0x7f, 0xd1, 0xdf, 0x8b, 0x8a, 0xef, - 0x92, 0x5c, 0x63, 0x68, 0x00, 0xae, 0xfd, 0x52, 0x00, 0xd7, 0xc6, 0xf6, 0x29, 0x7c, 0x0f, 0x40, - 0x67, 0x4f, 0x8c, 0xc9, 0xd6, 0xfb, 0x72, 0x50, 0x05, 0x13, 0x23, 0x50, 0xa1, 0x50, 0x5f, 0xe9, - 0xf7, 0xaa, 0xf0, 0x6e, 0x6a, 0x17, 0x8d, 0xf0, 0x80, 0x26, 0x98, 0xef, 0x60, 0xc6, 0x65, 0x85, - 0xa9, 0x1a, 0x4e, 0xa5, 0xda, 0x8d, 0xb3, 0x35, 0x6f, 0xe0, 0x51, 0x7f, 0xbe, 0xdf, 0xab, 0xce, - 0x6f, 0xc5, 0x41, 0x50, 0x12, 0x13, 0x6e, 0x82, 0x45, 0xd3, 0xf7, 0x3c, 0x62, 0xf3, 0xa1, 0x8a, - 0x5f, 0x51, 0x15, 0x58, 0x6c, 0x24, 0xb7, 0xd1, 0xb0, 0x7d, 0x00, 0xd1, 0x22, 0x8c, 0x7a, 0xa4, - 0x15, 0x42, 0x14, 0x93, 0x10, 0xef, 0x24, 0xb7, 0xd1, 0xb0, 0x3d, 0x7c, 0x08, 0x16, 0x14, 0xaa, - 0xaa, 0x77, 0x79, 0x5a, 0x68, 0xf8, 0xd6, 0x79, 0x35, 0x94, 0x13, 0x23, 0xec, 0xd2, 0x46, 0x02, - 0x1c, 0x0d, 0x91, 0x69, 0x7f, 0xe4, 0x01, 0x88, 0xc4, 0x87, 0x37, 0x41, 0x91, 0x1f, 0xb9, 0x44, - 0x5d, 0x17, 0xeb, 0x83, 0x51, 0xb7, 0x7b, 0xe4, 0x92, 0x27, 0xbd, 0xea, 0x92, 0xb2, 0x14, 0xb7, - 0x7f, 0xb0, 0x86, 0x84, 0x35, 0x6c, 0x83, 0x19, 0x47, 0x9c, 0x12, 0xa5, 0x53, 0x63, 0xe2, 0xd8, - 0xc3, 0x29, 0x1e, 0xc2, 0xd7, 0x41, 0x30, 0xef, 0xd4, 0xe1, 0x53, 0xf0, 0xf0, 0x73, 0x50, 0x74, - 0x9d, 0xd6, 0x60, 0xca, 0x6e, 0x4e, 0x4c, 0xb3, 0xe3, 0xb4, 0x58, 0x82, 0x64, 0x36, 0xc8, 0x2e, - 0x58, 0x45, 0x02, 0x18, 0x3a, 0x60, 0x76, 0xf0, 0xba, 0x11, 0x4a, 0x96, 0x6a, 0xef, 0x4e, 0x4c, - 0x82, 0x14, 0x40, 0x82, 0x68, 0x2e, 0x98, 0xa1, 0x83, 0x1d, 0x14, 0x92, 0x68, 0x7f, 0xe5, 0xc1, - 0x5c, 0x5c, 0xb8, 0xff, 0x86, 0x02, 0xb2, 0x87, 0x9e, 0xb2, 0x02, 0x92, 0xe4, 0x19, 0x28, 0x20, - 0x89, 0xb2, 0x14, 0xf8, 0x2e, 0x0f, 0x60, 0xba, 0xfd, 0x20, 0x07, 0x33, 0x5c, 0xcc, 0xf2, 0xa7, - 0x72, 0x89, 0x84, 0x17, 0xba, 0xba, 0x2f, 0x14, 0x57, 0xf0, 0xd4, 0x92, 0xd3, 0x76, 0x3b, 0x7a, - 0x92, 0x85, 0x4f, 0x9d, 0x66, 0xb8, 0x83, 0x62, 0x56, 0x90, 0x80, 0x92, 0xf4, 0xbe, 0x8f, 0x3b, - 0x3e, 0x51, 0xca, 0x8c, 0xbd, 0xe7, 0xf5, 0x41, 0xf2, 0xfa, 0x87, 0x3e, 0xb6, 0x39, 0xe5, 0x47, - 0xd1, 0x2d, 0xb3, 0x1b, 0x41, 0xa1, 0x38, 0xae, 0xf6, 0xfd, 0x70, 0x9d, 0x64, 0xbf, 0xfe, 0x7f, - 0xea, 0x74, 0x00, 0xe6, 0xd4, 0xf0, 0xfb, 0x37, 0x85, 0xba, 0xac, 0x58, 0xe6, 0x1a, 0x31, 0x2c, - 0x94, 0x40, 0xd6, 0x7e, 0xca, 0x81, 0xa5, 0xe1, 0x51, 0x33, 0x14, 0x72, 0xee, 0x4c, 0x21, 0x1f, - 0x03, 0x28, 0x13, 0xde, 0xec, 0x12, 0x0f, 0xb7, 0x89, 0x0c, 0x3c, 0x7f, 0xae, 0xc0, 0x57, 0x15, - 0x17, 0xdc, 0x4d, 0x21, 0xa2, 0x11, 0x2c, 0xda, 0xcf, 0xc9, 0x24, 0xa4, 0xda, 0xe7, 0x49, 0xe2, - 0x21, 0x58, 0x56, 0xd5, 0xb9, 0x80, 0x2c, 0xd6, 0x14, 0xd9, 0x72, 0x23, 0x0d, 0x89, 0x46, 0xf1, - 0x68, 0x3f, 0xe4, 0xc1, 0xe5, 0x51, 0x23, 0x19, 0x36, 0xd5, 0x1f, 0x1f, 0x99, 0xc5, 0xad, 0xf8, - 0x1f, 0x9f, 0x27, 0xbd, 0xea, 0x8b, 0xe3, 0xfe, 0xc1, 0x85, 0x13, 0x26, 0xf6, 0x2f, 0xe9, 0x63, - 0x50, 0x4e, 0x54, 0xf1, 0x23, 0x4e, 0x3b, 0xf4, 0x58, 0xbe, 0x80, 0xe4, 0xe3, 0xef, 0x85, 0x7e, - 0xaf, 0x5a, 0xde, 0xcd, 0xb0, 0x41, 0x99, 0xde, 0xb0, 0x3b, 0xb2, 0x0b, 0xce, 0xd7, 0xbe, 0x2b, - 0x13, 0x74, 0xc0, 0x8f, 0xe9, 0xca, 0xc9, 0x2e, 0xb8, 0xe0, 0xca, 0x7d, 0x0a, 0xae, 0x26, 0x85, - 0x4b, 0x97, 0xee, 0x5a, 0xbf, 0x57, 0xbd, 0xda, 0xc8, 0x32, 0x42, 0xd9, 0xfe, 0x59, 0xdd, 0x57, - 0x78, 0x36, 0xdd, 0x57, 0xbf, 0x71, 0x72, 0x5a, 0x99, 0x7a, 0x74, 0x5a, 0x99, 0xfa, 0xf5, 0xb4, - 0x32, 0xf5, 0x55, 0xbf, 0x92, 0x3b, 0xe9, 0x57, 0x72, 0x8f, 0xfa, 0x95, 0xdc, 0x6f, 0xfd, 0x4a, - 0xee, 0x9b, 0xc7, 0x95, 0xa9, 0x4f, 0x66, 0x07, 0x83, 0xf0, 0xef, 0x00, 0x00, 0x00, 0xff, 0xff, - 0x95, 0xf2, 0xec, 0x8a, 0x16, 0x12, 0x00, 0x00, + 0x1b, 0xce, 0x3a, 0x4e, 0x9a, 0x6f, 0x9c, 0x26, 0xfd, 0xa6, 0x55, 0xeb, 0xa6, 0xd4, 0x8e, 0x56, + 0x08, 0xb5, 0x08, 0x76, 0xa9, 0x29, 0x88, 0x0a, 0x01, 0x8a, 0xcd, 0xa1, 0x15, 0x71, 0x0f, 0xd3, + 0x50, 0x21, 0x40, 0x82, 0xc9, 0x7a, 0xea, 0x0c, 0xf1, 0x1e, 0xb4, 0x33, 0xb6, 0x48, 0xa5, 0x4a, + 0xdc, 0x70, 0x87, 0x04, 0x37, 0xfc, 0x04, 0x24, 0xfe, 0x01, 0xd7, 0x20, 0x21, 0xf5, 0xb2, 0x97, + 0xe5, 0xc6, 0xa2, 0xee, 0x1d, 0x3f, 0x21, 0x12, 0x07, 0xcd, 0x61, 0x4f, 0x5e, 0x6f, 0x1a, 0x87, + 0xb4, 0x82, 0x3b, 0x7b, 0xe6, 0x7d, 0x9f, 0xe7, 0x3d, 0x3c, 0xf3, 0xce, 0x2c, 0x78, 0x6b, 0xfb, + 0x35, 0x66, 0x51, 0xdf, 0xde, 0xee, 0x6f, 0x92, 0xd0, 0x23, 0x9c, 0x30, 0x3b, 0xd8, 0xee, 0xda, + 0x38, 0xa0, 0xcc, 0xc6, 0x7d, 0xee, 0x33, 0x07, 0xf7, 0xa8, 0xd7, 0xb5, 0x07, 0x0d, 0xdc, 0x0b, + 0xb6, 0xf0, 0x05, 0xbb, 0x4b, 0x3c, 0x12, 0x62, 0x4e, 0x3a, 0x56, 0x10, 0xfa, 0xdc, 0x87, 0xb6, + 0x02, 0xb0, 0x12, 0x00, 0x2b, 0xd8, 0xee, 0x5a, 0x02, 0xc0, 0x4a, 0x01, 0x58, 0x11, 0xc0, 0xca, + 0x8b, 0x5d, 0xca, 0xb7, 0xfa, 0x9b, 0x96, 0xe3, 0xbb, 0x76, 0xd7, 0xef, 0xfa, 0xb6, 0xc4, 0xd9, + 0xec, 0xdf, 0x96, 0xff, 0xe4, 0x1f, 0xf9, 0x4b, 0xe1, 0xaf, 0x5c, 0xd4, 0x01, 0xe2, 0x80, 0xba, + 0xd8, 0xd9, 0xa2, 0x1e, 0x09, 0x77, 0xa2, 0x10, 0xed, 0x90, 0x30, 0xbf, 0x1f, 0x3a, 0x64, 0x3c, + 0xaa, 0x3d, 0xbd, 0x98, 0xed, 0x12, 0x8e, 0xed, 0x41, 0x2e, 0x97, 0x15, 0xbb, 0xc8, 0x2b, 0xec, + 0x7b, 0x9c, 0xba, 0x79, 0x9a, 0x57, 0x1f, 0xe7, 0xc0, 0x9c, 0x2d, 0xe2, 0xe2, 0x9c, 0xdf, 0xcb, + 0x45, 0x7e, 0x7d, 0x4e, 0x7b, 0x36, 0xf5, 0x38, 0xe3, 0x61, 0xce, 0xe9, 0x85, 0xc2, 0x56, 0x4d, + 0xca, 0xe5, 0xd2, 0x7e, 0x1b, 0x9b, 0x73, 0x35, 0xbf, 0x33, 0xc0, 0x99, 0x56, 0xe8, 0x33, 0x76, + 0x8b, 0x84, 0x8c, 0xfa, 0xde, 0xb5, 0xcd, 0xcf, 0x89, 0xc3, 0x11, 0xb9, 0x4d, 0x42, 0xe2, 0x39, + 0x04, 0xae, 0x82, 0xf2, 0x36, 0xf5, 0x3a, 0x55, 0x63, 0xd5, 0x38, 0xf7, 0xbf, 0xe6, 0xe2, 0xbd, + 0x61, 0x7d, 0x66, 0x34, 0xac, 0x97, 0xdf, 0xa7, 0x5e, 0x07, 0xc9, 0x1d, 0x61, 0xe1, 0x61, 0x97, + 0x54, 0x4b, 0x59, 0x8b, 0xab, 0xd8, 0x25, 0x48, 0xee, 0xc0, 0x06, 0x00, 0x38, 0xa0, 0x9a, 0xa0, + 0x3a, 0x2b, 0xed, 0xa0, 0xb6, 0x03, 0x6b, 0xd7, 0xaf, 0xe8, 0x1d, 0x94, 0xb2, 0x32, 0x1f, 0x95, + 0xc0, 0xa9, 0xcb, 0x7e, 0x48, 0xef, 0xf8, 0x1e, 0xc7, 0xbd, 0xeb, 0x7e, 0x67, 0x4d, 0xe7, 0x41, + 0x42, 0xf8, 0x19, 0x58, 0x10, 0x5d, 0xed, 0x60, 0x8e, 0x65, 0x5c, 0x95, 0xc6, 0x4b, 0x96, 0x56, + 0x66, 0xba, 0xc8, 0x89, 0x36, 0x85, 0xb5, 0x35, 0xb8, 0x60, 0xa9, 0xe4, 0xda, 0x84, 0xe3, 0x84, + 0x3f, 0x59, 0x43, 0x31, 0x2a, 0xf4, 0x40, 0x99, 0x05, 0xc4, 0x91, 0x39, 0x55, 0x1a, 0xeb, 0xd6, + 0x94, 0xba, 0xb7, 0x0a, 0x22, 0xbf, 0x19, 0x10, 0x27, 0xa9, 0x90, 0xf8, 0x87, 0x24, 0x0f, 0x1c, + 0x80, 0x79, 0xc6, 0x31, 0xef, 0x33, 0x59, 0x9d, 0x4a, 0xe3, 0xea, 0xa1, 0x31, 0x4a, 0xd4, 0xe6, + 0x92, 0xe6, 0x9c, 0x57, 0xff, 0x91, 0x66, 0x33, 0xbf, 0x99, 0x05, 0xab, 0x05, 0x9e, 0x2d, 0xdf, + 0xeb, 0x50, 0x4e, 0x7d, 0x0f, 0x5e, 0x06, 0x65, 0xbe, 0x13, 0x10, 0x2d, 0x81, 0x8b, 0x51, 0xf8, + 0x1b, 0x3b, 0x01, 0xd9, 0x1d, 0xd6, 0x9f, 0x7d, 0x9c, 0xbf, 0xb0, 0x43, 0x12, 0x01, 0xde, 0x8a, + 0xd3, 0x54, 0x62, 0x79, 0x33, 0x1b, 0xd6, 0xee, 0xb0, 0xbe, 0xa7, 0xee, 0xad, 0x18, 0x33, 0x9b, + 0x06, 0x1c, 0x00, 0xd8, 0xc3, 0x8c, 0x6f, 0x84, 0xd8, 0x63, 0x8a, 0x93, 0xba, 0x44, 0x97, 0xf2, + 0xf9, 0xfd, 0x49, 0x43, 0x78, 0x34, 0x57, 0x74, 0x3c, 0x70, 0x3d, 0x87, 0x86, 0x26, 0x30, 0xc0, + 0xe7, 0xc0, 0x7c, 0x48, 0x30, 0xf3, 0xbd, 0x6a, 0x59, 0xe6, 0x13, 0x97, 0x19, 0xc9, 0x55, 0xa4, + 0x77, 0xe1, 0x79, 0x70, 0xc4, 0x25, 0x8c, 0xe1, 0x2e, 0xa9, 0xce, 0x49, 0xc3, 0x65, 0x6d, 0x78, + 0xa4, 0xad, 0x96, 0x51, 0xb4, 0x6f, 0xfe, 0x6e, 0x80, 0x33, 0x05, 0x15, 0x5d, 0xa7, 0x8c, 0xc3, + 0x4f, 0x72, 0xda, 0xb7, 0xf6, 0x97, 0xa0, 0xf0, 0x96, 0xca, 0x3f, 0xa6, 0xb9, 0x17, 0xa2, 0x95, + 0x94, 0xee, 0x5d, 0x30, 0x47, 0x39, 0x71, 0x45, 0x7f, 0x66, 0xcf, 0x55, 0x1a, 0x97, 0x0f, 0x4b, + 0x86, 0xcd, 0xa3, 0x9a, 0x74, 0xee, 0x8a, 0x80, 0x47, 0x8a, 0xc5, 0xfc, 0xb3, 0x54, 0x98, 0xac, + 0x38, 0x1c, 0xf0, 0x6b, 0x03, 0x2c, 0xc9, 0xbf, 0x1b, 0x38, 0xec, 0x12, 0x31, 0x95, 0x74, 0xce, + 0xd3, 0x9f, 0xc8, 0x3d, 0x66, 0x5c, 0xf3, 0xa4, 0x0e, 0x6e, 0xe9, 0x66, 0x86, 0x0b, 0x8d, 0x71, + 0xc3, 0x0b, 0xa0, 0xe2, 0x52, 0x0f, 0x91, 0xa0, 0x47, 0x1d, 0xac, 0x34, 0x3c, 0xd7, 0x5c, 0x1e, + 0x0d, 0xeb, 0x95, 0x76, 0xb2, 0x8c, 0xd2, 0x36, 0xf0, 0x15, 0x50, 0x71, 0xf1, 0x17, 0xb1, 0xcb, + 0xac, 0x74, 0x39, 0xae, 0xf9, 0x2a, 0xed, 0x64, 0x0b, 0xa5, 0xed, 0xe0, 0x6d, 0x21, 0x18, 0x1e, + 0x52, 0x87, 0x55, 0xcb, 0xb2, 0x13, 0xaf, 0x4f, 0x9d, 0x70, 0x5b, 0xfa, 0xcb, 0x89, 0x93, 0x52, + 0x9b, 0xc4, 0x44, 0x11, 0xb8, 0xf9, 0x6b, 0x19, 0x9c, 0xdd, 0x73, 0x72, 0xc0, 0x77, 0x01, 0xf4, + 0x37, 0x19, 0x09, 0x07, 0xa4, 0xf3, 0x9e, 0xba, 0x3a, 0xc4, 0x0c, 0x17, 0x5d, 0x98, 0x6d, 0x9e, + 0x14, 0x47, 0xe5, 0x5a, 0x6e, 0x17, 0x4d, 0xf0, 0x80, 0x0e, 0x38, 0x2a, 0x0e, 0x90, 0xaa, 0x30, + 0xd5, 0xd7, 0xc5, 0x74, 0xa7, 0xf3, 0xff, 0xa3, 0x61, 0xfd, 0xe8, 0x7a, 0x1a, 0x04, 0x65, 0x31, + 0xe1, 0x1a, 0x58, 0x76, 0xfa, 0x61, 0x48, 0x3c, 0x3e, 0x56, 0xf1, 0x53, 0xba, 0x02, 0xcb, 0xad, + 0xec, 0x36, 0x1a, 0xb7, 0x17, 0x10, 0x1d, 0xc2, 0x68, 0x48, 0x3a, 0x31, 0x44, 0x39, 0x0b, 0xf1, + 0x76, 0x76, 0x1b, 0x8d, 0xdb, 0xc3, 0xbb, 0x60, 0x49, 0xa3, 0xea, 0x7a, 0x57, 0xe7, 0x64, 0x0f, + 0xdf, 0x38, 0x68, 0x0f, 0xd5, 0x0c, 0x8f, 0x55, 0xda, 0xca, 0x80, 0xa3, 0x31, 0x32, 0xf8, 0x95, + 0x01, 0x80, 0x13, 0x0d, 0x4a, 0x56, 0x9d, 0x97, 0xdc, 0x37, 0x0e, 0xeb, 0x24, 0xc7, 0x23, 0x38, + 0xb9, 0x41, 0xe3, 0x25, 0x86, 0x52, 0xc4, 0xe6, 0x1f, 0x25, 0x00, 0x12, 0x11, 0xc2, 0x8b, 0x99, + 0x5b, 0x64, 0x75, 0xec, 0x16, 0x39, 0xa6, 0x2d, 0xe5, 0x0b, 0x2f, 0x75, 0x63, 0x74, 0xc1, 0xbc, + 0x2f, 0x4f, 0xab, 0xd6, 0x4b, 0x6b, 0xea, 0x3c, 0xe2, 0xfb, 0x3d, 0x86, 0x6f, 0x02, 0x31, 0xa2, + 0xf5, 0x10, 0xd0, 0xf0, 0xf0, 0x53, 0x50, 0x0e, 0xfc, 0x4e, 0x74, 0xff, 0xae, 0x4d, 0x4d, 0x73, + 0xdd, 0xef, 0xb0, 0x0c, 0xc9, 0x82, 0xc8, 0x4e, 0xac, 0x22, 0x09, 0x0c, 0x7d, 0xb0, 0x10, 0xbd, + 0x60, 0xa5, 0xa2, 0x2a, 0x8d, 0x77, 0xa6, 0x26, 0x41, 0x1a, 0x20, 0x43, 0xb4, 0x28, 0x66, 0x79, + 0xb4, 0x83, 0x62, 0x12, 0xf3, 0xaf, 0x12, 0x58, 0x4c, 0x0b, 0xe8, 0xdf, 0xd1, 0x01, 0xa5, 0xe5, + 0x27, 0xdc, 0x01, 0x45, 0xf2, 0x14, 0x3a, 0xa0, 0x88, 0x8a, 0x3a, 0xf0, 0x7d, 0x09, 0xc0, 0xbc, + 0xfc, 0x20, 0x07, 0xf3, 0x5c, 0xde, 0x29, 0x4f, 0xe4, 0x32, 0x8b, 0xdf, 0x20, 0xfa, 0xde, 0xd2, + 0x5c, 0xe2, 0x11, 0xae, 0xa6, 0xfe, 0xd5, 0xe4, 0xb1, 0x1e, 0x1f, 0xe1, 0x76, 0xbc, 0x83, 0x52, + 0x56, 0x90, 0x80, 0x8a, 0xf2, 0xbe, 0x85, 0x7b, 0xfd, 0xe8, 0x41, 0xb5, 0xe7, 0x7b, 0xc3, 0x8a, + 0x92, 0xb7, 0x6e, 0xf4, 0xb1, 0xc7, 0x29, 0xdf, 0x49, 0x6e, 0xbb, 0x8d, 0x04, 0x0a, 0xa5, 0x71, + 0xcd, 0x1f, 0xc6, 0xeb, 0xa4, 0xf4, 0xfa, 0xdf, 0xa9, 0xd3, 0x16, 0x58, 0xd4, 0x43, 0xf8, 0x9f, + 0x14, 0xea, 0x84, 0x66, 0x59, 0x6c, 0xa5, 0xb0, 0x50, 0x06, 0xd9, 0xfc, 0xd9, 0x00, 0xc7, 0xc6, + 0x47, 0xcd, 0x58, 0xc8, 0xc6, 0xbe, 0x42, 0xbe, 0x03, 0xa0, 0x4a, 0x78, 0x6d, 0x40, 0x42, 0xdc, + 0x25, 0x2a, 0xf0, 0xd2, 0x81, 0x02, 0x8f, 0x9f, 0xcd, 0x1b, 0x39, 0x44, 0x34, 0x81, 0xc5, 0xfc, + 0x25, 0x9b, 0x84, 0xea, 0xf6, 0x41, 0x92, 0xb8, 0x0b, 0x8e, 0xeb, 0xea, 0x1c, 0x42, 0x16, 0x67, + 0x34, 0xd9, 0xf1, 0x56, 0x1e, 0x12, 0x4d, 0xe2, 0x31, 0x7f, 0x2c, 0x81, 0x13, 0x93, 0x46, 0x32, + 0x6c, 0xeb, 0x4f, 0x62, 0x95, 0xc5, 0xa5, 0xf4, 0x27, 0xf1, 0xee, 0xb0, 0x7e, 0x7e, 0xcf, 0x6f, + 0x9c, 0x08, 0x30, 0xf5, 0xfd, 0xfc, 0x21, 0xa8, 0x66, 0xaa, 0xf8, 0x01, 0xa7, 0x3d, 0x7a, 0x47, + 0xbd, 0xc4, 0xd4, 0x23, 0xf4, 0x99, 0xd1, 0xb0, 0x5e, 0xdd, 0x28, 0xb0, 0x41, 0x85, 0xde, 0xe2, + 0xc3, 0x69, 0x82, 0x0a, 0x0e, 0x26, 0xdf, 0x93, 0x53, 0x28, 0xe0, 0xa7, 0x7c, 0xe5, 0x94, 0x0a, + 0x0e, 0xb9, 0x72, 0x1f, 0x83, 0xd3, 0xd9, 0xc6, 0xe5, 0x4b, 0x77, 0x76, 0x34, 0xac, 0x9f, 0x6e, + 0x15, 0x19, 0xa1, 0x62, 0xff, 0x22, 0xf5, 0xcd, 0x3e, 0x1d, 0xf5, 0x35, 0xad, 0x7b, 0x0f, 0x6b, + 0x33, 0xf7, 0x1f, 0xd6, 0x66, 0x1e, 0x3c, 0xac, 0xcd, 0x7c, 0x39, 0xaa, 0x19, 0xf7, 0x46, 0x35, + 0xe3, 0xfe, 0xa8, 0x66, 0x3c, 0x18, 0xd5, 0x8c, 0xdf, 0x46, 0x35, 0xe3, 0xdb, 0x47, 0xb5, 0x99, + 0x8f, 0x16, 0xa2, 0x61, 0xf8, 0x77, 0x00, 0x00, 0x00, 0xff, 0xff, 0x4c, 0xa9, 0x91, 0xe9, 0xfe, + 0x13, 0x00, 0x00, } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v2alpha1/generated.proto b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v2alpha1/generated.proto index 5dffa599..d5154758 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v2alpha1/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v2alpha1/generated.proto @@ -26,7 +26,6 @@ import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; import "k8s.io/kubernetes/pkg/api/v1/generated.proto"; import "k8s.io/kubernetes/pkg/apis/autoscaling/v1/generated.proto"; @@ -35,7 +34,7 @@ option go_package = "v2alpha1"; // CrossVersionObjectReference contains enough information to let you identify the referred resource. message CrossVersionObjectReference { - // Kind of the referent; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds" + // Kind of the referent; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds" optional string kind = 1; // Name of the referent; More info: http://kubernetes.io/docs/user-guide/identifiers#names @@ -51,12 +50,12 @@ message CrossVersionObjectReference { // implementing the scale subresource based on the metrics specified. message HorizontalPodAutoscaler { // metadata is the standard object metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // spec is the specification for the behaviour of the autoscaler. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. // +optional optional HorizontalPodAutoscalerSpec spec = 2; @@ -65,6 +64,30 @@ message HorizontalPodAutoscaler { optional HorizontalPodAutoscalerStatus status = 3; } +// HorizontalPodAutoscalerCondition describes the state of +// a HorizontalPodAutoscaler at a certain point. +message HorizontalPodAutoscalerCondition { + // type describes the current condition + optional string type = 1; + + // status is the status of the condition (True, False, Unknown) + optional string status = 2; + + // lastTransitionTime is the last time the condition transitioned from + // one status to another + // +optional + optional k8s.io.apimachinery.pkg.apis.meta.v1.Time lastTransitionTime = 3; + + // reason is the reason for the condition's last transition. + // +optional + optional string reason = 4; + + // message is a human-readable explanation containing details about + // the transition + // +optional + optional string message = 5; +} + // HorizontalPodAutoscaler is a list of horizontal pod autoscaler objects. message HorizontalPodAutoscalerList { // metadata is the standard list metadata. @@ -122,6 +145,10 @@ message HorizontalPodAutoscalerStatus { // currentMetrics is the last read state of the metrics used by this autoscaler. repeated MetricStatus currentMetrics = 5; + + // conditions is the set of conditions required for this autoscaler to scale its target, + // and indicates whether or not those conditions are met. + repeated HorizontalPodAutoscalerCondition conditions = 6; } // MetricSpec specifies how to scale based on a single metric @@ -242,7 +269,7 @@ message ResourceMetricSource { // +optional optional int32 targetAverageUtilization = 2; - // targetAverageValue is the the target value of the average of the + // targetAverageValue is the target value of the average of the // resource metric across all relevant pods, as a raw value (instead of as // a percentage of the request), similar to the "pods" metric source type. // +optional @@ -266,7 +293,7 @@ message ResourceMetricStatus { // +optional optional int32 currentAverageUtilization = 2; - // currentAverageValue is the the current value of the average of the + // currentAverageValue is the current value of the average of the // resource metric across all relevant pods, as a raw value (instead of as // a percentage of the request), similar to the "pods" metric source type. // It will always be set, regardless of the corresponding metric specification. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v2alpha1/types.generated.go b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v2alpha1/types.generated.go index 6af4fa30..9beb4748 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v2alpha1/types.generated.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v2alpha1/types.generated.go @@ -1916,16 +1916,16 @@ func (x *HorizontalPodAutoscalerStatus) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [5]bool + var yyq2 [6]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[0] = x.ObservedGeneration != nil yyq2[1] = x.LastScaleTime != nil var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(5) + r.EncodeArrayStart(6) } else { - yynn2 = 3 + yynn2 = 4 for _, b := range yyq2 { if b { yynn2++ @@ -2077,6 +2077,33 @@ func (x *HorizontalPodAutoscalerStatus) CodecEncodeSelf(e *codec1978.Encoder) { } } } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if x.Conditions == nil { + r.EncodeNil() + } else { + yym21 := z.EncBinary() + _ = yym21 + if false { + } else { + h.encSliceHorizontalPodAutoscalerCondition(([]HorizontalPodAutoscalerCondition)(x.Conditions), e) + } + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("conditions")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Conditions == nil { + r.EncodeNil() + } else { + yym22 := z.EncBinary() + _ = yym22 + if false { + } else { + h.encSliceHorizontalPodAutoscalerCondition(([]HorizontalPodAutoscalerCondition)(x.Conditions), e) + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -2211,6 +2238,18 @@ func (x *HorizontalPodAutoscalerStatus) codecDecodeSelfFromMap(l int, d *codec19 h.decSliceMetricStatus((*[]MetricStatus)(yyv12), d) } } + case "conditions": + if r.TryDecodeAsNil() { + x.Conditions = nil + } else { + yyv14 := &x.Conditions + yym15 := z.DecBinary() + _ = yym15 + if false { + } else { + h.decSliceHorizontalPodAutoscalerCondition((*[]HorizontalPodAutoscalerCondition)(yyv14), d) + } + } default: z.DecStructFieldNotFound(-1, yys3) } // end switch yys3 @@ -2222,16 +2261,16 @@ func (x *HorizontalPodAutoscalerStatus) codecDecodeSelfFromArray(l int, d *codec var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj14 int - var yyb14 bool - var yyhl14 bool = l >= 0 - yyj14++ - if yyhl14 { - yyb14 = yyj14 > l + var yyj16 int + var yyb16 bool + var yyhl16 bool = l >= 0 + yyj16++ + if yyhl16 { + yyb16 = yyj16 > l } else { - yyb14 = r.CheckBreak() + yyb16 = r.CheckBreak() } - if yyb14 { + if yyb16 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2244,20 +2283,20 @@ func (x *HorizontalPodAutoscalerStatus) codecDecodeSelfFromArray(l int, d *codec if x.ObservedGeneration == nil { x.ObservedGeneration = new(int64) } - yym16 := z.DecBinary() - _ = yym16 + yym18 := z.DecBinary() + _ = yym18 if false { } else { *((*int64)(x.ObservedGeneration)) = int64(r.DecodeInt(64)) } } - yyj14++ - if yyhl14 { - yyb14 = yyj14 > l + yyj16++ + if yyhl16 { + yyb16 = yyj16 > l } else { - yyb14 = r.CheckBreak() + yyb16 = r.CheckBreak() } - if yyb14 { + if yyb16 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2270,25 +2309,25 @@ func (x *HorizontalPodAutoscalerStatus) codecDecodeSelfFromArray(l int, d *codec if x.LastScaleTime == nil { x.LastScaleTime = new(pkg3_v1.Time) } - yym18 := z.DecBinary() - _ = yym18 + yym20 := z.DecBinary() + _ = yym20 if false { } else if z.HasExtensions() && z.DecExt(x.LastScaleTime) { - } else if yym18 { + } else if yym20 { z.DecBinaryUnmarshal(x.LastScaleTime) - } else if !yym18 && z.IsJSONHandle() { + } else if !yym20 && z.IsJSONHandle() { z.DecJSONUnmarshal(x.LastScaleTime) } else { z.DecFallback(x.LastScaleTime, false) } } - yyj14++ - if yyhl14 { - yyb14 = yyj14 > l + yyj16++ + if yyhl16 { + yyb16 = yyj16 > l } else { - yyb14 = r.CheckBreak() + yyb16 = r.CheckBreak() } - if yyb14 { + if yyb16 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2296,29 +2335,7 @@ func (x *HorizontalPodAutoscalerStatus) codecDecodeSelfFromArray(l int, d *codec if r.TryDecodeAsNil() { x.CurrentReplicas = 0 } else { - yyv19 := &x.CurrentReplicas - yym20 := z.DecBinary() - _ = yym20 - if false { - } else { - *((*int32)(yyv19)) = int32(r.DecodeInt(32)) - } - } - yyj14++ - if yyhl14 { - yyb14 = yyj14 > l - } else { - yyb14 = r.CheckBreak() - } - if yyb14 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.DesiredReplicas = 0 - } else { - yyv21 := &x.DesiredReplicas + yyv21 := &x.CurrentReplicas yym22 := z.DecBinary() _ = yym22 if false { @@ -2326,13 +2343,35 @@ func (x *HorizontalPodAutoscalerStatus) codecDecodeSelfFromArray(l int, d *codec *((*int32)(yyv21)) = int32(r.DecodeInt(32)) } } - yyj14++ - if yyhl14 { - yyb14 = yyj14 > l + yyj16++ + if yyhl16 { + yyb16 = yyj16 > l } else { - yyb14 = r.CheckBreak() + yyb16 = r.CheckBreak() } - if yyb14 { + if yyb16 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.DesiredReplicas = 0 + } else { + yyv23 := &x.DesiredReplicas + yym24 := z.DecBinary() + _ = yym24 + if false { + } else { + *((*int32)(yyv23)) = int32(r.DecodeInt(32)) + } + } + yyj16++ + if yyhl16 { + yyb16 = yyj16 > l + } else { + yyb16 = r.CheckBreak() + } + if yyb16 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -2340,26 +2379,465 @@ func (x *HorizontalPodAutoscalerStatus) codecDecodeSelfFromArray(l int, d *codec if r.TryDecodeAsNil() { x.CurrentMetrics = nil } else { - yyv23 := &x.CurrentMetrics - yym24 := z.DecBinary() - _ = yym24 + yyv25 := &x.CurrentMetrics + yym26 := z.DecBinary() + _ = yym26 if false { } else { - h.decSliceMetricStatus((*[]MetricStatus)(yyv23), d) + h.decSliceMetricStatus((*[]MetricStatus)(yyv25), d) + } + } + yyj16++ + if yyhl16 { + yyb16 = yyj16 > l + } else { + yyb16 = r.CheckBreak() + } + if yyb16 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Conditions = nil + } else { + yyv27 := &x.Conditions + yym28 := z.DecBinary() + _ = yym28 + if false { + } else { + h.decSliceHorizontalPodAutoscalerCondition((*[]HorizontalPodAutoscalerCondition)(yyv27), d) } } for { - yyj14++ - if yyhl14 { - yyb14 = yyj14 > l + yyj16++ + if yyhl16 { + yyb16 = yyj16 > l } else { - yyb14 = r.CheckBreak() + yyb16 = r.CheckBreak() } - if yyb14 { + if yyb16 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj14-1, "") + z.DecStructFieldNotFound(yyj16-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x HorizontalPodAutoscalerConditionType) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x)) + } +} + +func (x *HorizontalPodAutoscalerConditionType) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + *((*string)(x)) = r.DecodeString() + } +} + +func (x *HorizontalPodAutoscalerCondition) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [5]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[2] = true + yyq2[3] = x.Reason != "" + yyq2[4] = x.Message != "" + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(5) + } else { + yynn2 = 2 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + x.Type.CodecEncodeSelf(e) + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("type")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + x.Type.CodecEncodeSelf(e) + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yysf7 := &x.Status + yysf7.CodecEncodeSelf(e) + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("status")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yysf8 := &x.Status + yysf8.CodecEncodeSelf(e) + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yy10 := &x.LastTransitionTime + yym11 := z.EncBinary() + _ = yym11 + if false { + } else if z.HasExtensions() && z.EncExt(yy10) { + } else if yym11 { + z.EncBinaryMarshal(yy10) + } else if !yym11 && z.IsJSONHandle() { + z.EncJSONMarshal(yy10) + } else { + z.EncFallback(yy10) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("lastTransitionTime")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy12 := &x.LastTransitionTime + yym13 := z.EncBinary() + _ = yym13 + if false { + } else if z.HasExtensions() && z.EncExt(yy12) { + } else if yym13 { + z.EncBinaryMarshal(yy12) + } else if !yym13 && z.IsJSONHandle() { + z.EncJSONMarshal(yy12) + } else { + z.EncFallback(yy12) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[3] { + yym15 := z.EncBinary() + _ = yym15 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Reason)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[3] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("reason")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym16 := z.EncBinary() + _ = yym16 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Reason)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[4] { + yym18 := z.EncBinary() + _ = yym18 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Message)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[4] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("message")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym19 := z.EncBinary() + _ = yym19 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Message)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *HorizontalPodAutoscalerCondition) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *HorizontalPodAutoscalerCondition) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "type": + if r.TryDecodeAsNil() { + x.Type = "" + } else { + yyv4 := &x.Type + yyv4.CodecDecodeSelf(d) + } + case "status": + if r.TryDecodeAsNil() { + x.Status = "" + } else { + yyv5 := &x.Status + yyv5.CodecDecodeSelf(d) + } + case "lastTransitionTime": + if r.TryDecodeAsNil() { + x.LastTransitionTime = pkg3_v1.Time{} + } else { + yyv6 := &x.LastTransitionTime + yym7 := z.DecBinary() + _ = yym7 + if false { + } else if z.HasExtensions() && z.DecExt(yyv6) { + } else if yym7 { + z.DecBinaryUnmarshal(yyv6) + } else if !yym7 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv6) + } else { + z.DecFallback(yyv6, false) + } + } + case "reason": + if r.TryDecodeAsNil() { + x.Reason = "" + } else { + yyv8 := &x.Reason + yym9 := z.DecBinary() + _ = yym9 + if false { + } else { + *((*string)(yyv8)) = r.DecodeString() + } + } + case "message": + if r.TryDecodeAsNil() { + x.Message = "" + } else { + yyv10 := &x.Message + yym11 := z.DecBinary() + _ = yym11 + if false { + } else { + *((*string)(yyv10)) = r.DecodeString() + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *HorizontalPodAutoscalerCondition) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj12 int + var yyb12 bool + var yyhl12 bool = l >= 0 + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Type = "" + } else { + yyv13 := &x.Type + yyv13.CodecDecodeSelf(d) + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Status = "" + } else { + yyv14 := &x.Status + yyv14.CodecDecodeSelf(d) + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.LastTransitionTime = pkg3_v1.Time{} + } else { + yyv15 := &x.LastTransitionTime + yym16 := z.DecBinary() + _ = yym16 + if false { + } else if z.HasExtensions() && z.DecExt(yyv15) { + } else if yym16 { + z.DecBinaryUnmarshal(yyv15) + } else if !yym16 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv15) + } else { + z.DecFallback(yyv15, false) + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Reason = "" + } else { + yyv17 := &x.Reason + yym18 := z.DecBinary() + _ = yym18 + if false { + } else { + *((*string)(yyv17)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Message = "" + } else { + yyv19 := &x.Message + yym20 := z.DecBinary() + _ = yym20 + if false { + } else { + *((*string)(yyv19)) = r.DecodeString() + } + } + for { + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj12-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -4501,6 +4979,125 @@ func (x codecSelfer1234) decSliceMetricStatus(v *[]MetricStatus, d *codec1978.De } } +func (x codecSelfer1234) encSliceHorizontalPodAutoscalerCondition(v []HorizontalPodAutoscalerCondition, e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + r.EncodeArrayStart(len(v)) + for _, yyv1 := range v { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy2 := &yyv1 + yy2.CodecEncodeSelf(e) + } + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) decSliceHorizontalPodAutoscalerCondition(v *[]HorizontalPodAutoscalerCondition, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + + yyv1 := *v + yyh1, yyl1 := z.DecSliceHelperStart() + var yyc1 bool + _ = yyc1 + if yyl1 == 0 { + if yyv1 == nil { + yyv1 = []HorizontalPodAutoscalerCondition{} + yyc1 = true + } else if len(yyv1) != 0 { + yyv1 = yyv1[:0] + yyc1 = true + } + } else if yyl1 > 0 { + var yyrr1, yyrl1 int + var yyrt1 bool + _, _ = yyrl1, yyrt1 + yyrr1 = yyl1 // len(yyv1) + if yyl1 > cap(yyv1) { + + yyrg1 := len(yyv1) > 0 + yyv21 := yyv1 + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 88) + if yyrt1 { + if yyrl1 <= cap(yyv1) { + yyv1 = yyv1[:yyrl1] + } else { + yyv1 = make([]HorizontalPodAutoscalerCondition, yyrl1) + } + } else { + yyv1 = make([]HorizontalPodAutoscalerCondition, yyrl1) + } + yyc1 = true + yyrr1 = len(yyv1) + if yyrg1 { + copy(yyv1, yyv21) + } + } else if yyl1 != len(yyv1) { + yyv1 = yyv1[:yyl1] + yyc1 = true + } + yyj1 := 0 + for ; yyj1 < yyrr1; yyj1++ { + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = HorizontalPodAutoscalerCondition{} + } else { + yyv2 := &yyv1[yyj1] + yyv2.CodecDecodeSelf(d) + } + + } + if yyrt1 { + for ; yyj1 < yyl1; yyj1++ { + yyv1 = append(yyv1, HorizontalPodAutoscalerCondition{}) + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = HorizontalPodAutoscalerCondition{} + } else { + yyv3 := &yyv1[yyj1] + yyv3.CodecDecodeSelf(d) + } + + } + } + + } else { + yyj1 := 0 + for ; !r.CheckBreak(); yyj1++ { + + if yyj1 >= len(yyv1) { + yyv1 = append(yyv1, HorizontalPodAutoscalerCondition{}) // var yyz1 HorizontalPodAutoscalerCondition + yyc1 = true + } + yyh1.ElemContainerState(yyj1) + if yyj1 < len(yyv1) { + if r.TryDecodeAsNil() { + yyv1[yyj1] = HorizontalPodAutoscalerCondition{} + } else { + yyv4 := &yyv1[yyj1] + yyv4.CodecDecodeSelf(d) + } + + } else { + z.DecSwallow() + } + + } + if yyj1 < len(yyv1) { + yyv1 = yyv1[:yyj1] + yyc1 = true + } else if yyj1 == 0 && yyv1 == nil { + yyv1 = []HorizontalPodAutoscalerCondition{} + yyc1 = true + } + } + yyh1.End() + if yyc1 { + *v = yyv1 + } +} + func (x codecSelfer1234) encSliceHorizontalPodAutoscaler(v []HorizontalPodAutoscaler, e *codec1978.Encoder) { var h codecSelfer1234 z, r := codec1978.GenHelperEncoder(e) @@ -4540,7 +5137,7 @@ func (x codecSelfer1234) decSliceHorizontalPodAutoscaler(v *[]HorizontalPodAutos yyrg1 := len(yyv1) > 0 yyv21 := yyv1 - yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 400) + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 424) if yyrt1 { if yyrl1 <= cap(yyv1) { yyv1 = yyv1[:yyrl1] diff --git a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v2alpha1/types.go b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v2alpha1/types.go index c8fc9296..7834e7f1 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v2alpha1/types.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v2alpha1/types.go @@ -24,7 +24,7 @@ import ( // CrossVersionObjectReference contains enough information to let you identify the referred resource. type CrossVersionObjectReference struct { - // Kind of the referent; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds" + // Kind of the referent; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds" Kind string `json:"kind" protobuf:"bytes,1,opt,name=kind"` // Name of the referent; More info: http://kubernetes.io/docs/user-guide/identifiers#names Name string `json:"name" protobuf:"bytes,2,opt,name=name"` @@ -138,7 +138,7 @@ type ResourceMetricSource struct { // the requested value of the resource for the pods. // +optional TargetAverageUtilization *int32 `json:"targetAverageUtilization,omitempty" protobuf:"varint,2,opt,name=targetAverageUtilization"` - // targetAverageValue is the the target value of the average of the + // targetAverageValue is the target value of the average of the // resource metric across all relevant pods, as a raw value (instead of as // a percentage of the request), similar to the "pods" metric source type. // +optional @@ -166,6 +166,46 @@ type HorizontalPodAutoscalerStatus struct { // currentMetrics is the last read state of the metrics used by this autoscaler. CurrentMetrics []MetricStatus `json:"currentMetrics" protobuf:"bytes,5,rep,name=currentMetrics"` + + // conditions is the set of conditions required for this autoscaler to scale its target, + // and indicates whether or not those conditions are met. + Conditions []HorizontalPodAutoscalerCondition `json:"conditions" protobuf:"bytes,6,rep,name=conditions"` +} + +// HorizontalPodAutoscalerConditionType are the valid conditions of +// a HorizontalPodAutoscaler. +type HorizontalPodAutoscalerConditionType string + +var ( + // ScalingActive indicates that the HPA controller is able to scale if necessary: + // it's correctly configured, can fetch the desired metrics, and isn't disabled. + ScalingActive HorizontalPodAutoscalerConditionType = "ScalingActive" + // AbleToScale indicates a lack of transient issues which prevent scaling from occuring, + // such as being in a backoff window, or being unable to access/update the target scale. + AbleToScale HorizontalPodAutoscalerConditionType = "AbleToScale" + // ScalingLimited indicates that the calculated scale based on metrics would be above or + // below the range for the HPA, and has thus been capped. + ScalingLimited HorizontalPodAutoscalerConditionType = "ScalingLimited" +) + +// HorizontalPodAutoscalerCondition describes the state of +// a HorizontalPodAutoscaler at a certain point. +type HorizontalPodAutoscalerCondition struct { + // type describes the current condition + Type HorizontalPodAutoscalerConditionType `json:"type" protobuf:"bytes,1,name=type"` + // status is the status of the condition (True, False, Unknown) + Status v1.ConditionStatus `json:"status" protobuf:"bytes,2,name=status"` + // lastTransitionTime is the last time the condition transitioned from + // one status to another + // +optional + LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty" protobuf:"bytes,3,opt,name=lastTransitionTime"` + // reason is the reason for the condition's last transition. + // +optional + Reason string `json:"reason,omitempty" protobuf:"bytes,4,opt,name=reason"` + // message is a human-readable explanation containing details about + // the transition + // +optional + Message string `json:"message,omitempty" protobuf:"bytes,5,opt,name=message"` } // MetricStatus describes the last-read state of a single metric. @@ -228,7 +268,7 @@ type ResourceMetricStatus struct { // specification. // +optional CurrentAverageUtilization *int32 `json:"currentAverageUtilization,omitempty" protobuf:"bytes,2,opt,name=currentAverageUtilization"` - // currentAverageValue is the the current value of the average of the + // currentAverageValue is the current value of the average of the // resource metric across all relevant pods, as a raw value (instead of as // a percentage of the request), similar to the "pods" metric source type. // It will always be set, regardless of the corresponding metric specification. @@ -243,12 +283,12 @@ type ResourceMetricStatus struct { type HorizontalPodAutoscaler struct { metav1.TypeMeta `json:",inline"` // metadata is the standard object metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // spec is the specification for the behaviour of the autoscaler. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. // +optional Spec HorizontalPodAutoscalerSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` diff --git a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v2alpha1/types_swagger_doc_generated.go b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v2alpha1/types_swagger_doc_generated.go index 13491dd9..b1c14073 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v2alpha1/types_swagger_doc_generated.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v2alpha1/types_swagger_doc_generated.go @@ -29,7 +29,7 @@ package v2alpha1 // AUTO-GENERATED FUNCTIONS START HERE var map_CrossVersionObjectReference = map[string]string{ "": "CrossVersionObjectReference contains enough information to let you identify the referred resource.", - "kind": "Kind of the referent; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds\"", + "kind": "Kind of the referent; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds\"", "name": "Name of the referent; More info: http://kubernetes.io/docs/user-guide/identifiers#names", "apiVersion": "API version of the referent", } @@ -40,8 +40,8 @@ func (CrossVersionObjectReference) SwaggerDoc() map[string]string { var map_HorizontalPodAutoscaler = map[string]string{ "": "HorizontalPodAutoscaler is the configuration for a horizontal pod autoscaler, which automatically manages the replica count of any resource implementing the scale subresource based on the metrics specified.", - "metadata": "metadata is the standard object metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "spec": "spec is the specification for the behaviour of the autoscaler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status.", + "metadata": "metadata is the standard object metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "spec is the specification for the behaviour of the autoscaler. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status.", "status": "status is the current information about the autoscaler.", } @@ -49,6 +49,19 @@ func (HorizontalPodAutoscaler) SwaggerDoc() map[string]string { return map_HorizontalPodAutoscaler } +var map_HorizontalPodAutoscalerCondition = map[string]string{ + "": "HorizontalPodAutoscalerCondition describes the state of a HorizontalPodAutoscaler at a certain point.", + "type": "type describes the current condition", + "status": "status is the status of the condition (True, False, Unknown)", + "lastTransitionTime": "lastTransitionTime is the last time the condition transitioned from one status to another", + "reason": "reason is the reason for the condition's last transition.", + "message": "message is a human-readable explanation containing details about the transition", +} + +func (HorizontalPodAutoscalerCondition) SwaggerDoc() map[string]string { + return map_HorizontalPodAutoscalerCondition +} + var map_HorizontalPodAutoscalerList = map[string]string{ "": "HorizontalPodAutoscaler is a list of horizontal pod autoscaler objects.", "metadata": "metadata is the standard list metadata.", @@ -78,6 +91,7 @@ var map_HorizontalPodAutoscalerStatus = map[string]string{ "currentReplicas": "currentReplicas is current number of replicas of pods managed by this autoscaler, as last seen by the autoscaler.", "desiredReplicas": "desiredReplicas is the desired number of replicas of pods managed by this autoscaler, as last calculated by the autoscaler.", "currentMetrics": "currentMetrics is the last read state of the metrics used by this autoscaler.", + "conditions": "conditions is the set of conditions required for this autoscaler to scale its target, and indicates whether or not those conditions are met.", } func (HorizontalPodAutoscalerStatus) SwaggerDoc() map[string]string { @@ -154,7 +168,7 @@ var map_ResourceMetricSource = map[string]string{ "": "ResourceMetricSource indicates how to scale on a resource metric known to Kubernetes, as specified in requests and limits, describing each pod in the current scale target (e.g. CPU or memory). The values will be averaged together before being compared to the target. Such metrics are built in to Kubernetes, and have special scaling options on top of those available to normal per-pod metrics using the \"pods\" source. Only one \"target\" type should be set.", "name": "name is the name of the resource in question.", "targetAverageUtilization": "targetAverageUtilization is the target value of the average of the resource metric across all relevant pods, represented as a percentage of the requested value of the resource for the pods.", - "targetAverageValue": "targetAverageValue is the the target value of the average of the resource metric across all relevant pods, as a raw value (instead of as a percentage of the request), similar to the \"pods\" metric source type.", + "targetAverageValue": "targetAverageValue is the target value of the average of the resource metric across all relevant pods, as a raw value (instead of as a percentage of the request), similar to the \"pods\" metric source type.", } func (ResourceMetricSource) SwaggerDoc() map[string]string { @@ -165,7 +179,7 @@ var map_ResourceMetricStatus = map[string]string{ "": "ResourceMetricStatus indicates the current value of a resource metric known to Kubernetes, as specified in requests and limits, describing each pod in the current scale target (e.g. CPU or memory). Such metrics are built in to Kubernetes, and have special scaling options on top of those available to normal per-pod metrics using the \"pods\" source.", "name": "name is the name of the resource in question.", "currentAverageUtilization": "currentAverageUtilization is the current value of the average of the resource metric across all relevant pods, represented as a percentage of the requested value of the resource for the pods. It will only be present if `targetAverageValue` was set in the corresponding metric specification.", - "currentAverageValue": "currentAverageValue is the the current value of the average of the resource metric across all relevant pods, as a raw value (instead of as a percentage of the request), similar to the \"pods\" metric source type. It will always be set, regardless of the corresponding metric specification.", + "currentAverageValue": "currentAverageValue is the current value of the average of the resource metric across all relevant pods, as a raw value (instead of as a percentage of the request), similar to the \"pods\" metric source type. It will always be set, regardless of the corresponding metric specification.", } func (ResourceMetricStatus) SwaggerDoc() map[string]string { diff --git a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v2alpha1/zz_generated.conversion.go b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v2alpha1/zz_generated.conversion.go index 8d426353..be47a385 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v2alpha1/zz_generated.conversion.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v2alpha1/zz_generated.conversion.go @@ -22,11 +22,11 @@ package v2alpha1 import ( resource "k8s.io/apimachinery/pkg/api/resource" - v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" conversion "k8s.io/apimachinery/pkg/conversion" runtime "k8s.io/apimachinery/pkg/runtime" api "k8s.io/kubernetes/pkg/api" - api_v1 "k8s.io/kubernetes/pkg/api/v1" + v1 "k8s.io/kubernetes/pkg/api/v1" autoscaling "k8s.io/kubernetes/pkg/apis/autoscaling" unsafe "unsafe" ) @@ -43,6 +43,8 @@ func RegisterConversions(scheme *runtime.Scheme) error { Convert_autoscaling_CrossVersionObjectReference_To_v2alpha1_CrossVersionObjectReference, Convert_v2alpha1_HorizontalPodAutoscaler_To_autoscaling_HorizontalPodAutoscaler, Convert_autoscaling_HorizontalPodAutoscaler_To_v2alpha1_HorizontalPodAutoscaler, + Convert_v2alpha1_HorizontalPodAutoscalerCondition_To_autoscaling_HorizontalPodAutoscalerCondition, + Convert_autoscaling_HorizontalPodAutoscalerCondition_To_v2alpha1_HorizontalPodAutoscalerCondition, Convert_v2alpha1_HorizontalPodAutoscalerList_To_autoscaling_HorizontalPodAutoscalerList, Convert_autoscaling_HorizontalPodAutoscalerList_To_v2alpha1_HorizontalPodAutoscalerList, Convert_v2alpha1_HorizontalPodAutoscalerSpec_To_autoscaling_HorizontalPodAutoscalerSpec, @@ -124,6 +126,34 @@ func Convert_autoscaling_HorizontalPodAutoscaler_To_v2alpha1_HorizontalPodAutosc return autoConvert_autoscaling_HorizontalPodAutoscaler_To_v2alpha1_HorizontalPodAutoscaler(in, out, s) } +func autoConvert_v2alpha1_HorizontalPodAutoscalerCondition_To_autoscaling_HorizontalPodAutoscalerCondition(in *HorizontalPodAutoscalerCondition, out *autoscaling.HorizontalPodAutoscalerCondition, s conversion.Scope) error { + out.Type = autoscaling.HorizontalPodAutoscalerConditionType(in.Type) + out.Status = autoscaling.ConditionStatus(in.Status) + out.LastTransitionTime = in.LastTransitionTime + out.Reason = in.Reason + out.Message = in.Message + return nil +} + +// Convert_v2alpha1_HorizontalPodAutoscalerCondition_To_autoscaling_HorizontalPodAutoscalerCondition is an autogenerated conversion function. +func Convert_v2alpha1_HorizontalPodAutoscalerCondition_To_autoscaling_HorizontalPodAutoscalerCondition(in *HorizontalPodAutoscalerCondition, out *autoscaling.HorizontalPodAutoscalerCondition, s conversion.Scope) error { + return autoConvert_v2alpha1_HorizontalPodAutoscalerCondition_To_autoscaling_HorizontalPodAutoscalerCondition(in, out, s) +} + +func autoConvert_autoscaling_HorizontalPodAutoscalerCondition_To_v2alpha1_HorizontalPodAutoscalerCondition(in *autoscaling.HorizontalPodAutoscalerCondition, out *HorizontalPodAutoscalerCondition, s conversion.Scope) error { + out.Type = HorizontalPodAutoscalerConditionType(in.Type) + out.Status = v1.ConditionStatus(in.Status) + out.LastTransitionTime = in.LastTransitionTime + out.Reason = in.Reason + out.Message = in.Message + return nil +} + +// Convert_autoscaling_HorizontalPodAutoscalerCondition_To_v2alpha1_HorizontalPodAutoscalerCondition is an autogenerated conversion function. +func Convert_autoscaling_HorizontalPodAutoscalerCondition_To_v2alpha1_HorizontalPodAutoscalerCondition(in *autoscaling.HorizontalPodAutoscalerCondition, out *HorizontalPodAutoscalerCondition, s conversion.Scope) error { + return autoConvert_autoscaling_HorizontalPodAutoscalerCondition_To_v2alpha1_HorizontalPodAutoscalerCondition(in, out, s) +} + func autoConvert_v2alpha1_HorizontalPodAutoscalerList_To_autoscaling_HorizontalPodAutoscalerList(in *HorizontalPodAutoscalerList, out *autoscaling.HorizontalPodAutoscalerList, s conversion.Scope) error { out.ListMeta = in.ListMeta out.Items = *(*[]autoscaling.HorizontalPodAutoscaler)(unsafe.Pointer(&in.Items)) @@ -182,10 +212,11 @@ func Convert_autoscaling_HorizontalPodAutoscalerSpec_To_v2alpha1_HorizontalPodAu func autoConvert_v2alpha1_HorizontalPodAutoscalerStatus_To_autoscaling_HorizontalPodAutoscalerStatus(in *HorizontalPodAutoscalerStatus, out *autoscaling.HorizontalPodAutoscalerStatus, s conversion.Scope) error { out.ObservedGeneration = (*int64)(unsafe.Pointer(in.ObservedGeneration)) - out.LastScaleTime = (*v1.Time)(unsafe.Pointer(in.LastScaleTime)) + out.LastScaleTime = (*meta_v1.Time)(unsafe.Pointer(in.LastScaleTime)) out.CurrentReplicas = in.CurrentReplicas out.DesiredReplicas = in.DesiredReplicas out.CurrentMetrics = *(*[]autoscaling.MetricStatus)(unsafe.Pointer(&in.CurrentMetrics)) + out.Conditions = *(*[]autoscaling.HorizontalPodAutoscalerCondition)(unsafe.Pointer(&in.Conditions)) return nil } @@ -196,7 +227,7 @@ func Convert_v2alpha1_HorizontalPodAutoscalerStatus_To_autoscaling_HorizontalPod func autoConvert_autoscaling_HorizontalPodAutoscalerStatus_To_v2alpha1_HorizontalPodAutoscalerStatus(in *autoscaling.HorizontalPodAutoscalerStatus, out *HorizontalPodAutoscalerStatus, s conversion.Scope) error { out.ObservedGeneration = (*int64)(unsafe.Pointer(in.ObservedGeneration)) - out.LastScaleTime = (*v1.Time)(unsafe.Pointer(in.LastScaleTime)) + out.LastScaleTime = (*meta_v1.Time)(unsafe.Pointer(in.LastScaleTime)) out.CurrentReplicas = in.CurrentReplicas out.DesiredReplicas = in.DesiredReplicas if in.CurrentMetrics == nil { @@ -204,6 +235,11 @@ func autoConvert_autoscaling_HorizontalPodAutoscalerStatus_To_v2alpha1_Horizonta } else { out.CurrentMetrics = *(*[]MetricStatus)(unsafe.Pointer(&in.CurrentMetrics)) } + if in.Conditions == nil { + out.Conditions = make([]HorizontalPodAutoscalerCondition, 0) + } else { + out.Conditions = *(*[]HorizontalPodAutoscalerCondition)(unsafe.Pointer(&in.Conditions)) + } return nil } @@ -377,7 +413,7 @@ func Convert_v2alpha1_ResourceMetricSource_To_autoscaling_ResourceMetricSource(i } func autoConvert_autoscaling_ResourceMetricSource_To_v2alpha1_ResourceMetricSource(in *autoscaling.ResourceMetricSource, out *ResourceMetricSource, s conversion.Scope) error { - out.Name = api_v1.ResourceName(in.Name) + out.Name = v1.ResourceName(in.Name) out.TargetAverageUtilization = (*int32)(unsafe.Pointer(in.TargetAverageUtilization)) out.TargetAverageValue = (*resource.Quantity)(unsafe.Pointer(in.TargetAverageValue)) return nil @@ -401,7 +437,7 @@ func Convert_v2alpha1_ResourceMetricStatus_To_autoscaling_ResourceMetricStatus(i } func autoConvert_autoscaling_ResourceMetricStatus_To_v2alpha1_ResourceMetricStatus(in *autoscaling.ResourceMetricStatus, out *ResourceMetricStatus, s conversion.Scope) error { - out.Name = api_v1.ResourceName(in.Name) + out.Name = v1.ResourceName(in.Name) out.CurrentAverageUtilization = (*int32)(unsafe.Pointer(in.CurrentAverageUtilization)) out.CurrentAverageValue = in.CurrentAverageValue return nil diff --git a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v2alpha1/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v2alpha1/zz_generated.deepcopy.go index b9916f60..9a9dd690 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v2alpha1/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v2alpha1/zz_generated.deepcopy.go @@ -38,6 +38,7 @@ func RegisterDeepCopies(scheme *runtime.Scheme) error { return scheme.AddGeneratedDeepCopyFuncs( conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v2alpha1_CrossVersionObjectReference, InType: reflect.TypeOf(&CrossVersionObjectReference{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v2alpha1_HorizontalPodAutoscaler, InType: reflect.TypeOf(&HorizontalPodAutoscaler{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v2alpha1_HorizontalPodAutoscalerCondition, InType: reflect.TypeOf(&HorizontalPodAutoscalerCondition{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v2alpha1_HorizontalPodAutoscalerList, InType: reflect.TypeOf(&HorizontalPodAutoscalerList{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v2alpha1_HorizontalPodAutoscalerSpec, InType: reflect.TypeOf(&HorizontalPodAutoscalerSpec{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v2alpha1_HorizontalPodAutoscalerStatus, InType: reflect.TypeOf(&HorizontalPodAutoscalerStatus{})}, @@ -83,6 +84,17 @@ func DeepCopy_v2alpha1_HorizontalPodAutoscaler(in interface{}, out interface{}, } } +// DeepCopy_v2alpha1_HorizontalPodAutoscalerCondition is an autogenerated deepcopy function. +func DeepCopy_v2alpha1_HorizontalPodAutoscalerCondition(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*HorizontalPodAutoscalerCondition) + out := out.(*HorizontalPodAutoscalerCondition) + *out = *in + out.LastTransitionTime = in.LastTransitionTime.DeepCopy() + return nil + } +} + // DeepCopy_v2alpha1_HorizontalPodAutoscalerList is an autogenerated deepcopy function. func DeepCopy_v2alpha1_HorizontalPodAutoscalerList(in interface{}, out interface{}, c *conversion.Cloner) error { { @@ -151,6 +163,15 @@ func DeepCopy_v2alpha1_HorizontalPodAutoscalerStatus(in interface{}, out interfa } } } + if in.Conditions != nil { + in, out := &in.Conditions, &out.Conditions + *out = make([]HorizontalPodAutoscalerCondition, len(*in)) + for i := range *in { + if err := DeepCopy_v2alpha1_HorizontalPodAutoscalerCondition(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } return nil } } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/zz_generated.deepcopy.go index 6ba85e93..a15d9b32 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/zz_generated.deepcopy.go @@ -38,6 +38,7 @@ func RegisterDeepCopies(scheme *runtime.Scheme) error { return scheme.AddGeneratedDeepCopyFuncs( conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_autoscaling_CrossVersionObjectReference, InType: reflect.TypeOf(&CrossVersionObjectReference{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_autoscaling_HorizontalPodAutoscaler, InType: reflect.TypeOf(&HorizontalPodAutoscaler{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_autoscaling_HorizontalPodAutoscalerCondition, InType: reflect.TypeOf(&HorizontalPodAutoscalerCondition{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_autoscaling_HorizontalPodAutoscalerList, InType: reflect.TypeOf(&HorizontalPodAutoscalerList{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_autoscaling_HorizontalPodAutoscalerSpec, InType: reflect.TypeOf(&HorizontalPodAutoscalerSpec{})}, conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_autoscaling_HorizontalPodAutoscalerStatus, InType: reflect.TypeOf(&HorizontalPodAutoscalerStatus{})}, @@ -86,6 +87,17 @@ func DeepCopy_autoscaling_HorizontalPodAutoscaler(in interface{}, out interface{ } } +// DeepCopy_autoscaling_HorizontalPodAutoscalerCondition is an autogenerated deepcopy function. +func DeepCopy_autoscaling_HorizontalPodAutoscalerCondition(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*HorizontalPodAutoscalerCondition) + out := out.(*HorizontalPodAutoscalerCondition) + *out = *in + out.LastTransitionTime = in.LastTransitionTime.DeepCopy() + return nil + } +} + // DeepCopy_autoscaling_HorizontalPodAutoscalerList is an autogenerated deepcopy function. func DeepCopy_autoscaling_HorizontalPodAutoscalerList(in interface{}, out interface{}, c *conversion.Cloner) error { { @@ -154,6 +166,15 @@ func DeepCopy_autoscaling_HorizontalPodAutoscalerStatus(in interface{}, out inte } } } + if in.Conditions != nil { + in, out := &in.Conditions, &out.Conditions + *out = make([]HorizontalPodAutoscalerCondition, len(*in)) + for i := range *in { + if err := DeepCopy_autoscaling_HorizontalPodAutoscalerCondition(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } return nil } } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/batch/types.go b/vendor/k8s.io/kubernetes/pkg/apis/batch/types.go index 4da83c78..4437023a 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/batch/types.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/batch/types.go @@ -27,17 +27,17 @@ import ( type Job struct { metav1.TypeMeta // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta // Specification of the desired behavior of a job. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec JobSpec // Current status of a job. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status JobStatus } @@ -46,7 +46,7 @@ type Job struct { type JobList struct { metav1.TypeMeta // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta @@ -58,12 +58,12 @@ type JobList struct { type JobTemplate struct { metav1.TypeMeta // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta // Defines jobs that will be created from this template. - // http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status + // https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Template JobTemplateSpec } @@ -71,12 +71,12 @@ type JobTemplate struct { // JobTemplateSpec describes the data a Job should have when created from a template type JobTemplateSpec struct { // Standard object's metadata of the jobs created from this template. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta // Specification of the desired behavior of the job. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec JobSpec } @@ -193,17 +193,17 @@ type JobCondition struct { type CronJob struct { metav1.TypeMeta // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta // Specification of the desired behavior of a cron job, including the schedule. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec CronJobSpec // Current status of a cron job. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status CronJobStatus } @@ -212,7 +212,7 @@ type CronJob struct { type CronJobList struct { metav1.TypeMeta // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta diff --git a/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/generated.pb.go index 86622d95..3b3fd70a 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/generated.pb.go @@ -1526,61 +1526,60 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 885 bytes of a gzipped FileDescriptorProto + // 873 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x54, 0xdd, 0x6e, 0xe3, 0x44, - 0x14, 0xce, 0x4f, 0xd3, 0x26, 0x93, 0xb6, 0xbb, 0x8c, 0x54, 0x29, 0xf4, 0x22, 0x59, 0x05, 0x84, - 0x0a, 0xda, 0xb5, 0x49, 0xbb, 0x42, 0x88, 0x0b, 0x24, 0x5c, 0x84, 0x44, 0xd5, 0xb2, 0xd5, 0xa4, - 0x02, 0x89, 0x1f, 0x89, 0xb1, 0x7d, 0x9a, 0x0e, 0xb5, 0x3d, 0x96, 0x67, 0x12, 0xd1, 0x3b, 0xde, - 0x00, 0x1e, 0x06, 0x21, 0x1e, 0xa1, 0x97, 0xbd, 0xe4, 0x2a, 0xa2, 0xe6, 0x2d, 0xf6, 0x0a, 0xcd, - 0x78, 0xfc, 0x93, 0x4d, 0x0a, 0xd9, 0xbd, 0xb3, 0xcf, 0x7c, 0xdf, 0x37, 0x67, 0xce, 0xf9, 0xce, - 0x41, 0x47, 0xd7, 0x1f, 0x0b, 0x8b, 0x71, 0xfb, 0x7a, 0xea, 0x42, 0x12, 0x81, 0x04, 0x61, 0xc7, - 0xd7, 0x13, 0x9b, 0xc6, 0x4c, 0xd8, 0x2e, 0x95, 0xde, 0x95, 0x3d, 0x1b, 0xd9, 0x13, 0x88, 0x20, - 0xa1, 0x12, 0x7c, 0x2b, 0x4e, 0xb8, 0xe4, 0xf8, 0x9d, 0x8c, 0x64, 0x95, 0x24, 0x2b, 0xbe, 0x9e, - 0x58, 0x8a, 0x64, 0x69, 0x92, 0x35, 0x1b, 0xed, 0x3f, 0x9b, 0x30, 0x79, 0x35, 0x75, 0x2d, 0x8f, - 0x87, 0xf6, 0x84, 0x4f, 0xb8, 0xad, 0xb9, 0xee, 0xf4, 0x52, 0xff, 0xe9, 0x1f, 0xfd, 0x95, 0x69, - 0xee, 0x3f, 0x37, 0x89, 0xd0, 0x98, 0x85, 0xd4, 0xbb, 0x62, 0x11, 0x24, 0x37, 0x65, 0x2a, 0x21, - 0x48, 0xba, 0x22, 0x93, 0x7d, 0xfb, 0x21, 0x56, 0x32, 0x8d, 0x24, 0x0b, 0x61, 0x89, 0xf0, 0xd1, - 0xff, 0x11, 0x84, 0x77, 0x05, 0x21, 0x5d, 0xe2, 0x1d, 0x3d, 0xc4, 0x9b, 0x4a, 0x16, 0xd8, 0x2c, - 0x92, 0x42, 0x26, 0x4b, 0xa4, 0xca, 0x9b, 0x04, 0x24, 0x33, 0x48, 0xca, 0x07, 0xc1, 0xcf, 0x34, - 0x8c, 0x03, 0x58, 0xf5, 0xa6, 0xa7, 0x0f, 0xb6, 0x64, 0x05, 0x7a, 0xf8, 0x6b, 0x03, 0x35, 0x4f, - 0xb8, 0x8b, 0x7f, 0x44, 0x6d, 0x55, 0x24, 0x9f, 0x4a, 0xda, 0xab, 0x3f, 0xa9, 0x1f, 0x74, 0x0f, - 0x3f, 0xb4, 0x4c, 0x9b, 0xaa, 0x39, 0x97, 0x8d, 0x52, 0x68, 0x6b, 0x36, 0xb2, 0x5e, 0xb8, 0x3f, - 0x81, 0x27, 0xcf, 0x40, 0x52, 0x07, 0xdf, 0xce, 0x07, 0xb5, 0x74, 0x3e, 0x40, 0x65, 0x8c, 0x14, - 0xaa, 0xf8, 0x2b, 0xb4, 0x21, 0x62, 0xf0, 0x7a, 0x0d, 0xad, 0xfe, 0xd4, 0x5a, 0xc3, 0x04, 0xd6, - 0x09, 0x77, 0xc7, 0x31, 0x78, 0xce, 0xb6, 0x51, 0xde, 0x50, 0x7f, 0x44, 0xeb, 0xe0, 0xaf, 0xd1, - 0xa6, 0x90, 0x54, 0x4e, 0x45, 0xaf, 0xa9, 0x15, 0xad, 0xb5, 0x15, 0x35, 0xcb, 0xd9, 0x35, 0x9a, - 0x9b, 0xd9, 0x3f, 0x31, 0x6a, 0xc3, 0xbb, 0x26, 0xda, 0x3e, 0xe1, 0xee, 0x31, 0x8f, 0x7c, 0x26, - 0x19, 0x8f, 0xf0, 0x73, 0xb4, 0x21, 0x6f, 0x62, 0xd0, 0x65, 0xe9, 0x38, 0x4f, 0xf2, 0x54, 0x2e, - 0x6e, 0x62, 0x78, 0x39, 0x1f, 0x3c, 0xae, 0x62, 0x55, 0x8c, 0x68, 0x74, 0x25, 0xbd, 0x86, 0xe6, - 0x7d, 0xba, 0x78, 0xdd, 0xcb, 0xf9, 0xe0, 0x3f, 0x1b, 0x65, 0x15, 0x9a, 0x8b, 0xe9, 0xe1, 0x09, - 0xda, 0x09, 0xa8, 0x90, 0xe7, 0x09, 0x77, 0xe1, 0x82, 0x85, 0x60, 0x5e, 0xff, 0xc1, 0x7a, 0xdd, - 0x52, 0x0c, 0x67, 0xcf, 0xa4, 0xb2, 0x73, 0x5a, 0x15, 0x22, 0x8b, 0xba, 0x78, 0x86, 0xb0, 0x0a, - 0x5c, 0x24, 0x34, 0x12, 0xd9, 0xe3, 0xd4, 0x6d, 0x1b, 0xaf, 0x7d, 0xdb, 0xbe, 0xb9, 0x0d, 0x9f, - 0x2e, 0xa9, 0x91, 0x15, 0x37, 0xe0, 0xf7, 0xd0, 0x66, 0x02, 0x54, 0xf0, 0xa8, 0xd7, 0xd2, 0x85, - 0x2b, 0xfa, 0x44, 0x74, 0x94, 0x98, 0x53, 0xfc, 0x3e, 0xda, 0x0a, 0x41, 0x08, 0x3a, 0x81, 0xde, - 0xa6, 0x06, 0x3e, 0x32, 0xc0, 0xad, 0xb3, 0x2c, 0x4c, 0xf2, 0xf3, 0xe1, 0x1f, 0x75, 0xb4, 0x75, - 0xc2, 0xdd, 0x53, 0x26, 0x24, 0xfe, 0x7e, 0xc9, 0xe8, 0xd6, 0x7a, 0x8f, 0x51, 0x6c, 0x6d, 0xf3, - 0xc7, 0xe6, 0x9e, 0x76, 0x1e, 0xa9, 0x98, 0xfc, 0x0c, 0xb5, 0x98, 0x84, 0x50, 0x35, 0xbd, 0x79, - 0xd0, 0x3d, 0x3c, 0x58, 0xd7, 0x93, 0xce, 0x8e, 0x11, 0x6d, 0x7d, 0xa9, 0xe8, 0x24, 0x53, 0x19, - 0xfe, 0xd9, 0xd4, 0x89, 0x2b, 0xd7, 0xe3, 0x11, 0xea, 0xc6, 0x34, 0xa1, 0x41, 0x00, 0x01, 0x13, - 0xa1, 0xce, 0xbd, 0xe5, 0x3c, 0x4a, 0xe7, 0x83, 0xee, 0x79, 0x19, 0x26, 0x55, 0x8c, 0xa2, 0x78, - 0x5c, 0xed, 0x09, 0x55, 0xdc, 0xcc, 0x88, 0x86, 0x72, 0x5c, 0x86, 0x49, 0x15, 0x83, 0x5f, 0xa0, - 0x3d, 0xea, 0x49, 0x36, 0x83, 0xcf, 0x81, 0xfa, 0x01, 0x8b, 0x60, 0x0c, 0x1e, 0x8f, 0xfc, 0x6c, - 0xc8, 0x9a, 0xce, 0xdb, 0xe9, 0x7c, 0xb0, 0xf7, 0xd9, 0x2a, 0x00, 0x59, 0xcd, 0xc3, 0x3f, 0xa0, - 0xb6, 0x80, 0x00, 0x3c, 0xc9, 0x13, 0x63, 0x9e, 0xa3, 0x35, 0xeb, 0x4d, 0x5d, 0x08, 0xc6, 0x86, - 0xea, 0x6c, 0xab, 0x82, 0xe7, 0x7f, 0xa4, 0x90, 0xc4, 0x9f, 0xa0, 0xdd, 0x90, 0x46, 0x53, 0x5a, - 0x20, 0xb5, 0x6b, 0xda, 0x0e, 0x4e, 0xe7, 0x83, 0xdd, 0xb3, 0x85, 0x13, 0xf2, 0x0a, 0x12, 0x7f, - 0x87, 0xda, 0x12, 0xc2, 0x38, 0xa0, 0x32, 0xb3, 0x50, 0xf7, 0xf0, 0xd9, 0xc3, 0xfd, 0x52, 0x29, - 0x9d, 0x73, 0xff, 0xc2, 0x10, 0xf4, 0x5a, 0x2a, 0x9c, 0x90, 0x47, 0x49, 0x21, 0x38, 0xfc, 0xbd, - 0x89, 0x3a, 0xc5, 0xb2, 0xc1, 0x80, 0x90, 0x97, 0x0f, 0xb4, 0xe8, 0xd5, 0xb5, 0x39, 0x46, 0xeb, - 0x9a, 0xa3, 0x58, 0x05, 0xe5, 0x86, 0x2d, 0x42, 0x82, 0x54, 0x84, 0xf1, 0x37, 0xa8, 0x23, 0x24, - 0x4d, 0xa4, 0x1e, 0xd5, 0xc6, 0x6b, 0x8f, 0xea, 0x4e, 0x3a, 0x1f, 0x74, 0xc6, 0xb9, 0x00, 0x29, - 0xb5, 0xf0, 0x25, 0xda, 0x2d, 0x5d, 0xf2, 0x86, 0x6b, 0x47, 0xb7, 0xe4, 0x78, 0x41, 0x85, 0xbc, - 0xa2, 0xaa, 0x86, 0x3f, 0xb3, 0x91, 0xf6, 0x4a, 0xab, 0x1c, 0xfe, 0xcc, 0x73, 0xc4, 0x9c, 0x62, - 0x1b, 0x75, 0xc4, 0xd4, 0xf3, 0x00, 0x7c, 0xf0, 0x75, 0xc7, 0x5b, 0xce, 0x5b, 0x06, 0xda, 0x19, - 0xe7, 0x07, 0xa4, 0xc4, 0x28, 0xe1, 0x4b, 0xca, 0x02, 0xf0, 0x75, 0xa7, 0x2b, 0xc2, 0x5f, 0xe8, - 0x28, 0x31, 0xa7, 0xce, 0xbb, 0xb7, 0xf7, 0xfd, 0xda, 0xdd, 0x7d, 0xbf, 0xf6, 0xd7, 0x7d, 0xbf, - 0xf6, 0x4b, 0xda, 0xaf, 0xdf, 0xa6, 0xfd, 0xfa, 0x5d, 0xda, 0xaf, 0xff, 0x9d, 0xf6, 0xeb, 0xbf, - 0xfd, 0xd3, 0xaf, 0x7d, 0xdb, 0x98, 0x8d, 0xfe, 0x0d, 0x00, 0x00, 0xff, 0xff, 0xe7, 0xe7, 0x0a, - 0x8d, 0xf7, 0x08, 0x00, 0x00, + 0x14, 0xce, 0x4f, 0xd3, 0x26, 0x93, 0xb6, 0xbb, 0x8c, 0x54, 0x29, 0xf4, 0xc2, 0x59, 0x05, 0x09, + 0x15, 0xb4, 0x6b, 0x93, 0x76, 0x85, 0x10, 0x17, 0x48, 0xb8, 0x08, 0x89, 0xaa, 0x65, 0xab, 0x49, + 0x05, 0x12, 0x3f, 0x12, 0x63, 0xfb, 0x34, 0x1d, 0x6a, 0x7b, 0x2c, 0xcf, 0x24, 0x52, 0xef, 0x78, + 0x03, 0x78, 0x18, 0x84, 0x78, 0x84, 0x5e, 0xf6, 0x72, 0xaf, 0x22, 0x6a, 0xde, 0x62, 0xaf, 0xd0, + 0x8c, 0x27, 0xb6, 0xb3, 0x49, 0x21, 0xe5, 0xce, 0x3e, 0xf3, 0x7d, 0xdf, 0x39, 0x73, 0xce, 0x77, + 0x06, 0x1d, 0x5d, 0x7f, 0x22, 0x6c, 0xc6, 0x9d, 0xeb, 0x89, 0x07, 0x69, 0x0c, 0x12, 0x84, 0x93, + 0x5c, 0x8f, 0x1d, 0x9a, 0x30, 0xe1, 0x78, 0x54, 0xfa, 0x57, 0xce, 0x74, 0xe8, 0x8c, 0x21, 0x86, + 0x94, 0x4a, 0x08, 0xec, 0x24, 0xe5, 0x92, 0xe3, 0xf7, 0x72, 0x92, 0x5d, 0x92, 0xec, 0xe4, 0x7a, + 0x6c, 0x2b, 0x92, 0xad, 0x49, 0xf6, 0x74, 0xb8, 0xff, 0x62, 0xcc, 0xe4, 0xd5, 0xc4, 0xb3, 0x7d, + 0x1e, 0x39, 0x63, 0x3e, 0xe6, 0x8e, 0xe6, 0x7a, 0x93, 0x4b, 0xfd, 0xa7, 0x7f, 0xf4, 0x57, 0xae, + 0xb9, 0xff, 0xd2, 0x14, 0x42, 0x13, 0x16, 0x51, 0xff, 0x8a, 0xc5, 0x90, 0xde, 0x94, 0xa5, 0x44, + 0x20, 0xe9, 0x8a, 0x4a, 0xf6, 0x9d, 0x87, 0x58, 0xe9, 0x24, 0x96, 0x2c, 0x82, 0x25, 0xc2, 0xc7, + 0xff, 0x45, 0x10, 0xfe, 0x15, 0x44, 0x74, 0x89, 0x77, 0xf4, 0x10, 0x6f, 0x22, 0x59, 0xe8, 0xb0, + 0x58, 0x0a, 0x99, 0x2e, 0x91, 0x9e, 0x3f, 0xd8, 0xdc, 0x15, 0x77, 0x19, 0xfc, 0xda, 0x40, 0xcd, + 0x13, 0xee, 0xe1, 0x9f, 0x50, 0x5b, 0x5d, 0x37, 0xa0, 0x92, 0xf6, 0xea, 0xcf, 0xea, 0x07, 0xdd, + 0xc3, 0x8f, 0x6c, 0xd3, 0xf0, 0x6a, 0xf6, 0xb2, 0xe5, 0x0a, 0x6d, 0x4f, 0x87, 0xf6, 0x2b, 0xef, + 0x67, 0xf0, 0xe5, 0x19, 0x48, 0xea, 0xe2, 0xdb, 0x59, 0xbf, 0x96, 0xcd, 0xfa, 0xa8, 0x8c, 0x91, + 0x42, 0x15, 0x7f, 0x8d, 0x36, 0x44, 0x02, 0x7e, 0xaf, 0xa1, 0xd5, 0x9f, 0xdb, 0x6b, 0x8c, 0xd3, + 0x3e, 0xe1, 0xde, 0x28, 0x01, 0xdf, 0xdd, 0x36, 0xca, 0x1b, 0xea, 0x8f, 0x68, 0x1d, 0xfc, 0x0d, + 0xda, 0x14, 0x92, 0xca, 0x89, 0xe8, 0x35, 0xb5, 0xa2, 0xbd, 0xb6, 0xa2, 0x66, 0xb9, 0xbb, 0x46, + 0x73, 0x33, 0xff, 0x27, 0x46, 0x6d, 0x70, 0xd7, 0x44, 0xdb, 0x27, 0xdc, 0x3b, 0xe6, 0x71, 0xc0, + 0x24, 0xe3, 0x31, 0x7e, 0x89, 0x36, 0xe4, 0x4d, 0x02, 0xba, 0x2d, 0x1d, 0xf7, 0xd9, 0xbc, 0x94, + 0x8b, 0x9b, 0x04, 0xde, 0xcc, 0xfa, 0x4f, 0xab, 0x58, 0x15, 0x23, 0x1a, 0x5d, 0x29, 0xaf, 0xa1, + 0x79, 0x9f, 0x2d, 0xa6, 0x7b, 0x33, 0xeb, 0xff, 0xeb, 0xa0, 0xec, 0x42, 0x73, 0xb1, 0x3c, 0x3c, + 0x46, 0x3b, 0x21, 0x15, 0xf2, 0x3c, 0xe5, 0x1e, 0x5c, 0xb0, 0x08, 0xcc, 0xed, 0x3f, 0x5c, 0x6f, + 0x5a, 0x8a, 0xe1, 0xee, 0x99, 0x52, 0x76, 0x4e, 0xab, 0x42, 0x64, 0x51, 0x17, 0x4f, 0x11, 0x56, + 0x81, 0x8b, 0x94, 0xc6, 0x22, 0xbf, 0x9c, 0xca, 0xb6, 0xf1, 0xe8, 0x6c, 0xfb, 0x26, 0x1b, 0x3e, + 0x5d, 0x52, 0x23, 0x2b, 0x32, 0xe0, 0xf7, 0xd1, 0x66, 0x0a, 0x54, 0xf0, 0xb8, 0xd7, 0xd2, 0x8d, + 0x2b, 0xe6, 0x44, 0x74, 0x94, 0x98, 0x53, 0xfc, 0x01, 0xda, 0x8a, 0x40, 0x08, 0x3a, 0x86, 0xde, + 0xa6, 0x06, 0x3e, 0x31, 0xc0, 0xad, 0xb3, 0x3c, 0x4c, 0xe6, 0xe7, 0x83, 0x3f, 0xea, 0x68, 0xeb, + 0x84, 0x7b, 0xa7, 0x4c, 0x48, 0xfc, 0xc3, 0x92, 0xd1, 0xed, 0xf5, 0x2e, 0xa3, 0xd8, 0xda, 0xe6, + 0x4f, 0x4d, 0x9e, 0xf6, 0x3c, 0x52, 0x31, 0xf9, 0x19, 0x6a, 0x31, 0x09, 0x91, 0x1a, 0x7a, 0xf3, + 0xa0, 0x7b, 0x78, 0xb0, 0xae, 0x27, 0xdd, 0x1d, 0x23, 0xda, 0xfa, 0x4a, 0xd1, 0x49, 0xae, 0x32, + 0xf8, 0xb3, 0xa9, 0x0b, 0x57, 0xae, 0xc7, 0x43, 0xd4, 0x4d, 0x68, 0x4a, 0xc3, 0x10, 0x42, 0x26, + 0x22, 0x5d, 0x7b, 0xcb, 0x7d, 0x92, 0xcd, 0xfa, 0xdd, 0xf3, 0x32, 0x4c, 0xaa, 0x18, 0x45, 0xf1, + 0x79, 0x94, 0x84, 0xa0, 0x9a, 0x9b, 0x1b, 0xd1, 0x50, 0x8e, 0xcb, 0x30, 0xa9, 0x62, 0xf0, 0x2b, + 0xb4, 0x47, 0x7d, 0xc9, 0xa6, 0xf0, 0x05, 0xd0, 0x20, 0x64, 0x31, 0x8c, 0xc0, 0xe7, 0x71, 0x90, + 0x2f, 0x59, 0xd3, 0x7d, 0x37, 0x9b, 0xf5, 0xf7, 0x3e, 0x5f, 0x05, 0x20, 0xab, 0x79, 0xf8, 0x47, + 0xd4, 0x16, 0x10, 0x82, 0x2f, 0x79, 0x6a, 0xcc, 0x73, 0xb4, 0x66, 0xbf, 0xa9, 0x07, 0xe1, 0xc8, + 0x50, 0xdd, 0x6d, 0xd5, 0xf0, 0xf9, 0x1f, 0x29, 0x24, 0xf1, 0xa7, 0x68, 0x37, 0xa2, 0xf1, 0x84, + 0x16, 0x48, 0xed, 0x9a, 0xb6, 0x8b, 0xb3, 0x59, 0x7f, 0xf7, 0x6c, 0xe1, 0x84, 0xbc, 0x85, 0xc4, + 0xdf, 0xa3, 0xb6, 0x84, 0x28, 0x09, 0xa9, 0xcc, 0x2d, 0xd4, 0x3d, 0x7c, 0xf1, 0xf0, 0xbc, 0x54, + 0x49, 0xe7, 0x3c, 0xb8, 0x30, 0x04, 0xfd, 0x2c, 0x15, 0x4e, 0x98, 0x47, 0x49, 0x21, 0x38, 0xf8, + 0xbd, 0x89, 0x3a, 0xc5, 0x63, 0x83, 0x01, 0x21, 0x7f, 0xbe, 0xd0, 0xa2, 0x57, 0xd7, 0xe6, 0x18, + 0xae, 0x6b, 0x8e, 0xe2, 0x29, 0x28, 0x5f, 0xd8, 0x22, 0x24, 0x48, 0x45, 0x18, 0x7f, 0x8b, 0x3a, + 0x42, 0xd2, 0x54, 0xea, 0x55, 0x6d, 0x3c, 0x7a, 0x55, 0x77, 0xb2, 0x59, 0xbf, 0x33, 0x9a, 0x0b, + 0x90, 0x52, 0x0b, 0x5f, 0xa2, 0xdd, 0xd2, 0x25, 0xff, 0xf3, 0xd9, 0xd1, 0x23, 0x39, 0x5e, 0x50, + 0x21, 0x6f, 0xa9, 0xaa, 0xe5, 0xcf, 0x6d, 0xa4, 0xbd, 0xd2, 0x2a, 0x97, 0x3f, 0xf7, 0x1c, 0x31, + 0xa7, 0xd8, 0x41, 0x1d, 0x31, 0xf1, 0x7d, 0x80, 0x00, 0x02, 0x3d, 0xf1, 0x96, 0xfb, 0x8e, 0x81, + 0x76, 0x46, 0xf3, 0x03, 0x52, 0x62, 0x94, 0xf0, 0x25, 0x65, 0x21, 0x04, 0x7a, 0xd2, 0x15, 0xe1, + 0x2f, 0x75, 0x94, 0x98, 0x53, 0xf7, 0xe0, 0xf6, 0xde, 0xaa, 0xdd, 0xdd, 0x5b, 0xb5, 0xd7, 0xf7, + 0x56, 0xed, 0x97, 0xcc, 0xaa, 0xdf, 0x66, 0x56, 0xfd, 0x2e, 0xb3, 0xea, 0xaf, 0x33, 0xab, 0xfe, + 0x57, 0x66, 0xd5, 0x7f, 0xfb, 0xdb, 0xaa, 0x7d, 0xd7, 0x98, 0x0e, 0xff, 0x09, 0x00, 0x00, 0xff, + 0xff, 0xe1, 0x7e, 0xeb, 0x67, 0xc5, 0x08, 0x00, 0x00, } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/generated.proto b/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/generated.proto index fe946b26..8d49a24f 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/generated.proto @@ -25,7 +25,6 @@ import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; import "k8s.io/kubernetes/pkg/api/v1/generated.proto"; // Package-wide variables from generator "generated". @@ -34,17 +33,17 @@ option go_package = "v1"; // Job represents the configuration of a single job. message Job { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // Specification of the desired behavior of a job. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional JobSpec spec = 2; // Current status of a job. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional JobStatus status = 3; } @@ -77,7 +76,7 @@ message JobCondition { // JobList is a collection of jobs. message JobList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -124,7 +123,7 @@ message JobSpec { // and other jobs to not function correctly. However, You may see // `manualSelector=true` in jobs that were created with the old `extensions/v1beta1` // API. - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/selector-generation.md + // More info: https://git.k8s.io/community/contributors/design-proposals/selector-generation.md // +optional optional bool manualSelector = 5; diff --git a/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/types.go b/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/types.go index 25443038..8c3b763c 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/types.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/types.go @@ -27,17 +27,17 @@ import ( type Job struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Specification of the desired behavior of a job. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec JobSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` // Current status of a job. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status JobStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } @@ -46,7 +46,7 @@ type Job struct { type JobList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -94,7 +94,7 @@ type JobSpec struct { // and other jobs to not function correctly. However, You may see // `manualSelector=true` in jobs that were created with the old `extensions/v1beta1` // API. - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/selector-generation.md + // More info: https://git.k8s.io/community/contributors/design-proposals/selector-generation.md // +optional ManualSelector *bool `json:"manualSelector,omitempty" protobuf:"varint,5,opt,name=manualSelector"` diff --git a/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/types_swagger_doc_generated.go b/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/types_swagger_doc_generated.go index 93aae065..da498519 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/types_swagger_doc_generated.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/types_swagger_doc_generated.go @@ -29,9 +29,9 @@ package v1 // AUTO-GENERATED FUNCTIONS START HERE var map_Job = map[string]string{ "": "Job represents the configuration of a single job.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "spec": "Specification of the desired behavior of a job. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", - "status": "Current status of a job. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "Specification of the desired behavior of a job. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", + "status": "Current status of a job. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (Job) SwaggerDoc() map[string]string { @@ -54,7 +54,7 @@ func (JobCondition) SwaggerDoc() map[string]string { var map_JobList = map[string]string{ "": "JobList is a collection of jobs.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "items": "items is the list of Jobs.", } @@ -68,7 +68,7 @@ var map_JobSpec = map[string]string{ "completions": "Specifies the desired number of successfully finished pods the job should be run with. Setting to nil means that the success of any pod signals the success of all pods, and allows parallelism to have any positive value. Setting to 1 means that parallelism is limited to 1 and the success of that pod signals the success of the job. More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/", "activeDeadlineSeconds": "Optional duration in seconds relative to the startTime that the job may be active before the system tries to terminate it; value must be positive integer", "selector": "A label query over pods that should match the pod count. Normally, the system sets this field for you. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors", - "manualSelector": "manualSelector controls generation of pod labels and pod selectors. Leave `manualSelector` unset unless you are certain what you are doing. When false or unset, the system pick labels unique to this job and appends those labels to the pod template. When true, the user is responsible for picking unique labels and specifying the selector. Failure to pick a unique label may cause this and other jobs to not function correctly. However, You may see `manualSelector=true` in jobs that were created with the old `extensions/v1beta1` API. More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/selector-generation.md", + "manualSelector": "manualSelector controls generation of pod labels and pod selectors. Leave `manualSelector` unset unless you are certain what you are doing. When false or unset, the system pick labels unique to this job and appends those labels to the pod template. When true, the user is responsible for picking unique labels and specifying the selector. Failure to pick a unique label may cause this and other jobs to not function correctly. However, You may see `manualSelector=true` in jobs that were created with the old `extensions/v1beta1` API. More info: https://git.k8s.io/community/contributors/design-proposals/selector-generation.md", "template": "Describes the pod that will be created when executing a job. More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/", } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/generated.pb.go index e89789fc..72070f91 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/generated.pb.go @@ -1457,55 +1457,55 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 799 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x94, 0x4d, 0x4f, 0xe3, 0x46, - 0x18, 0xc7, 0xe3, 0x90, 0x37, 0x26, 0xa5, 0x05, 0xb7, 0x82, 0x28, 0x95, 0x9c, 0x28, 0x52, 0xa5, - 0x14, 0x81, 0x5d, 0x42, 0x85, 0x68, 0x6f, 0x35, 0x55, 0xd5, 0x22, 0xfa, 0x22, 0x07, 0xd4, 0xaa, - 0x42, 0x15, 0x63, 0xe7, 0x49, 0x32, 0xc4, 0x6f, 0xf5, 0x8c, 0xa3, 0xe6, 0xd6, 0x8f, 0xd0, 0x6f, - 0xd1, 0x6f, 0xb1, 0x97, 0xdd, 0x03, 0x47, 0x0e, 0x7b, 0xd8, 0xbd, 0x44, 0x8b, 0xf7, 0x5b, 0xec, - 0x69, 0xe5, 0x89, 0x13, 0x07, 0x1c, 0x2f, 0x61, 0x57, 0xe2, 0xe6, 0x19, 0x3f, 0xff, 0xdf, 0x3c, - 0xcf, 0xf3, 0x7f, 0x66, 0xd0, 0x37, 0x83, 0x43, 0x2a, 0x13, 0x47, 0x19, 0xf8, 0x3a, 0x78, 0x36, - 0x30, 0xa0, 0x8a, 0x3b, 0xe8, 0x29, 0xd8, 0x25, 0x54, 0xd1, 0x31, 0x33, 0xfa, 0xca, 0xb0, 0x85, - 0x4d, 0xb7, 0x8f, 0xf7, 0x94, 0x1e, 0xd8, 0xe0, 0x61, 0x06, 0x1d, 0xd9, 0xf5, 0x1c, 0xe6, 0x88, - 0x5f, 0x4e, 0xa4, 0x72, 0x2c, 0x95, 0xdd, 0x41, 0x4f, 0x0e, 0xa5, 0x32, 0x97, 0xca, 0x53, 0x69, - 0x75, 0xb7, 0x47, 0x58, 0xdf, 0xd7, 0x65, 0xc3, 0xb1, 0x94, 0x9e, 0xd3, 0x73, 0x14, 0x4e, 0xd0, - 0xfd, 0x2e, 0x5f, 0xf1, 0x05, 0xff, 0x9a, 0x90, 0xab, 0x5f, 0x47, 0x49, 0x61, 0x97, 0x58, 0xd8, - 0xe8, 0x13, 0x1b, 0xbc, 0x51, 0x9c, 0x96, 0x05, 0x0c, 0x2b, 0xc3, 0x44, 0x3e, 0x55, 0x25, 0x4d, - 0xe5, 0xf9, 0x36, 0x23, 0x16, 0x24, 0x04, 0x07, 0xf7, 0x09, 0xa8, 0xd1, 0x07, 0x0b, 0x27, 0x74, - 0xfb, 0x69, 0x3a, 0x9f, 0x11, 0x53, 0x21, 0x36, 0xa3, 0xcc, 0x4b, 0x88, 0xe6, 0x6a, 0xa2, 0xe0, - 0x0d, 0xc1, 0x8b, 0x0b, 0x82, 0x7f, 0xb0, 0xe5, 0x9a, 0xb0, 0xa8, 0xa6, 0x9d, 0x54, 0x7b, 0x16, - 0x45, 0xef, 0xdf, 0x6f, 0x66, 0x42, 0xd4, 0xf8, 0x3f, 0x8b, 0x8a, 0x47, 0x9e, 0x63, 0x1f, 0x3b, - 0xba, 0x78, 0x81, 0x4a, 0x61, 0x77, 0x3b, 0x98, 0xe1, 0x8a, 0x50, 0x17, 0x9a, 0xe5, 0xd6, 0x57, - 0x72, 0xe4, 0xf2, 0x7c, 0xb1, 0xb1, 0xcf, 0x61, 0xb4, 0x3c, 0xdc, 0x93, 0x7f, 0xd5, 0x2f, 0xc1, - 0x60, 0x3f, 0x03, 0xc3, 0xaa, 0x78, 0x35, 0xae, 0x65, 0x82, 0x71, 0x0d, 0xc5, 0x7b, 0xda, 0x8c, - 0x2a, 0xfe, 0x81, 0x72, 0xd4, 0x05, 0xa3, 0x92, 0xe5, 0xf4, 0x03, 0x79, 0xe9, 0x19, 0x92, 0xa3, - 0x1c, 0xdb, 0x2e, 0x18, 0xea, 0x47, 0xd1, 0x19, 0xb9, 0x70, 0xa5, 0x71, 0xa2, 0x78, 0x81, 0x0a, - 0x94, 0x61, 0xe6, 0xd3, 0xca, 0x0a, 0x67, 0x1f, 0xbe, 0x07, 0x9b, 0xeb, 0xd5, 0x8f, 0x23, 0x7a, - 0x61, 0xb2, 0xd6, 0x22, 0x6e, 0xe3, 0x99, 0x80, 0xca, 0x51, 0xe4, 0x09, 0xa1, 0x4c, 0x3c, 0x4f, - 0x74, 0x4b, 0x5e, 0xae, 0x5b, 0xa1, 0x9a, 0xf7, 0x6a, 0x3d, 0x3a, 0xa9, 0x34, 0xdd, 0x99, 0xeb, - 0xd4, 0xef, 0x28, 0x4f, 0x18, 0x58, 0xb4, 0x92, 0xad, 0xaf, 0x34, 0xcb, 0xad, 0xd6, 0xc3, 0xcb, - 0x51, 0xd7, 0x22, 0x7c, 0xfe, 0xa7, 0x10, 0xa4, 0x4d, 0x78, 0x8d, 0x27, 0xb9, 0x59, 0x19, 0x61, - 0xfb, 0xc4, 0x1d, 0x54, 0x0a, 0x07, 0xbd, 0xe3, 0x9b, 0xc0, 0xcb, 0x58, 0x8d, 0xd3, 0x6a, 0x47, - 0xfb, 0xda, 0x2c, 0x42, 0x3c, 0x43, 0x5b, 0x94, 0x61, 0x8f, 0x11, 0xbb, 0xf7, 0x3d, 0xe0, 0x8e, - 0x49, 0x6c, 0x68, 0x83, 0xe1, 0xd8, 0x1d, 0xca, 0x3d, 0x5d, 0x51, 0x3f, 0x0f, 0xc6, 0xb5, 0xad, - 0xf6, 0xe2, 0x10, 0x2d, 0x4d, 0x2b, 0x9e, 0xa3, 0x0d, 0xc3, 0xb1, 0x0d, 0xdf, 0xf3, 0xc0, 0x36, - 0x46, 0xbf, 0x39, 0x26, 0x31, 0x46, 0xdc, 0xc8, 0x55, 0x55, 0x8e, 0xb2, 0xd9, 0x38, 0xba, 0x1b, - 0xf0, 0x66, 0xd1, 0xa6, 0x96, 0x04, 0x89, 0x5f, 0xa0, 0x22, 0xf5, 0xa9, 0x0b, 0x76, 0xa7, 0x92, - 0xab, 0x0b, 0xcd, 0x92, 0x5a, 0x0e, 0xc6, 0xb5, 0x62, 0x7b, 0xb2, 0xa5, 0x4d, 0xff, 0x89, 0x7f, - 0xa3, 0xf2, 0xa5, 0xa3, 0x9f, 0x82, 0xe5, 0x9a, 0x98, 0x41, 0x25, 0xcf, 0x3d, 0xfd, 0xf6, 0x01, - 0x8d, 0x3f, 0x8e, 0xd5, 0x7c, 0x4e, 0x3f, 0x8d, 0x52, 0x2f, 0xcf, 0xfd, 0xd0, 0xe6, 0xcf, 0x10, - 0xff, 0x42, 0x55, 0xea, 0x1b, 0x06, 0x50, 0xda, 0xf5, 0xcd, 0x63, 0x47, 0xa7, 0x3f, 0x12, 0xca, - 0x1c, 0x6f, 0x74, 0x42, 0x2c, 0xc2, 0x2a, 0x85, 0xba, 0xd0, 0xcc, 0xab, 0x52, 0x30, 0xae, 0x55, - 0xdb, 0xa9, 0x51, 0xda, 0x3b, 0x08, 0xa2, 0x86, 0x36, 0xbb, 0x98, 0x98, 0xd0, 0x49, 0xb0, 0x8b, - 0x9c, 0x5d, 0x0d, 0xc6, 0xb5, 0xcd, 0x1f, 0x16, 0x46, 0x68, 0x29, 0xca, 0xc6, 0x73, 0x01, 0xad, - 0xdd, 0xba, 0x31, 0xe2, 0x19, 0x2a, 0x60, 0x83, 0x91, 0x61, 0x38, 0x40, 0xe1, 0xb0, 0xee, 0xa6, - 0xf7, 0x2c, 0x7e, 0x2d, 0x34, 0xe8, 0x42, 0x68, 0x12, 0xc4, 0x17, 0xee, 0x3b, 0x0e, 0xd1, 0x22, - 0x98, 0x68, 0xa2, 0x75, 0x13, 0x53, 0x36, 0x9d, 0xc2, 0x53, 0x62, 0x01, 0xf7, 0xaf, 0xdc, 0xda, - 0x5e, 0xee, 0xa2, 0x85, 0x0a, 0xf5, 0xb3, 0x60, 0x5c, 0x5b, 0x3f, 0xb9, 0xc3, 0xd1, 0x12, 0xe4, - 0xc6, 0x4b, 0x01, 0xcd, 0xfb, 0xf4, 0x08, 0x8f, 0x61, 0x1f, 0x95, 0xd8, 0x74, 0xd8, 0xb2, 0x1f, - 0x3c, 0x6c, 0xb3, 0x5b, 0x3b, 0x9b, 0xb4, 0x19, 0xbd, 0xf1, 0x54, 0x40, 0x9f, 0xdc, 0x89, 0x7f, - 0x84, 0xfa, 0x7e, 0xb9, 0xf5, 0xd8, 0xef, 0x2c, 0x51, 0x1b, 0xaf, 0x2a, 0xed, 0x89, 0x57, 0xb7, - 0xaf, 0x6e, 0xa4, 0xcc, 0xf5, 0x8d, 0x94, 0x79, 0x71, 0x23, 0x65, 0xfe, 0x0d, 0x24, 0xe1, 0x2a, - 0x90, 0x84, 0xeb, 0x40, 0x12, 0x5e, 0x05, 0x92, 0xf0, 0xdf, 0x6b, 0x29, 0xf3, 0x67, 0x69, 0xda, - 0x9d, 0xb7, 0x01, 0x00, 0x00, 0xff, 0xff, 0x32, 0x5e, 0xac, 0x56, 0xd9, 0x08, 0x00, 0x00, + // 786 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x94, 0x4d, 0x4f, 0xdb, 0x48, + 0x18, 0xc7, 0xe3, 0x90, 0x37, 0x26, 0xcb, 0x2e, 0x78, 0x57, 0x10, 0x65, 0x25, 0x27, 0x8a, 0xb4, + 0x52, 0x76, 0x05, 0xe3, 0x25, 0xac, 0x10, 0xdb, 0x5b, 0x4d, 0x55, 0xb5, 0x88, 0xbe, 0xc8, 0x01, + 0xb5, 0xaa, 0x50, 0xc5, 0xd8, 0x99, 0x24, 0x43, 0xfc, 0x56, 0xcf, 0x38, 0x52, 0x6e, 0xfd, 0x08, + 0xfd, 0x16, 0xfd, 0x16, 0xbd, 0xb4, 0x07, 0x8e, 0x1c, 0x7a, 0xa0, 0x97, 0xa8, 0xb8, 0xdf, 0xa2, + 0xa7, 0xca, 0x13, 0x27, 0x0e, 0x38, 0x2e, 0xa1, 0x95, 0xb8, 0x79, 0xc6, 0xcf, 0xff, 0x37, 0xcf, + 0xf3, 0x7f, 0x9e, 0x19, 0xf0, 0x7f, 0x6f, 0x87, 0x42, 0x62, 0xcb, 0x3d, 0x4f, 0xc3, 0xae, 0x85, + 0x19, 0xa6, 0xb2, 0xd3, 0xeb, 0xc8, 0xc8, 0x21, 0x54, 0xd6, 0x10, 0xd3, 0xbb, 0x72, 0xbf, 0x81, + 0x0c, 0xa7, 0x8b, 0x36, 0xe5, 0x0e, 0xb6, 0xb0, 0x8b, 0x18, 0x6e, 0x41, 0xc7, 0xb5, 0x99, 0x2d, + 0xfe, 0x3d, 0x92, 0xc2, 0x48, 0x0a, 0x9d, 0x5e, 0x07, 0x06, 0x52, 0xc8, 0xa5, 0x70, 0x2c, 0x2d, + 0x6f, 0x74, 0x08, 0xeb, 0x7a, 0x1a, 0xd4, 0x6d, 0x53, 0xee, 0xd8, 0x1d, 0x5b, 0xe6, 0x04, 0xcd, + 0x6b, 0xf3, 0x15, 0x5f, 0xf0, 0xaf, 0x11, 0xb9, 0xfc, 0x5f, 0x98, 0x14, 0x72, 0x88, 0x89, 0xf4, + 0x2e, 0xb1, 0xb0, 0x3b, 0x88, 0xd2, 0x32, 0x31, 0x43, 0x72, 0x3f, 0x96, 0x4f, 0x59, 0x4e, 0x52, + 0xb9, 0x9e, 0xc5, 0x88, 0x89, 0x63, 0x82, 0xed, 0xeb, 0x04, 0x54, 0xef, 0x62, 0x13, 0xc5, 0x74, + 0x5b, 0x49, 0x3a, 0x8f, 0x11, 0x43, 0x26, 0x16, 0xa3, 0xcc, 0x8d, 0x89, 0xd6, 0x13, 0x8d, 0x9e, + 0x55, 0xcb, 0xd6, 0xf5, 0x6d, 0x89, 0x89, 0x6a, 0x6f, 0xd3, 0x20, 0xbf, 0xeb, 0xda, 0xd6, 0x9e, + 0xad, 0x89, 0xc7, 0xa0, 0x10, 0xf8, 0xd4, 0x42, 0x0c, 0x95, 0x84, 0xaa, 0x50, 0x2f, 0x36, 0xfe, + 0x85, 0x61, 0xbf, 0xa6, 0xd3, 0x8e, 0x3a, 0x16, 0x44, 0xc3, 0xfe, 0x26, 0x7c, 0xa2, 0x9d, 0x60, + 0x9d, 0x3d, 0xc2, 0x0c, 0x29, 0xe2, 0xe9, 0xb0, 0x92, 0xf2, 0x87, 0x15, 0x10, 0xed, 0xa9, 0x13, + 0xaa, 0xf8, 0x1c, 0x64, 0xa8, 0x83, 0xf5, 0x52, 0x9a, 0xd3, 0xb7, 0xe1, 0xdc, 0xd3, 0x00, 0xc3, + 0x1c, 0x9b, 0x0e, 0xd6, 0x95, 0x5f, 0xc2, 0x33, 0x32, 0xc1, 0x4a, 0xe5, 0x44, 0xf1, 0x18, 0xe4, + 0x28, 0x43, 0xcc, 0xa3, 0xa5, 0x05, 0xce, 0xde, 0xf9, 0x01, 0x36, 0xd7, 0x2b, 0xbf, 0x86, 0xf4, + 0xdc, 0x68, 0xad, 0x86, 0xdc, 0xda, 0x07, 0x01, 0x14, 0xc3, 0xc8, 0x7d, 0x42, 0x99, 0x78, 0x14, + 0x73, 0x0b, 0xce, 0xe7, 0x56, 0xa0, 0xe6, 0x5e, 0x2d, 0x87, 0x27, 0x15, 0xc6, 0x3b, 0x53, 0x4e, + 0x3d, 0x03, 0x59, 0xc2, 0xb0, 0x49, 0x4b, 0xe9, 0xea, 0x42, 0xbd, 0xd8, 0x68, 0xdc, 0xbc, 0x1c, + 0x65, 0x29, 0xc4, 0x67, 0x1f, 0x06, 0x20, 0x75, 0xc4, 0xab, 0xbd, 0xcb, 0x4c, 0xca, 0x08, 0xec, + 0x13, 0xd7, 0x41, 0x21, 0x18, 0xd9, 0x96, 0x67, 0x60, 0x5e, 0xc6, 0x62, 0x94, 0x56, 0x33, 0xdc, + 0x57, 0x27, 0x11, 0xe2, 0x21, 0x58, 0xa3, 0x0c, 0xb9, 0x8c, 0x58, 0x9d, 0x7b, 0x18, 0xb5, 0x0c, + 0x62, 0xe1, 0x26, 0xd6, 0x6d, 0xab, 0x45, 0x79, 0x4f, 0x17, 0x94, 0x3f, 0xfd, 0x61, 0x65, 0xad, + 0x39, 0x3b, 0x44, 0x4d, 0xd2, 0x8a, 0x47, 0x60, 0x45, 0xb7, 0x2d, 0xdd, 0x73, 0x5d, 0x6c, 0xe9, + 0x83, 0xa7, 0xb6, 0x41, 0xf4, 0x01, 0x6f, 0xe4, 0xa2, 0x02, 0xc3, 0x6c, 0x56, 0x76, 0xaf, 0x06, + 0x7c, 0x9d, 0xb5, 0xa9, 0xc6, 0x41, 0xe2, 0x5f, 0x20, 0x4f, 0x3d, 0xea, 0x60, 0xab, 0x55, 0xca, + 0x54, 0x85, 0x7a, 0x41, 0x29, 0xfa, 0xc3, 0x4a, 0xbe, 0x39, 0xda, 0x52, 0xc7, 0xff, 0xc4, 0x57, + 0xa0, 0x78, 0x62, 0x6b, 0x07, 0xd8, 0x74, 0x0c, 0xc4, 0x70, 0x29, 0xcb, 0x7b, 0x7a, 0xe7, 0x06, + 0xc6, 0xef, 0x45, 0x6a, 0x3e, 0xa7, 0xbf, 0x87, 0xa9, 0x17, 0xa7, 0x7e, 0xa8, 0xd3, 0x67, 0x88, + 0x2f, 0x41, 0x99, 0x7a, 0xba, 0x8e, 0x29, 0x6d, 0x7b, 0xc6, 0x9e, 0xad, 0xd1, 0x07, 0x84, 0x32, + 0xdb, 0x1d, 0xec, 0x13, 0x93, 0xb0, 0x52, 0xae, 0x2a, 0xd4, 0xb3, 0x8a, 0xe4, 0x0f, 0x2b, 0xe5, + 0x66, 0x62, 0x94, 0xfa, 0x1d, 0x82, 0xa8, 0x82, 0xd5, 0x36, 0x22, 0x06, 0x6e, 0xc5, 0xd8, 0x79, + 0xce, 0x2e, 0xfb, 0xc3, 0xca, 0xea, 0xfd, 0x99, 0x11, 0x6a, 0x82, 0xb2, 0xf6, 0x51, 0x00, 0x4b, + 0x97, 0x6e, 0x8c, 0x78, 0x08, 0x72, 0x48, 0x67, 0xa4, 0x1f, 0x0c, 0x50, 0x30, 0xac, 0x1b, 0xc9, + 0x9e, 0x45, 0xaf, 0x85, 0x8a, 0xdb, 0x38, 0x68, 0x12, 0x8e, 0x2e, 0xdc, 0x5d, 0x0e, 0x51, 0x43, + 0x98, 0x68, 0x80, 0x65, 0x03, 0x51, 0x36, 0x9e, 0xc2, 0x03, 0x62, 0x62, 0xde, 0xbf, 0x62, 0xe3, + 0x9f, 0xf9, 0x2e, 0x5a, 0xa0, 0x50, 0xfe, 0xf0, 0x87, 0x95, 0xe5, 0xfd, 0x2b, 0x1c, 0x35, 0x46, + 0xae, 0x7d, 0x12, 0xc0, 0x74, 0x9f, 0x6e, 0xe1, 0x31, 0xec, 0x82, 0x02, 0x1b, 0x0f, 0x5b, 0xfa, + 0xa7, 0x87, 0x6d, 0x72, 0x6b, 0x27, 0x93, 0x36, 0xa1, 0xd7, 0xde, 0x0b, 0xe0, 0xb7, 0x2b, 0xf1, + 0xb7, 0x50, 0xdf, 0xe3, 0x4b, 0x8f, 0xfd, 0xfa, 0x1c, 0xb5, 0xf1, 0xaa, 0x92, 0x9e, 0x78, 0x05, + 0x9e, 0x5e, 0x48, 0xa9, 0xb3, 0x0b, 0x29, 0x75, 0x7e, 0x21, 0xa5, 0x5e, 0xfb, 0x92, 0x70, 0xea, + 0x4b, 0xc2, 0x99, 0x2f, 0x09, 0xe7, 0xbe, 0x24, 0x7c, 0xf6, 0x25, 0xe1, 0xcd, 0x17, 0x29, 0xf5, + 0xa2, 0x30, 0x76, 0xe8, 0x5b, 0x00, 0x00, 0x00, 0xff, 0xff, 0x88, 0x78, 0x12, 0x5b, 0xa7, 0x08, + 0x00, 0x00, } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/generated.proto b/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/generated.proto index a5230d9c..95ade201 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/generated.proto @@ -25,7 +25,6 @@ import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; import "k8s.io/kubernetes/pkg/api/v1/generated.proto"; import "k8s.io/kubernetes/pkg/apis/batch/v1/generated.proto"; @@ -35,17 +34,17 @@ option go_package = "v2alpha1"; // CronJob represents the configuration of a single cron job. message CronJob { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // Specification of the desired behavior of a cron job, including the schedule. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional CronJobSpec spec = 2; // Current status of a cron job. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional CronJobStatus status = 3; } @@ -53,7 +52,7 @@ message CronJob { // CronJobList is a collection of cron jobs. message CronJobList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -109,12 +108,12 @@ message CronJobStatus { // JobTemplate describes a template for creating copies of a predefined pod. message JobTemplate { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // Defines jobs that will be created from this template. - // http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status + // https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional JobTemplateSpec template = 2; } @@ -122,12 +121,12 @@ message JobTemplate { // JobTemplateSpec describes the data a Job should have when created from a template message JobTemplateSpec { // Standard object's metadata of the jobs created from this template. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // Specification of the desired behavior of the job. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional k8s.io.kubernetes.pkg.apis.batch.v1.JobSpec spec = 2; } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/types.go b/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/types.go index 7d4c1ab7..e9bb7266 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/types.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/types.go @@ -26,12 +26,12 @@ import ( type JobTemplate struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Defines jobs that will be created from this template. - // http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status + // https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Template JobTemplateSpec `json:"template,omitempty" protobuf:"bytes,2,opt,name=template"` } @@ -39,12 +39,12 @@ type JobTemplate struct { // JobTemplateSpec describes the data a Job should have when created from a template type JobTemplateSpec struct { // Standard object's metadata of the jobs created from this template. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Specification of the desired behavior of the job. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec batchv1.JobSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` } @@ -55,17 +55,17 @@ type JobTemplateSpec struct { type CronJob struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Specification of the desired behavior of a cron job, including the schedule. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec CronJobSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` // Current status of a cron job. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status CronJobStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } @@ -75,7 +75,7 @@ type CronJobList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` diff --git a/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/types_swagger_doc_generated.go b/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/types_swagger_doc_generated.go index d91b2484..2b3ed4c5 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/types_swagger_doc_generated.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/types_swagger_doc_generated.go @@ -29,9 +29,9 @@ package v2alpha1 // AUTO-GENERATED FUNCTIONS START HERE var map_CronJob = map[string]string{ "": "CronJob represents the configuration of a single cron job.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "spec": "Specification of the desired behavior of a cron job, including the schedule. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", - "status": "Current status of a cron job. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "Specification of the desired behavior of a cron job, including the schedule. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", + "status": "Current status of a cron job. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (CronJob) SwaggerDoc() map[string]string { @@ -40,7 +40,7 @@ func (CronJob) SwaggerDoc() map[string]string { var map_CronJobList = map[string]string{ "": "CronJobList is a collection of cron jobs.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "items": "items is the list of CronJobs.", } @@ -75,8 +75,8 @@ func (CronJobStatus) SwaggerDoc() map[string]string { var map_JobTemplate = map[string]string{ "": "JobTemplate describes a template for creating copies of a predefined pod.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "template": "Defines jobs that will be created from this template. http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "template": "Defines jobs that will be created from this template. https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (JobTemplate) SwaggerDoc() map[string]string { @@ -85,8 +85,8 @@ func (JobTemplate) SwaggerDoc() map[string]string { var map_JobTemplateSpec = map[string]string{ "": "JobTemplateSpec describes the data a Job should have when created from a template", - "metadata": "Standard object's metadata of the jobs created from this template. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "spec": "Specification of the desired behavior of the job. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", + "metadata": "Standard object's metadata of the jobs created from this template. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "Specification of the desired behavior of the job. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (JobTemplateSpec) SwaggerDoc() map[string]string { diff --git a/vendor/k8s.io/kubernetes/pkg/apis/certificates/v1beta1/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/apis/certificates/v1beta1/generated.pb.go index 7687d993..39eda379 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/certificates/v1beta1/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/certificates/v1beta1/generated.pb.go @@ -38,9 +38,10 @@ import proto "github.com/gogo/protobuf/proto" import fmt "fmt" import math "math" +import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + import strings "strings" import reflect "reflect" -import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" import io "io" @@ -275,10 +276,15 @@ func (m *CertificateSigningRequestSpec) MarshalTo(dAtA []byte) (int, error) { } } if len(m.Extra) > 0 { + keysForExtra := make([]string, 0, len(m.Extra)) for k := range m.Extra { + keysForExtra = append(keysForExtra, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForExtra) + for _, k := range keysForExtra { dAtA[i] = 0x32 i++ - v := m.Extra[k] + v := m.Extra[string(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -1632,58 +1638,57 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 833 bytes of a gzipped FileDescriptorProto + // 820 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x54, 0xcf, 0x8f, 0xdb, 0x44, - 0x14, 0x8e, 0xf3, 0x6b, 0x93, 0xc9, 0xb2, 0xad, 0x46, 0xa8, 0x32, 0x2b, 0xd5, 0x5e, 0x59, 0x80, - 0xb6, 0x08, 0x6c, 0xb2, 0x20, 0x58, 0x95, 0x03, 0x92, 0x4b, 0x85, 0x0a, 0x2d, 0x3f, 0x66, 0x1b, - 0x24, 0x10, 0x07, 0x26, 0xce, 0xab, 0x77, 0x9a, 0xf8, 0x07, 0x9e, 0x71, 0xb4, 0xb9, 0xa0, 0xde, - 0xb8, 0x72, 0xe4, 0x82, 0xc4, 0x9f, 0xb3, 0xc7, 0x1e, 0x39, 0xa0, 0x88, 0x0d, 0x27, 0x2e, 0xfc, - 0x01, 0x3d, 0xa1, 0x19, 0x4f, 0x62, 0xb3, 0x21, 0xb4, 0x2b, 0xe5, 0xe6, 0xf9, 0xe6, 0xbd, 0xef, - 0x7b, 0xef, 0x7b, 0xcf, 0x83, 0x3e, 0x1c, 0x1f, 0x73, 0x97, 0x25, 0xde, 0x38, 0x1f, 0x42, 0x16, - 0x83, 0x00, 0xee, 0xa5, 0xe3, 0xd0, 0xa3, 0x29, 0xe3, 0x5e, 0x00, 0x99, 0x60, 0x8f, 0x58, 0x40, - 0x25, 0x3a, 0xed, 0x0f, 0x41, 0xd0, 0xbe, 0x17, 0x42, 0x0c, 0x19, 0x15, 0x30, 0x72, 0xd3, 0x2c, - 0x11, 0x09, 0xf6, 0x0a, 0x02, 0xb7, 0x24, 0x70, 0xd3, 0x71, 0xe8, 0x4a, 0x02, 0xb7, 0x4a, 0xe0, - 0x6a, 0x82, 0xfd, 0xb7, 0x42, 0x26, 0x4e, 0xf3, 0xa1, 0x1b, 0x24, 0x91, 0x17, 0x26, 0x61, 0xe2, - 0x29, 0x9e, 0x61, 0xfe, 0x48, 0x9d, 0xd4, 0x41, 0x7d, 0x15, 0xfc, 0xfb, 0xef, 0xea, 0x02, 0x69, - 0xca, 0x22, 0x1a, 0x9c, 0xb2, 0x18, 0xb2, 0x59, 0x59, 0x62, 0x04, 0x82, 0x7a, 0xd3, 0xb5, 0xaa, - 0xf6, 0xbd, 0x4d, 0x59, 0x59, 0x1e, 0x0b, 0x16, 0xc1, 0x5a, 0xc2, 0x7b, 0xcf, 0x4b, 0xe0, 0xc1, - 0x29, 0x44, 0x74, 0x2d, 0xef, 0x9d, 0x4d, 0x79, 0xb9, 0x60, 0x13, 0x8f, 0xc5, 0x82, 0x8b, 0x6c, - 0x2d, 0xa9, 0xd2, 0x13, 0x87, 0x6c, 0x0a, 0x59, 0xd9, 0x10, 0x9c, 0xd1, 0x28, 0x9d, 0xc0, 0x7f, - 0xf4, 0xe4, 0xfc, 0x55, 0x47, 0xaf, 0xdc, 0x29, 0x1d, 0x3d, 0x61, 0x61, 0xcc, 0xe2, 0x90, 0xc0, - 0xf7, 0x39, 0x70, 0x81, 0xbf, 0x43, 0x1d, 0x69, 0xc6, 0x88, 0x0a, 0x6a, 0x1a, 0x07, 0xc6, 0x61, - 0xef, 0xe8, 0x6d, 0x57, 0x8f, 0xa6, 0x5a, 0x5b, 0x39, 0x1c, 0x19, 0xed, 0x4e, 0xfb, 0xee, 0xe7, - 0xc3, 0xc7, 0x10, 0x88, 0x07, 0x20, 0xa8, 0x8f, 0xcf, 0xe7, 0x76, 0x6d, 0x31, 0xb7, 0x51, 0x89, - 0x91, 0x15, 0x2b, 0x4e, 0x51, 0x93, 0xa7, 0x10, 0x98, 0x75, 0xc5, 0xfe, 0x99, 0x7b, 0xc5, 0xc1, - 0xbb, 0x1b, 0x6b, 0x3f, 0x49, 0x21, 0xf0, 0x77, 0xb5, 0x76, 0x53, 0x9e, 0x88, 0x52, 0xc2, 0x67, - 0xa8, 0xcd, 0x05, 0x15, 0x39, 0x37, 0x1b, 0x4a, 0xf3, 0x8b, 0x2d, 0x6a, 0x2a, 0x5e, 0x7f, 0x4f, - 0xab, 0xb6, 0x8b, 0x33, 0xd1, 0x7a, 0xce, 0x2f, 0x75, 0xe4, 0x6c, 0xcc, 0xbd, 0x93, 0xc4, 0x23, - 0x26, 0x58, 0x12, 0xe3, 0x63, 0xd4, 0x14, 0xb3, 0x14, 0x94, 0xe1, 0x5d, 0xff, 0xd5, 0x65, 0x0b, - 0x0f, 0x67, 0x29, 0x3c, 0x9b, 0xdb, 0x2f, 0x5f, 0x8e, 0x97, 0x38, 0x51, 0x19, 0xf8, 0x75, 0xd4, - 0xce, 0x80, 0xf2, 0x24, 0x56, 0x76, 0x76, 0xcb, 0x42, 0x88, 0x42, 0x89, 0xbe, 0xc5, 0xb7, 0xd0, - 0x4e, 0x04, 0x9c, 0xd3, 0x10, 0x94, 0x07, 0x5d, 0xff, 0x9a, 0x0e, 0xdc, 0x79, 0x50, 0xc0, 0x64, - 0x79, 0x8f, 0x1f, 0xa3, 0xbd, 0x09, 0xe5, 0x62, 0x90, 0x8e, 0xa8, 0x80, 0x87, 0x2c, 0x02, 0xb3, - 0xa9, 0x5c, 0x7b, 0xe3, 0xc5, 0xf6, 0x40, 0x66, 0xf8, 0x37, 0x34, 0xfb, 0xde, 0xfd, 0x7f, 0x31, - 0x91, 0x4b, 0xcc, 0xce, 0xdf, 0x06, 0xba, 0xb9, 0xd1, 0x9f, 0xfb, 0x8c, 0x0b, 0xfc, 0xed, 0xda, - 0x3e, 0xba, 0x2f, 0x56, 0x87, 0xcc, 0x56, 0xdb, 0x78, 0x5d, 0xd7, 0xd2, 0x59, 0x22, 0x95, 0x5d, - 0x4c, 0x50, 0x8b, 0x09, 0x88, 0xb8, 0x59, 0x3f, 0x68, 0x1c, 0xf6, 0x8e, 0x3e, 0xd9, 0xde, 0x62, - 0xf8, 0x2f, 0x69, 0xd9, 0xd6, 0x3d, 0x29, 0x40, 0x0a, 0x1d, 0x67, 0xd1, 0xf8, 0x9f, 0x86, 0xe5, - 0xca, 0xe2, 0xd7, 0xd0, 0x4e, 0x56, 0x1c, 0x55, 0xbf, 0xbb, 0x7e, 0x4f, 0x4e, 0x49, 0x47, 0x90, - 0xe5, 0x1d, 0x7e, 0x13, 0x75, 0x72, 0x0e, 0x59, 0x4c, 0x23, 0xd0, 0xa3, 0x5f, 0xf5, 0x39, 0xd0, - 0x38, 0x59, 0x45, 0xe0, 0x9b, 0xa8, 0x91, 0xb3, 0x91, 0x1e, 0x7d, 0x4f, 0x07, 0x36, 0x06, 0xf7, - 0x3e, 0x22, 0x12, 0xc7, 0x0e, 0x6a, 0x87, 0x59, 0x92, 0xa7, 0xdc, 0x6c, 0x1e, 0x34, 0x0e, 0xbb, - 0x3e, 0x92, 0x1b, 0xf4, 0xb1, 0x42, 0x88, 0xbe, 0xc1, 0x47, 0xa8, 0x33, 0x86, 0xd9, 0x40, 0xad, - 0x50, 0x4b, 0x45, 0xdd, 0x90, 0x51, 0x0a, 0xe0, 0xcf, 0xe6, 0x76, 0xe7, 0x53, 0x7d, 0x4b, 0x56, - 0x71, 0xf8, 0x07, 0xd4, 0x82, 0x33, 0x91, 0x51, 0xb3, 0xad, 0xec, 0xfd, 0x7a, 0xbb, 0xff, 0xba, - 0x7b, 0x57, 0x72, 0xdf, 0x8d, 0x45, 0x36, 0x2b, 0xdd, 0x56, 0x18, 0x29, 0x64, 0xf7, 0x73, 0x84, - 0xca, 0x18, 0x7c, 0x1d, 0x35, 0xc6, 0x30, 0x2b, 0x7e, 0x32, 0x22, 0x3f, 0xf1, 0x97, 0xa8, 0x35, - 0xa5, 0x93, 0x1c, 0xf4, 0x5b, 0xf4, 0xc1, 0x95, 0xeb, 0x53, 0xec, 0x5f, 0x49, 0x0a, 0x52, 0x30, - 0xdd, 0xae, 0x1f, 0x1b, 0xce, 0xdc, 0x40, 0xf6, 0x73, 0x5e, 0x0c, 0xfc, 0xa3, 0x81, 0x50, 0xb0, - 0xfc, 0xa1, 0xb9, 0x69, 0x28, 0x83, 0x4e, 0xb6, 0x67, 0xd0, 0xea, 0xb1, 0x28, 0x5f, 0xe3, 0x15, - 0xc4, 0x49, 0x45, 0x1a, 0xf7, 0x51, 0xaf, 0x42, 0xad, 0xac, 0xd8, 0xf5, 0xaf, 0x2d, 0xe6, 0x76, - 0xaf, 0x42, 0x4e, 0xaa, 0x31, 0xce, 0xfb, 0xda, 0x57, 0xd5, 0x39, 0xb6, 0x97, 0x3f, 0x91, 0xa1, - 0xd6, 0xa2, 0x7b, 0x79, 0xe9, 0x6f, 0x77, 0x7e, 0xfe, 0xd5, 0xae, 0x3d, 0xf9, 0xfd, 0xa0, 0xe6, - 0xdf, 0x3a, 0xbf, 0xb0, 0x6a, 0x4f, 0x2f, 0xac, 0xda, 0x6f, 0x17, 0x56, 0xed, 0xc9, 0xc2, 0x32, - 0xce, 0x17, 0x96, 0xf1, 0x74, 0x61, 0x19, 0x7f, 0x2c, 0x2c, 0xe3, 0xa7, 0x3f, 0xad, 0xda, 0x37, - 0x3b, 0xba, 0xb3, 0x7f, 0x02, 0x00, 0x00, 0xff, 0xff, 0xc5, 0x92, 0xb9, 0x6f, 0x52, 0x08, 0x00, - 0x00, + 0x14, 0x8e, 0xf3, 0x6b, 0x93, 0xc9, 0xb2, 0xad, 0x46, 0xa8, 0x32, 0x2b, 0xd5, 0x8e, 0x2c, 0x40, + 0x0b, 0xa2, 0x36, 0x59, 0x10, 0xac, 0xca, 0x01, 0xc9, 0xa5, 0x42, 0x85, 0x96, 0x1f, 0xb3, 0x0d, + 0x12, 0x88, 0x03, 0x13, 0xe7, 0xd5, 0x3b, 0xcd, 0xfa, 0x07, 0x9e, 0x71, 0xd4, 0x5c, 0x50, 0x6f, + 0x5c, 0x39, 0x72, 0x41, 0xe2, 0xcf, 0xd9, 0x63, 0x8f, 0x3d, 0xa0, 0x88, 0x35, 0x27, 0x2e, 0xfc, + 0x01, 0x3d, 0xa1, 0x19, 0x4f, 0xe2, 0x90, 0x28, 0xb4, 0x95, 0x72, 0x9b, 0xf9, 0xe6, 0xbd, 0xef, + 0x7b, 0xef, 0x9b, 0x37, 0x83, 0x3e, 0x9e, 0x9c, 0x70, 0x97, 0x25, 0xde, 0x24, 0x1f, 0x41, 0x16, + 0x83, 0x00, 0xee, 0xa5, 0x93, 0xd0, 0xa3, 0x29, 0xe3, 0x5e, 0x00, 0x99, 0x60, 0x0f, 0x58, 0x40, + 0x25, 0x3a, 0x1d, 0x8c, 0x40, 0xd0, 0x81, 0x17, 0x42, 0x0c, 0x19, 0x15, 0x30, 0x76, 0xd3, 0x2c, + 0x11, 0x09, 0xf6, 0x4a, 0x02, 0xb7, 0x22, 0x70, 0xd3, 0x49, 0xe8, 0x4a, 0x02, 0x77, 0x95, 0xc0, + 0xd5, 0x04, 0x87, 0x37, 0x42, 0x26, 0xce, 0xf2, 0x91, 0x1b, 0x24, 0x91, 0x17, 0x26, 0x61, 0xe2, + 0x29, 0x9e, 0x51, 0xfe, 0x40, 0xed, 0xd4, 0x46, 0xad, 0x4a, 0xfe, 0xc3, 0xf7, 0x75, 0x81, 0x34, + 0x65, 0x11, 0x0d, 0xce, 0x58, 0x0c, 0xd9, 0xac, 0x2a, 0x31, 0x02, 0x41, 0xbd, 0xe9, 0x46, 0x55, + 0x87, 0xde, 0xb6, 0xac, 0x2c, 0x8f, 0x05, 0x8b, 0x60, 0x23, 0xe1, 0x83, 0xe7, 0x25, 0xf0, 0xe0, + 0x0c, 0x22, 0xba, 0x91, 0xf7, 0xde, 0xb6, 0xbc, 0x5c, 0xb0, 0x73, 0x8f, 0xc5, 0x82, 0x8b, 0x6c, + 0x3d, 0xc9, 0xf9, 0xbb, 0x8e, 0x5e, 0xbb, 0x55, 0x79, 0x73, 0xca, 0xc2, 0x98, 0xc5, 0x21, 0x81, + 0x1f, 0x73, 0xe0, 0x02, 0xff, 0x80, 0x3a, 0xb2, 0xad, 0x31, 0x15, 0xd4, 0x34, 0xfa, 0xc6, 0x51, + 0xef, 0xf8, 0x5d, 0x57, 0x9b, 0xbc, 0xaa, 0x52, 0xd9, 0x2c, 0xa3, 0xdd, 0xe9, 0xc0, 0xfd, 0x72, + 0xf4, 0x10, 0x02, 0x71, 0x0f, 0x04, 0xf5, 0xf1, 0xc5, 0xdc, 0xae, 0x15, 0x73, 0x1b, 0x55, 0x18, + 0x59, 0xb2, 0xe2, 0x14, 0x35, 0x79, 0x0a, 0x81, 0x59, 0x57, 0xec, 0x5f, 0xb8, 0x2f, 0x79, 0x85, + 0xee, 0xd6, 0xda, 0x4f, 0x53, 0x08, 0xfc, 0x7d, 0xad, 0xdd, 0x94, 0x3b, 0xa2, 0x94, 0xf0, 0x23, + 0xd4, 0xe6, 0x82, 0x8a, 0x9c, 0x9b, 0x0d, 0xa5, 0xf9, 0xd5, 0x0e, 0x35, 0x15, 0xaf, 0x7f, 0xa0, + 0x55, 0xdb, 0xe5, 0x9e, 0x68, 0x3d, 0xe7, 0xb7, 0x3a, 0x72, 0xb6, 0xe6, 0xde, 0x4a, 0xe2, 0x31, + 0x13, 0x2c, 0x89, 0xf1, 0x09, 0x6a, 0x8a, 0x59, 0x0a, 0xca, 0xf0, 0xae, 0xff, 0xfa, 0xa2, 0x85, + 0xfb, 0xb3, 0x14, 0x9e, 0xcd, 0xed, 0x57, 0xd7, 0xe3, 0x25, 0x4e, 0x54, 0x06, 0x7e, 0x13, 0xb5, + 0x33, 0xa0, 0x3c, 0x89, 0x95, 0x9d, 0xdd, 0xaa, 0x10, 0xa2, 0x50, 0xa2, 0x4f, 0xf1, 0x5b, 0x68, + 0x2f, 0x02, 0xce, 0x69, 0x08, 0xca, 0x83, 0xae, 0x7f, 0x45, 0x07, 0xee, 0xdd, 0x2b, 0x61, 0xb2, + 0x38, 0xc7, 0x0f, 0xd1, 0xc1, 0x39, 0xe5, 0x62, 0x98, 0x8e, 0xa9, 0x80, 0xfb, 0x2c, 0x02, 0xb3, + 0xa9, 0x5c, 0x7b, 0xfb, 0xc5, 0xe6, 0x40, 0x66, 0xf8, 0xd7, 0x34, 0xfb, 0xc1, 0xdd, 0xff, 0x30, + 0x91, 0x35, 0x66, 0xe7, 0x1f, 0x03, 0x5d, 0xdf, 0xea, 0xcf, 0x5d, 0xc6, 0x05, 0xfe, 0x7e, 0x63, + 0x1e, 0xdd, 0x17, 0xab, 0x43, 0x66, 0xab, 0x69, 0xbc, 0xaa, 0x6b, 0xe9, 0x2c, 0x90, 0x95, 0x59, + 0x4c, 0x50, 0x8b, 0x09, 0x88, 0xb8, 0x59, 0xef, 0x37, 0x8e, 0x7a, 0xc7, 0x9f, 0xed, 0x6e, 0x30, + 0xfc, 0x57, 0xb4, 0x6c, 0xeb, 0x8e, 0x14, 0x20, 0xa5, 0x8e, 0x53, 0x34, 0xfe, 0xa7, 0x61, 0x39, + 0xb2, 0xf8, 0x0d, 0xb4, 0x97, 0x95, 0x5b, 0xd5, 0xef, 0xbe, 0xdf, 0x93, 0xb7, 0xa4, 0x23, 0xc8, + 0xe2, 0x0c, 0xbf, 0x83, 0x3a, 0x39, 0x87, 0x2c, 0xa6, 0x11, 0xe8, 0xab, 0x5f, 0xf6, 0x39, 0xd4, + 0x38, 0x59, 0x46, 0xe0, 0xeb, 0xa8, 0x91, 0xb3, 0xb1, 0xbe, 0xfa, 0x9e, 0x0e, 0x6c, 0x0c, 0xef, + 0x7c, 0x42, 0x24, 0x8e, 0x1d, 0xd4, 0x0e, 0xb3, 0x24, 0x4f, 0xb9, 0xd9, 0xec, 0x37, 0x8e, 0xba, + 0x3e, 0x92, 0x13, 0xf4, 0xa9, 0x42, 0x88, 0x3e, 0xc1, 0xc7, 0xa8, 0x33, 0x81, 0xd9, 0x50, 0x8d, + 0x50, 0x4b, 0x45, 0x5d, 0x93, 0x51, 0x0a, 0xe0, 0xcf, 0xe6, 0x76, 0xe7, 0x73, 0x7d, 0x4a, 0x96, + 0x71, 0xf8, 0x27, 0xd4, 0x82, 0x47, 0x22, 0xa3, 0x66, 0x5b, 0xd9, 0xfb, 0xed, 0x6e, 0xdf, 0xba, + 0x7b, 0x5b, 0x72, 0xdf, 0x8e, 0x45, 0x36, 0xab, 0xdc, 0x56, 0x18, 0x29, 0x65, 0x0f, 0x73, 0x84, + 0xaa, 0x18, 0x7c, 0x15, 0x35, 0x26, 0x30, 0x2b, 0x1f, 0x19, 0x91, 0x4b, 0xfc, 0x35, 0x6a, 0x4d, + 0xe9, 0x79, 0x0e, 0xfa, 0x2f, 0xfa, 0xe8, 0xa5, 0xeb, 0x53, 0xec, 0xdf, 0x48, 0x0a, 0x52, 0x32, + 0xdd, 0xac, 0x9f, 0x18, 0xce, 0xdc, 0x40, 0xf6, 0x73, 0x7e, 0x0c, 0xfc, 0xb3, 0x81, 0x50, 0xb0, + 0x78, 0xd0, 0xdc, 0x34, 0x94, 0x41, 0xa7, 0xbb, 0x33, 0x68, 0xf9, 0x59, 0x54, 0xbf, 0xf1, 0x12, + 0xe2, 0x64, 0x45, 0x1a, 0x0f, 0x50, 0x6f, 0x85, 0x5a, 0x59, 0xb1, 0xef, 0x5f, 0x29, 0xe6, 0x76, + 0x6f, 0x85, 0x9c, 0xac, 0xc6, 0x38, 0x1f, 0x6a, 0x5f, 0x55, 0xe7, 0xd8, 0x5e, 0x3c, 0x22, 0x43, + 0x8d, 0x45, 0x77, 0x7d, 0xe8, 0x6f, 0x76, 0x7e, 0xfd, 0xdd, 0xae, 0x3d, 0xfe, 0xa3, 0x5f, 0xf3, + 0x6f, 0x5c, 0x5c, 0x5a, 0xb5, 0x27, 0x97, 0x56, 0xed, 0xe9, 0xa5, 0x55, 0x7b, 0x5c, 0x58, 0xc6, + 0x45, 0x61, 0x19, 0x4f, 0x0a, 0xcb, 0x78, 0x5a, 0x58, 0xc6, 0x9f, 0x85, 0x65, 0xfc, 0xf2, 0x97, + 0x55, 0xfb, 0x6e, 0x4f, 0x77, 0xf7, 0x6f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xe1, 0xa1, 0xbb, 0xcc, + 0x20, 0x08, 0x00, 0x00, } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/certificates/v1beta1/generated.proto b/vendor/k8s.io/kubernetes/pkg/apis/certificates/v1beta1/generated.proto index 6d58d716..1b6b263c 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/certificates/v1beta1/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/apis/certificates/v1beta1/generated.proto @@ -25,7 +25,6 @@ import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; // Package-wide variables from generator "generated". option go_package = "v1beta1"; diff --git a/vendor/k8s.io/kubernetes/pkg/apis/extensions/types.go b/vendor/k8s.io/kubernetes/pkg/apis/extensions/types.go index 71731a41..fb6b15f6 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/extensions/types.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/extensions/types.go @@ -67,15 +67,15 @@ type ScaleStatus struct { // represents a scaling request for a resource. type Scale struct { metav1.TypeMeta - // Standard object metadata; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata. + // Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. // +optional metav1.ObjectMeta - // defines the behavior of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. + // defines the behavior of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. // +optional Spec ScaleSpec - // current status of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. Read-only. + // current status of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. Read-only. // +optional Status ScaleStatus } @@ -235,7 +235,7 @@ type DeploymentRollback struct { } type RollbackConfig struct { - // The revision to rollback to. If set to 0, rollbck to the last revision. + // The revision to rollback to. If set to 0, rollback to the last revision. // +optional Revision int64 } @@ -327,6 +327,12 @@ type DeploymentStatus struct { // Represents the latest available observations of a deployment's current state. Conditions []DeploymentCondition + + // Count of hash collisions for the Deployment. The Deployment controller uses this + // field as a collision avoidance mechanism when it needs to create the name for the + // newest ReplicaSet. + // +optional + CollisionCount *int64 } type DeploymentConditionType string @@ -380,7 +386,7 @@ type DaemonSetUpdateStrategy struct { // Rolling update config params. Present only if type = "RollingUpdate". //--- // TODO: Update this to follow our convention for oneOf, whatever we decide it - // to be. Same as DeploymentStrategy.RollingUpdate. + // to be. Same as Deployment `strategy.rollingUpdate`. // See https://github.com/kubernetes/kubernetes/issues/35345 // +optional RollingUpdate *RollingUpdateDaemonSet @@ -443,10 +449,17 @@ type DaemonSetSpec struct { // +optional MinReadySeconds int32 + // DEPRECATED. // A sequence number representing a specific generation of the template. // Populated by the system. It can be set only during the creation. // +optional TemplateGeneration int64 + + // The number of old history to retain to allow rollback. + // This is a pointer to distinguish between explicit zero and not specified. + // Defaults to 10. + // +optional + RevisionHistoryLimit *int32 } // DaemonSetStatus represents the current status of a daemon set. @@ -486,6 +499,12 @@ type DaemonSetStatus struct { // (ready for at least spec.minReadySeconds) // +optional NumberUnavailable int32 + + // Count of hash collisions for the DaemonSet. The DaemonSet controller + // uses this field as a collision avoidance mechanism when it needs to + // create the name for the newest ControllerRevision. + // +optional + CollisionCount *int64 } // +genclient=true @@ -494,12 +513,12 @@ type DaemonSetStatus struct { type DaemonSet struct { metav1.TypeMeta // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta // The desired behavior of this daemon set. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec DaemonSetSpec @@ -507,12 +526,13 @@ type DaemonSet struct { // out of date by some window of time. // Populated by the system. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status DaemonSetStatus } const ( + // DEPRECATED: DefaultDaemonSetUniqueLabelKey is used instead. // DaemonSetTemplateGenerationKey is the key of the labels that is added // to daemon set pods to distinguish between old and new pod templates // during DaemonSet template update. @@ -523,7 +543,7 @@ const ( type DaemonSetList struct { metav1.TypeMeta // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta @@ -534,7 +554,7 @@ type DaemonSetList struct { type ThirdPartyResourceDataList struct { metav1.TypeMeta // Standard list metadata - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta // Items is a list of third party objects @@ -550,17 +570,17 @@ type ThirdPartyResourceDataList struct { type Ingress struct { metav1.TypeMeta // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta // Spec is the desired state of the Ingress. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec IngressSpec // Status is the current state of the Ingress. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status IngressStatus } @@ -569,7 +589,7 @@ type Ingress struct { type IngressList struct { metav1.TypeMeta // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta @@ -878,6 +898,10 @@ type PodSecurityPolicySpec struct { // will not be forced to. // +optional ReadOnlyRootFilesystem bool + // AllowedHostPaths is a white list of allowed host path prefixes. Empty indicates that all + // host paths may be used. + // +optional + AllowedHostPaths []string } // HostPortRange defines a range of host ports that will be enabled by a policy @@ -916,6 +940,7 @@ var ( Quobyte FSType = "quobyte" AzureDisk FSType = "azureDisk" PhotonPersistentDisk FSType = "photonPersistentDisk" + StorageOS FSType = "storageos" Projected FSType = "projected" PortworxVolume FSType = "portworxVolume" ScaleIO FSType = "scaleIO" @@ -927,7 +952,7 @@ type SELinuxStrategyOptions struct { // Rule is the strategy that will dictate the allowable labels that may be set. Rule SELinuxStrategy // seLinuxOptions required to run as; required for MustRunAs - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/security_context.md + // More info: https://git.k8s.io/community/contributors/design-proposals/security_context.md // +optional SELinuxOptions *api.SELinuxOptions } @@ -1036,6 +1061,7 @@ type PodSecurityPolicyList struct { // +genclient=true +// NetworkPolicy describes what network traffic is allowed for a set of Pods type NetworkPolicy struct { metav1.TypeMeta // +optional @@ -1055,13 +1081,12 @@ type NetworkPolicySpec struct { PodSelector metav1.LabelSelector // List of ingress rules to be applied to the selected pods. - // Traffic is allowed to a pod if namespace.networkPolicy.ingress.isolation is undefined and cluster policy allows it, + // Traffic is allowed to a pod if there are no NetworkPolicies selecting the pod // OR if the traffic source is the pod's local node, // OR if the traffic matches at least one ingress rule across all of the NetworkPolicy // objects whose podSelector matches the pod. - // If this field is empty then this NetworkPolicy does not affect ingress isolation. - // If this field is present and contains at least one rule, this policy allows any traffic - // which matches at least one of the ingress rules in this list. + // If this field is empty then this NetworkPolicy does not allow any traffic + // (and serves solely to ensure that the pods it selects are isolated by default). // +optional Ingress []NetworkPolicyIngressRule } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/conversion.go b/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/conversion.go index 38b8c2ac..afbe42f6 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/conversion.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/conversion.go @@ -23,8 +23,10 @@ import ( "k8s.io/apimachinery/pkg/conversion" "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/intstr" + "k8s.io/kubernetes/pkg/api" v1 "k8s.io/kubernetes/pkg/api/v1" "k8s.io/kubernetes/pkg/apis/extensions" + "k8s.io/kubernetes/pkg/apis/networking" ) func addConversionFuncs(scheme *runtime.Scheme) error { @@ -42,6 +44,18 @@ func addConversionFuncs(scheme *runtime.Scheme) error { Convert_v1beta1_RollingUpdateDaemonSet_To_extensions_RollingUpdateDaemonSet, Convert_extensions_ReplicaSetSpec_To_v1beta1_ReplicaSetSpec, Convert_v1beta1_ReplicaSetSpec_To_extensions_ReplicaSetSpec, + Convert_v1beta1_NetworkPolicy_To_networking_NetworkPolicy, + Convert_networking_NetworkPolicy_To_v1beta1_NetworkPolicy, + Convert_v1beta1_NetworkPolicyIngressRule_To_networking_NetworkPolicyIngressRule, + Convert_networking_NetworkPolicyIngressRule_To_v1beta1_NetworkPolicyIngressRule, + Convert_v1beta1_NetworkPolicyList_To_networking_NetworkPolicyList, + Convert_networking_NetworkPolicyList_To_v1beta1_NetworkPolicyList, + Convert_v1beta1_NetworkPolicyPeer_To_networking_NetworkPolicyPeer, + Convert_networking_NetworkPolicyPeer_To_v1beta1_NetworkPolicyPeer, + Convert_v1beta1_NetworkPolicyPort_To_networking_NetworkPolicyPort, + Convert_networking_NetworkPolicyPort_To_v1beta1_NetworkPolicyPort, + Convert_v1beta1_NetworkPolicySpec_To_networking_NetworkPolicySpec, + Convert_networking_NetworkPolicySpec_To_v1beta1_NetworkPolicySpec, ) if err != nil { return err @@ -260,3 +274,155 @@ func Convert_v1beta1_ReplicaSetSpec_To_extensions_ReplicaSetSpec(in *ReplicaSetS } return nil } + +func Convert_v1beta1_NetworkPolicy_To_networking_NetworkPolicy(in *NetworkPolicy, out *networking.NetworkPolicy, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + return Convert_v1beta1_NetworkPolicySpec_To_networking_NetworkPolicySpec(&in.Spec, &out.Spec, s) +} + +func Convert_networking_NetworkPolicy_To_v1beta1_NetworkPolicy(in *networking.NetworkPolicy, out *NetworkPolicy, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + return Convert_networking_NetworkPolicySpec_To_v1beta1_NetworkPolicySpec(&in.Spec, &out.Spec, s) +} + +func Convert_v1beta1_NetworkPolicySpec_To_networking_NetworkPolicySpec(in *NetworkPolicySpec, out *networking.NetworkPolicySpec, s conversion.Scope) error { + if err := s.Convert(&in.PodSelector, &out.PodSelector, 0); err != nil { + return err + } + out.Ingress = make([]networking.NetworkPolicyIngressRule, len(in.Ingress)) + for i := range in.Ingress { + if err := Convert_v1beta1_NetworkPolicyIngressRule_To_networking_NetworkPolicyIngressRule(&in.Ingress[i], &out.Ingress[i], s); err != nil { + return err + } + } + return nil +} + +func Convert_networking_NetworkPolicySpec_To_v1beta1_NetworkPolicySpec(in *networking.NetworkPolicySpec, out *NetworkPolicySpec, s conversion.Scope) error { + if err := s.Convert(&in.PodSelector, &out.PodSelector, 0); err != nil { + return err + } + out.Ingress = make([]NetworkPolicyIngressRule, len(in.Ingress)) + for i := range in.Ingress { + if err := Convert_networking_NetworkPolicyIngressRule_To_v1beta1_NetworkPolicyIngressRule(&in.Ingress[i], &out.Ingress[i], s); err != nil { + return err + } + } + return nil +} + +func Convert_v1beta1_NetworkPolicyIngressRule_To_networking_NetworkPolicyIngressRule(in *NetworkPolicyIngressRule, out *networking.NetworkPolicyIngressRule, s conversion.Scope) error { + out.Ports = make([]networking.NetworkPolicyPort, len(in.Ports)) + for i := range in.Ports { + if err := Convert_v1beta1_NetworkPolicyPort_To_networking_NetworkPolicyPort(&in.Ports[i], &out.Ports[i], s); err != nil { + return err + } + } + out.From = make([]networking.NetworkPolicyPeer, len(in.From)) + for i := range in.From { + if err := Convert_v1beta1_NetworkPolicyPeer_To_networking_NetworkPolicyPeer(&in.From[i], &out.From[i], s); err != nil { + return err + } + } + return nil +} + +func Convert_networking_NetworkPolicyIngressRule_To_v1beta1_NetworkPolicyIngressRule(in *networking.NetworkPolicyIngressRule, out *NetworkPolicyIngressRule, s conversion.Scope) error { + out.Ports = make([]NetworkPolicyPort, len(in.Ports)) + for i := range in.Ports { + if err := Convert_networking_NetworkPolicyPort_To_v1beta1_NetworkPolicyPort(&in.Ports[i], &out.Ports[i], s); err != nil { + return err + } + } + out.From = make([]NetworkPolicyPeer, len(in.From)) + for i := range in.From { + if err := Convert_networking_NetworkPolicyPeer_To_v1beta1_NetworkPolicyPeer(&in.From[i], &out.From[i], s); err != nil { + return err + } + } + return nil +} + +func Convert_v1beta1_NetworkPolicyPeer_To_networking_NetworkPolicyPeer(in *NetworkPolicyPeer, out *networking.NetworkPolicyPeer, s conversion.Scope) error { + if in.PodSelector != nil { + out.PodSelector = new(metav1.LabelSelector) + if err := s.Convert(in.PodSelector, out.PodSelector, 0); err != nil { + return err + } + } else { + out.PodSelector = nil + } + if in.NamespaceSelector != nil { + out.NamespaceSelector = new(metav1.LabelSelector) + if err := s.Convert(in.NamespaceSelector, out.NamespaceSelector, 0); err != nil { + return err + } + } else { + out.NamespaceSelector = nil + } + return nil +} + +func Convert_networking_NetworkPolicyPeer_To_v1beta1_NetworkPolicyPeer(in *networking.NetworkPolicyPeer, out *NetworkPolicyPeer, s conversion.Scope) error { + if in.PodSelector != nil { + out.PodSelector = new(metav1.LabelSelector) + if err := s.Convert(in.PodSelector, out.PodSelector, 0); err != nil { + return err + } + } else { + out.PodSelector = nil + } + if in.NamespaceSelector != nil { + out.NamespaceSelector = new(metav1.LabelSelector) + if err := s.Convert(in.NamespaceSelector, out.NamespaceSelector, 0); err != nil { + return err + } + } else { + out.NamespaceSelector = nil + } + return nil +} + +func Convert_v1beta1_NetworkPolicyPort_To_networking_NetworkPolicyPort(in *NetworkPolicyPort, out *networking.NetworkPolicyPort, s conversion.Scope) error { + if in.Protocol != nil { + out.Protocol = new(api.Protocol) + *out.Protocol = api.Protocol(*in.Protocol) + } else { + out.Protocol = nil + } + out.Port = in.Port + return nil +} + +func Convert_networking_NetworkPolicyPort_To_v1beta1_NetworkPolicyPort(in *networking.NetworkPolicyPort, out *NetworkPolicyPort, s conversion.Scope) error { + if in.Protocol != nil { + out.Protocol = new(v1.Protocol) + *out.Protocol = v1.Protocol(*in.Protocol) + } else { + out.Protocol = nil + } + out.Port = in.Port + return nil +} + +func Convert_v1beta1_NetworkPolicyList_To_networking_NetworkPolicyList(in *NetworkPolicyList, out *networking.NetworkPolicyList, s conversion.Scope) error { + out.ListMeta = in.ListMeta + out.Items = make([]networking.NetworkPolicy, len(in.Items)) + for i := range in.Items { + if err := Convert_v1beta1_NetworkPolicy_To_networking_NetworkPolicy(&in.Items[i], &out.Items[i], s); err != nil { + return err + } + } + return nil +} + +func Convert_networking_NetworkPolicyList_To_v1beta1_NetworkPolicyList(in *networking.NetworkPolicyList, out *NetworkPolicyList, s conversion.Scope) error { + out.ListMeta = in.ListMeta + out.Items = make([]NetworkPolicy, len(in.Items)) + for i := range in.Items { + if err := Convert_networking_NetworkPolicy_To_v1beta1_NetworkPolicy(&in.Items[i], &out.Items[i], s); err != nil { + return err + } + } + return nil +} diff --git a/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/defaults.go b/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/defaults.go index 06186652..083db123 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/defaults.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/defaults.go @@ -56,6 +56,10 @@ func SetDefaults_DaemonSet(obj *DaemonSet) { updateStrategy.RollingUpdate.MaxUnavailable = &maxUnavailable } } + if obj.Spec.RevisionHistoryLimit == nil { + obj.Spec.RevisionHistoryLimit = new(int32) + *obj.Spec.RevisionHistoryLimit = 10 + } } func SetDefaults_Deployment(obj *Deployment) { diff --git a/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/doc.go b/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/doc.go index f4e544e6..0b074d04 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/doc.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/doc.go @@ -18,6 +18,7 @@ limitations under the License. // +k8s:conversion-gen=k8s.io/kubernetes/pkg/apis/extensions // +k8s:conversion-gen=k8s.io/kubernetes/pkg/apis/autoscaling // +k8s:conversion-gen=k8s.io/kubernetes/pkg/apis/batch +// +k8s:conversion-gen=k8s.io/kubernetes/pkg/apis/networking // +k8s:openapi-gen=true // +k8s:defaulter-gen=TypeMeta diff --git a/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/generated.pb.go index fcdcc3fd..39daf2c5 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/generated.pb.go @@ -93,12 +93,12 @@ import math "math" import k8s_io_apimachinery_pkg_apis_meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" import k8s_io_apimachinery_pkg_util_intstr "k8s.io/apimachinery/pkg/util/intstr" - import k8s_io_kubernetes_pkg_api_v1 "k8s.io/kubernetes/pkg/api/v1" +import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + import strings "strings" import reflect "reflect" -import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" import io "io" @@ -690,6 +690,11 @@ func (m *DaemonSetSpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x28 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.TemplateGeneration)) + if m.RevisionHistoryLimit != nil { + dAtA[i] = 0x30 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(*m.RevisionHistoryLimit)) + } return i, nil } @@ -732,6 +737,11 @@ func (m *DaemonSetStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x40 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.NumberUnavailable)) + if m.CollisionCount != nil { + dAtA[i] = 0x48 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(*m.CollisionCount)) + } return i, nil } @@ -917,10 +927,15 @@ func (m *DeploymentRollback) MarshalTo(dAtA []byte) (int, error) { i = encodeVarintGenerated(dAtA, i, uint64(len(m.Name))) i += copy(dAtA[i:], m.Name) if len(m.UpdatedAnnotations) > 0 { + keysForUpdatedAnnotations := make([]string, 0, len(m.UpdatedAnnotations)) for k := range m.UpdatedAnnotations { + keysForUpdatedAnnotations = append(keysForUpdatedAnnotations, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForUpdatedAnnotations) + for _, k := range keysForUpdatedAnnotations { dAtA[i] = 0x12 i++ - v := m.UpdatedAnnotations[k] + v := m.UpdatedAnnotations[string(k)] mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v))) i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) dAtA[i] = 0xa @@ -1069,6 +1084,11 @@ func (m *DeploymentStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x38 i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ReadyReplicas)) + if m.CollisionCount != nil { + dAtA[i] = 0x40 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(*m.CollisionCount)) + } return i, nil } @@ -1984,6 +2004,21 @@ func (m *PodSecurityPolicySpec) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0 } i++ + if len(m.AllowedHostPaths) > 0 { + for _, s := range m.AllowedHostPaths { + dAtA[i] = 0x7a + 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 } @@ -2451,10 +2486,15 @@ func (m *ScaleStatus) MarshalTo(dAtA []byte) (int, error) { i++ i = encodeVarintGenerated(dAtA, i, uint64(m.Replicas)) if len(m.Selector) > 0 { + keysForSelector := make([]string, 0, len(m.Selector)) for k := range m.Selector { + keysForSelector = append(keysForSelector, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForSelector) + for _, k := range keysForSelector { dAtA[i] = 0x12 i++ - v := m.Selector[k] + v := m.Selector[string(k)] mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v))) i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) dAtA[i] = 0xa @@ -2776,6 +2816,9 @@ func (m *DaemonSetSpec) Size() (n int) { n += 1 + l + sovGenerated(uint64(l)) n += 1 + sovGenerated(uint64(m.MinReadySeconds)) n += 1 + sovGenerated(uint64(m.TemplateGeneration)) + if m.RevisionHistoryLimit != nil { + n += 1 + sovGenerated(uint64(*m.RevisionHistoryLimit)) + } return n } @@ -2790,6 +2833,9 @@ func (m *DaemonSetStatus) Size() (n int) { n += 1 + sovGenerated(uint64(m.UpdatedNumberScheduled)) n += 1 + sovGenerated(uint64(m.NumberAvailable)) n += 1 + sovGenerated(uint64(m.NumberUnavailable)) + if m.CollisionCount != nil { + n += 1 + sovGenerated(uint64(*m.CollisionCount)) + } return n } @@ -2911,6 +2957,9 @@ func (m *DeploymentStatus) Size() (n int) { } } n += 1 + sovGenerated(uint64(m.ReadyReplicas)) + if m.CollisionCount != nil { + n += 1 + sovGenerated(uint64(*m.CollisionCount)) + } return n } @@ -3232,6 +3281,12 @@ func (m *PodSecurityPolicySpec) Size() (n int) { l = m.FSGroup.Size() n += 1 + l + sovGenerated(uint64(l)) n += 2 + if len(m.AllowedHostPaths) > 0 { + for _, s := range m.AllowedHostPaths { + l = len(s) + n += 1 + l + sovGenerated(uint64(l)) + } + } return n } @@ -3577,6 +3632,7 @@ func (this *DaemonSetSpec) String() string { `UpdateStrategy:` + strings.Replace(strings.Replace(this.UpdateStrategy.String(), "DaemonSetUpdateStrategy", "DaemonSetUpdateStrategy", 1), `&`, ``, 1) + `,`, `MinReadySeconds:` + fmt.Sprintf("%v", this.MinReadySeconds) + `,`, `TemplateGeneration:` + fmt.Sprintf("%v", this.TemplateGeneration) + `,`, + `RevisionHistoryLimit:` + valueToStringGenerated(this.RevisionHistoryLimit) + `,`, `}`, }, "") return s @@ -3594,6 +3650,7 @@ func (this *DaemonSetStatus) String() string { `UpdatedNumberScheduled:` + fmt.Sprintf("%v", this.UpdatedNumberScheduled) + `,`, `NumberAvailable:` + fmt.Sprintf("%v", this.NumberAvailable) + `,`, `NumberUnavailable:` + fmt.Sprintf("%v", this.NumberUnavailable) + `,`, + `CollisionCount:` + valueToStringGenerated(this.CollisionCount) + `,`, `}`, }, "") return s @@ -3699,6 +3756,7 @@ func (this *DeploymentStatus) String() string { `UnavailableReplicas:` + fmt.Sprintf("%v", this.UnavailableReplicas) + `,`, `Conditions:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.Conditions), "DeploymentCondition", "DeploymentCondition", 1), `&`, ``, 1) + `,`, `ReadyReplicas:` + fmt.Sprintf("%v", this.ReadyReplicas) + `,`, + `CollisionCount:` + valueToStringGenerated(this.CollisionCount) + `,`, `}`, }, "") return s @@ -3963,6 +4021,7 @@ func (this *PodSecurityPolicySpec) String() string { `SupplementalGroups:` + strings.Replace(strings.Replace(this.SupplementalGroups.String(), "SupplementalGroupsStrategyOptions", "SupplementalGroupsStrategyOptions", 1), `&`, ``, 1) + `,`, `FSGroup:` + strings.Replace(strings.Replace(this.FSGroup.String(), "FSGroupStrategyOptions", "FSGroupStrategyOptions", 1), `&`, ``, 1) + `,`, `ReadOnlyRootFilesystem:` + fmt.Sprintf("%v", this.ReadOnlyRootFilesystem) + `,`, + `AllowedHostPaths:` + fmt.Sprintf("%v", this.AllowedHostPaths) + `,`, `}`, }, "") return s @@ -5072,6 +5131,26 @@ func (m *DaemonSetSpec) Unmarshal(dAtA []byte) error { break } } + case 6: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field RevisionHistoryLimit", wireType) + } + var v int32 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= (int32(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + m.RevisionHistoryLimit = &v default: iNdEx = preIndex skippy, err := skipGenerated(dAtA[iNdEx:]) @@ -5274,6 +5353,26 @@ func (m *DaemonSetStatus) Unmarshal(dAtA []byte) error { break } } + case 9: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field CollisionCount", wireType) + } + var v int64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= (int64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + m.CollisionCount = &v default: iNdEx = preIndex skippy, err := skipGenerated(dAtA[iNdEx:]) @@ -6558,6 +6657,26 @@ func (m *DeploymentStatus) Unmarshal(dAtA []byte) error { break } } + case 8: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field CollisionCount", wireType) + } + var v int64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= (int64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + m.CollisionCount = &v default: iNdEx = preIndex skippy, err := skipGenerated(dAtA[iNdEx:]) @@ -9342,6 +9461,35 @@ func (m *PodSecurityPolicySpec) Unmarshal(dAtA []byte) error { } } m.ReadOnlyRootFilesystem = bool(v != 0) + case 15: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AllowedHostPaths", 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.AllowedHostPaths = append(m.AllowedHostPaths, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipGenerated(dAtA[iNdEx:]) @@ -11794,216 +11942,220 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 3369 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x5b, 0xdb, 0x6f, 0x1b, 0xc7, - 0xd5, 0xf7, 0x8a, 0xa4, 0x45, 0x1d, 0x59, 0x92, 0x35, 0x72, 0x64, 0x46, 0x49, 0x44, 0x67, 0x3f, - 0x7c, 0x89, 0xf3, 0x7d, 0x09, 0xf5, 0xc5, 0xf9, 0x9c, 0x26, 0x4e, 0xe2, 0x44, 0x94, 0x7c, 0x51, - 0x21, 0xc9, 0xcc, 0x90, 0x32, 0x1a, 0xe7, 0xd6, 0x15, 0x39, 0xa2, 0xd6, 0xde, 0x5b, 0x76, 0x67, - 0x15, 0x11, 0x41, 0xdb, 0x00, 0x45, 0xf3, 0x58, 0xb4, 0x2f, 0x45, 0x0a, 0xa4, 0x8f, 0x7d, 0xe8, - 0x4b, 0x9b, 0x3c, 0xb4, 0x69, 0xff, 0x82, 0xfa, 0xa1, 0x28, 0x52, 0xa0, 0x05, 0x8a, 0x22, 0x15, - 0x6a, 0x05, 0xcd, 0x3f, 0xd0, 0xe6, 0xc5, 0x4f, 0xc5, 0xcc, 0xce, 0xde, 0x77, 0x65, 0x93, 0xb2, - 0x89, 0x02, 0x7d, 0xe3, 0xce, 0x9c, 0xf3, 0x3b, 0x97, 0x39, 0x73, 0xe6, 0xcc, 0x85, 0xf0, 0xd2, - 0x8d, 0xe7, 0x9c, 0x9a, 0x6a, 0x2e, 0xdc, 0x70, 0x37, 0x89, 0x6d, 0x10, 0x4a, 0x9c, 0x05, 0xeb, - 0x46, 0x77, 0x41, 0xb1, 0x54, 0x67, 0x81, 0xec, 0x52, 0x62, 0x38, 0xaa, 0x69, 0x38, 0x0b, 0x3b, - 0x4f, 0x6f, 0x12, 0xaa, 0x3c, 0xbd, 0xd0, 0x25, 0x06, 0xb1, 0x15, 0x4a, 0x3a, 0x35, 0xcb, 0x36, - 0xa9, 0x89, 0x9e, 0xf2, 0xd8, 0x6b, 0x21, 0x7b, 0xcd, 0xba, 0xd1, 0xad, 0x31, 0xf6, 0x5a, 0xc8, - 0x5e, 0x13, 0xec, 0x73, 0x4f, 0x75, 0x55, 0xba, 0xed, 0x6e, 0xd6, 0xda, 0xa6, 0xbe, 0xd0, 0x35, - 0xbb, 0xe6, 0x02, 0x47, 0xd9, 0x74, 0xb7, 0xf8, 0x17, 0xff, 0xe0, 0xbf, 0x3c, 0xf4, 0xb9, 0xff, - 0x17, 0xca, 0x29, 0x96, 0xaa, 0x2b, 0xed, 0x6d, 0xd5, 0x20, 0x76, 0xcf, 0x57, 0x6f, 0xc1, 0x26, - 0x8e, 0xe9, 0xda, 0x6d, 0x92, 0xd4, 0xe9, 0x40, 0x2e, 0x67, 0x41, 0x27, 0x54, 0x59, 0xd8, 0x49, - 0x59, 0x32, 0xb7, 0x90, 0xc7, 0x65, 0xbb, 0x06, 0x55, 0xf5, 0xb4, 0x98, 0x67, 0xef, 0xc4, 0xe0, - 0xb4, 0xb7, 0x89, 0xae, 0xa4, 0xf8, 0x9e, 0xc9, 0xe3, 0x73, 0xa9, 0xaa, 0x2d, 0xa8, 0x06, 0x75, - 0xa8, 0x7d, 0x90, 0x4d, 0x0e, 0xb1, 0x77, 0x88, 0x1d, 0x1d, 0x25, 0x45, 0xb7, 0x34, 0x92, 0x65, - 0xd3, 0x93, 0xb9, 0x83, 0x9b, 0x41, 0x2d, 0xd7, 0x00, 0x16, 0x1b, 0x2b, 0x57, 0x89, 0xcd, 0xc6, - 0x0c, 0x9d, 0x82, 0xa2, 0xa1, 0xe8, 0xa4, 0x22, 0x9d, 0x92, 0x4e, 0x8f, 0xd5, 0x8f, 0xdd, 0xdc, - 0xab, 0x1e, 0xd9, 0xdf, 0xab, 0x16, 0xd7, 0x15, 0x9d, 0x60, 0xde, 0x23, 0xff, 0x58, 0x82, 0x07, - 0x97, 0x5c, 0x87, 0x9a, 0xfa, 0x1a, 0xa1, 0xb6, 0xda, 0x5e, 0x72, 0x6d, 0x9b, 0x18, 0xb4, 0x49, - 0x15, 0xea, 0x3a, 0x77, 0xe6, 0x47, 0xd7, 0xa0, 0xb4, 0xa3, 0x68, 0x2e, 0xa9, 0x8c, 0x9c, 0x92, - 0x4e, 0x8f, 0x9f, 0xa9, 0xd5, 0x44, 0x2c, 0x45, 0x1d, 0xe3, 0x47, 0x53, 0xcd, 0x1f, 0xed, 0xda, - 0xab, 0xae, 0x62, 0x50, 0x95, 0xf6, 0xea, 0x27, 0x04, 0xe4, 0x31, 0x21, 0xf7, 0x2a, 0xc3, 0xc2, - 0x1e, 0xa4, 0xfc, 0x7d, 0x09, 0x1e, 0xc9, 0xd5, 0x6d, 0x55, 0x75, 0x28, 0xd2, 0xa1, 0xa4, 0x52, - 0xa2, 0x3b, 0x15, 0xe9, 0x54, 0xe1, 0xf4, 0xf8, 0x99, 0xcb, 0xb5, 0xbe, 0x22, 0xb9, 0x96, 0x0b, - 0x5e, 0x9f, 0x10, 0x7a, 0x95, 0x56, 0x18, 0x3c, 0xf6, 0xa4, 0xc8, 0x3f, 0x94, 0x00, 0x45, 0x79, - 0x5a, 0x8a, 0xdd, 0x25, 0xf4, 0x2e, 0xbc, 0xf4, 0xda, 0xe1, 0xbc, 0x34, 0x23, 0x20, 0xc7, 0x3d, - 0x81, 0x31, 0x27, 0xbd, 0x2f, 0xc1, 0x6c, 0x5a, 0x27, 0xee, 0x9d, 0xad, 0xb8, 0x77, 0x16, 0x0f, - 0xe1, 0x1d, 0x0f, 0x35, 0xc7, 0x2d, 0xbf, 0x1c, 0x81, 0xb1, 0x65, 0x85, 0xe8, 0xa6, 0xd1, 0x24, - 0x14, 0x7d, 0x13, 0xca, 0x6c, 0x7a, 0x76, 0x14, 0xaa, 0x70, 0x8f, 0x8c, 0x9f, 0xf9, 0xbf, 0x83, - 0xcc, 0x75, 0x6a, 0x8c, 0xba, 0xb6, 0xf3, 0x74, 0xed, 0xca, 0xe6, 0x75, 0xd2, 0xa6, 0x6b, 0x84, - 0x2a, 0x75, 0x24, 0xe4, 0x40, 0xd8, 0x86, 0x03, 0x54, 0xf4, 0x16, 0x14, 0x1d, 0x8b, 0xb4, 0x85, - 0x33, 0x5f, 0xec, 0xd3, 0xac, 0x40, 0xd3, 0xa6, 0x45, 0xda, 0xe1, 0x68, 0xb1, 0x2f, 0xcc, 0x71, - 0xd1, 0x16, 0x1c, 0x75, 0x78, 0x18, 0x54, 0x0a, 0x5c, 0xc2, 0xf9, 0x81, 0x25, 0x78, 0xc1, 0x34, - 0x29, 0x64, 0x1c, 0xf5, 0xbe, 0xb1, 0x40, 0x97, 0x7f, 0x27, 0xc1, 0x44, 0x40, 0xcb, 0x47, 0xec, - 0x8d, 0x94, 0xef, 0x6a, 0x77, 0xe7, 0x3b, 0xc6, 0xcd, 0x3d, 0x77, 0x5c, 0xc8, 0x2a, 0xfb, 0x2d, - 0x11, 0xbf, 0xbd, 0xe9, 0xc7, 0xc3, 0x08, 0x8f, 0x87, 0xe7, 0x06, 0x35, 0x2b, 0x27, 0x0c, 0xbe, - 0x28, 0x44, 0xcc, 0x61, 0xee, 0x44, 0x6f, 0x42, 0xd9, 0x21, 0x1a, 0x69, 0x53, 0xd3, 0x16, 0xe6, - 0x3c, 0x73, 0x97, 0xe6, 0x28, 0x9b, 0x44, 0x6b, 0x0a, 0xd6, 0xfa, 0x31, 0x66, 0x8f, 0xff, 0x85, - 0x03, 0x48, 0xf4, 0x3a, 0x94, 0x29, 0xd1, 0x2d, 0x4d, 0xa1, 0xfe, 0xc4, 0x7a, 0x2a, 0xdf, 0x24, - 0x06, 0xdb, 0x30, 0x3b, 0x2d, 0xc1, 0xc0, 0x07, 0x3f, 0x70, 0x96, 0xdf, 0x8a, 0x03, 0x40, 0xf4, - 0x81, 0x04, 0x93, 0xae, 0xd5, 0x61, 0xa4, 0x94, 0x25, 0xd8, 0x6e, 0x4f, 0x44, 0xc3, 0xc5, 0x41, - 0xdd, 0xb6, 0x11, 0x43, 0xab, 0xcf, 0x0a, 0xe1, 0x93, 0xf1, 0x76, 0x9c, 0x90, 0x8a, 0x16, 0x61, - 0x4a, 0x57, 0x0d, 0x4c, 0x94, 0x4e, 0xaf, 0x49, 0xda, 0xa6, 0xd1, 0x71, 0x2a, 0xc5, 0x53, 0xd2, - 0xe9, 0x52, 0xfd, 0xa4, 0x00, 0x98, 0x5a, 0x8b, 0x77, 0xe3, 0x24, 0x3d, 0xfa, 0x3a, 0x20, 0xdf, - 0xae, 0x4b, 0xde, 0x7a, 0xa1, 0x9a, 0x46, 0xa5, 0x74, 0x4a, 0x3a, 0x5d, 0xa8, 0xcf, 0x09, 0x14, - 0xd4, 0x4a, 0x51, 0xe0, 0x0c, 0x2e, 0xf9, 0x9f, 0x45, 0x98, 0x4a, 0x04, 0x38, 0xba, 0x0a, 0xb3, - 0x6d, 0x2f, 0x7d, 0xae, 0xbb, 0xfa, 0x26, 0xb1, 0x9b, 0xed, 0x6d, 0xd2, 0x71, 0x35, 0xd2, 0xe1, - 0xa3, 0x5e, 0xaa, 0xcf, 0x0b, 0x19, 0xb3, 0x4b, 0x99, 0x54, 0x38, 0x87, 0x9b, 0xe9, 0x6d, 0xf0, - 0xa6, 0x35, 0xd5, 0x71, 0x02, 0xcc, 0x11, 0x8e, 0x19, 0xe8, 0xbd, 0x9e, 0xa2, 0xc0, 0x19, 0x5c, - 0x4c, 0xc7, 0x0e, 0x71, 0x54, 0x9b, 0x74, 0x92, 0x3a, 0x16, 0xe2, 0x3a, 0x2e, 0x67, 0x52, 0xe1, - 0x1c, 0x6e, 0x74, 0x16, 0xc6, 0x3d, 0x69, 0xdc, 0xe3, 0x62, 0x68, 0x82, 0x84, 0xbd, 0x1e, 0x76, - 0xe1, 0x28, 0x1d, 0x33, 0xcd, 0xdc, 0xe4, 0x55, 0x40, 0x27, 0x7f, 0x48, 0xae, 0xa4, 0x28, 0x70, - 0x06, 0x17, 0x33, 0xcd, 0x8b, 0x99, 0x94, 0x69, 0x47, 0xe3, 0xa6, 0x6d, 0x64, 0x52, 0xe1, 0x1c, - 0x6e, 0x16, 0x79, 0x9e, 0xca, 0x8b, 0x3b, 0x8a, 0xaa, 0x29, 0x9b, 0x1a, 0xa9, 0x8c, 0xc6, 0x23, - 0x6f, 0x3d, 0xde, 0x8d, 0x93, 0xf4, 0xe8, 0x12, 0x4c, 0x7b, 0x4d, 0x1b, 0x86, 0x12, 0x80, 0x94, - 0x39, 0xc8, 0x83, 0x02, 0x64, 0x7a, 0x3d, 0x49, 0x80, 0xd3, 0x3c, 0xf2, 0x5f, 0x24, 0x38, 0x99, - 0x33, 0x93, 0xd0, 0xcb, 0x50, 0xa4, 0x3d, 0xcb, 0x5f, 0x7f, 0xff, 0xd7, 0xcf, 0xe8, 0xad, 0x9e, - 0x45, 0x6e, 0xef, 0x55, 0x1f, 0xca, 0x61, 0x63, 0xdd, 0x98, 0x33, 0xa2, 0x6f, 0xc3, 0x84, 0x6d, - 0x6a, 0x9a, 0x6a, 0x74, 0x3d, 0x12, 0x91, 0x4d, 0x2e, 0xf4, 0x39, 0xd3, 0x71, 0x14, 0x23, 0xcc, - 0x96, 0xd3, 0xfb, 0x7b, 0xd5, 0x89, 0x58, 0x1f, 0x8e, 0x8b, 0x93, 0x7f, 0x3d, 0x02, 0xb0, 0x4c, - 0x2c, 0xcd, 0xec, 0xe9, 0xc4, 0x18, 0xc6, 0x0a, 0xfa, 0x76, 0x6c, 0x05, 0x7d, 0xa9, 0xdf, 0x8c, - 0x16, 0xa8, 0x9a, 0xbb, 0x84, 0x76, 0x13, 0x4b, 0xe8, 0xcb, 0x83, 0x8b, 0x38, 0x78, 0x0d, 0xbd, - 0x55, 0x80, 0x99, 0x90, 0x78, 0xc9, 0x34, 0x3a, 0x2a, 0x9f, 0x13, 0x2f, 0xc4, 0x62, 0xe2, 0xf1, - 0x44, 0x4c, 0x9c, 0xcc, 0x60, 0x89, 0xc4, 0xc3, 0xd5, 0x40, 0xfb, 0x11, 0xce, 0x7e, 0x3e, 0x2e, - 0xfc, 0xf6, 0x5e, 0xf5, 0xc0, 0xa2, 0xbc, 0x16, 0x60, 0xc6, 0x95, 0x45, 0x8f, 0xc1, 0x51, 0x9b, - 0x28, 0x8e, 0x69, 0xf0, 0x34, 0x31, 0x16, 0x1a, 0x85, 0x79, 0x2b, 0x16, 0xbd, 0xe8, 0x09, 0x18, - 0xd5, 0x89, 0xe3, 0x28, 0x5d, 0xc2, 0x33, 0xc2, 0x58, 0x7d, 0x4a, 0x10, 0x8e, 0xae, 0x79, 0xcd, - 0xd8, 0xef, 0x47, 0xd7, 0x61, 0x52, 0x53, 0x1c, 0x11, 0xda, 0x2d, 0x55, 0x27, 0x7c, 0xce, 0x8f, - 0x9f, 0xf9, 0x9f, 0xbb, 0x8b, 0x18, 0xc6, 0x11, 0xae, 0x44, 0xab, 0x31, 0x24, 0x9c, 0x40, 0x46, - 0x3b, 0x80, 0x58, 0x4b, 0xcb, 0x56, 0x0c, 0xc7, 0x73, 0x19, 0x93, 0x37, 0xda, 0xb7, 0xbc, 0x20, - 0xbf, 0xad, 0xa6, 0xd0, 0x70, 0x86, 0x04, 0xf9, 0xf7, 0x12, 0x4c, 0x86, 0x03, 0x36, 0x84, 0x42, - 0xe9, 0xad, 0x78, 0xa1, 0xf4, 0xfc, 0xc0, 0xc1, 0x9b, 0x53, 0x29, 0x7d, 0x58, 0x00, 0x14, 0x12, - 0xb1, 0xd4, 0xb0, 0xa9, 0xb4, 0x6f, 0xdc, 0xc5, 0x3e, 0xe2, 0xa7, 0x12, 0x20, 0x91, 0xac, 0x17, - 0x0d, 0xc3, 0xa4, 0x3c, 0xff, 0xfb, 0x6a, 0xbe, 0x36, 0xb0, 0x9a, 0xbe, 0x06, 0xb5, 0x8d, 0x14, - 0xf6, 0x05, 0x83, 0xda, 0xbd, 0x70, 0xc4, 0xd2, 0x04, 0x38, 0x43, 0x21, 0xf4, 0x0e, 0x80, 0x2d, - 0x30, 0x5b, 0xa6, 0x48, 0x01, 0x2f, 0x0d, 0x90, 0x4d, 0x19, 0xc0, 0x92, 0x69, 0x6c, 0xa9, 0xdd, - 0x30, 0xa1, 0xe1, 0x00, 0x18, 0x47, 0x84, 0xcc, 0x5d, 0x80, 0x93, 0x39, 0xda, 0xa3, 0xe3, 0x50, - 0xb8, 0x41, 0x7a, 0x9e, 0x5b, 0x31, 0xfb, 0x89, 0x4e, 0x44, 0xf7, 0x63, 0x63, 0x62, 0x2b, 0x75, - 0x6e, 0xe4, 0x39, 0x49, 0xfe, 0xb2, 0x14, 0x8d, 0x35, 0x5e, 0xc5, 0x9e, 0x86, 0xb2, 0x4d, 0x2c, - 0x4d, 0x6d, 0x2b, 0x8e, 0xa8, 0x67, 0x78, 0x41, 0x8a, 0x45, 0x1b, 0x0e, 0x7a, 0x63, 0xf5, 0xee, - 0xc8, 0xfd, 0xad, 0x77, 0x0b, 0xf7, 0xba, 0xde, 0x35, 0xa1, 0xec, 0xf8, 0x85, 0x6e, 0x91, 0x83, - 0x2f, 0x1e, 0x22, 0x67, 0x8b, 0x1a, 0x37, 0x10, 0x18, 0x54, 0xb7, 0x81, 0x90, 0xac, 0xba, 0xb6, - 0xd4, 0x67, 0x5d, 0xbb, 0x0a, 0x27, 0x6c, 0xb2, 0xa3, 0x32, 0x35, 0x2e, 0xab, 0x0e, 0x35, 0xed, - 0xde, 0xaa, 0xaa, 0xab, 0x54, 0x94, 0x3d, 0x95, 0xfd, 0xbd, 0xea, 0x09, 0x9c, 0xd1, 0x8f, 0x33, - 0xb9, 0x58, 0x76, 0xb6, 0x14, 0xd7, 0x21, 0x1d, 0x9e, 0xd2, 0xca, 0x61, 0x76, 0x6e, 0xf0, 0x56, - 0x2c, 0x7a, 0x91, 0x1e, 0x0b, 0xee, 0xf2, 0xbd, 0x08, 0xee, 0xc9, 0xfc, 0xc0, 0x46, 0x1b, 0x70, - 0xd2, 0xb2, 0xcd, 0xae, 0x4d, 0x1c, 0x67, 0x99, 0x28, 0x1d, 0x4d, 0x35, 0x88, 0xef, 0xaf, 0x31, - 0x6e, 0xe7, 0x43, 0xfb, 0x7b, 0xd5, 0x93, 0x8d, 0x6c, 0x12, 0x9c, 0xc7, 0x2b, 0x7f, 0x54, 0x84, - 0xe3, 0xc9, 0x55, 0x36, 0xa7, 0x2a, 0x95, 0x06, 0xaa, 0x4a, 0x9f, 0x8c, 0x4c, 0x1b, 0xaf, 0x64, - 0x0f, 0xa2, 0x21, 0x63, 0xea, 0x2c, 0xc2, 0x94, 0xc8, 0x23, 0x7e, 0xa7, 0xa8, 0xcb, 0x83, 0x68, - 0xd8, 0x88, 0x77, 0xe3, 0x24, 0x3d, 0xab, 0x35, 0xc3, 0x12, 0xd2, 0x07, 0x29, 0xc6, 0x6b, 0xcd, - 0xc5, 0x24, 0x01, 0x4e, 0xf3, 0xa0, 0x35, 0x98, 0x71, 0x8d, 0x34, 0x94, 0x17, 0x9d, 0x0f, 0x09, - 0xa8, 0x99, 0x8d, 0x34, 0x09, 0xce, 0xe2, 0x43, 0x3b, 0x00, 0x6d, 0xbf, 0x20, 0x70, 0x2a, 0x47, - 0x79, 0xae, 0xae, 0x0f, 0x3c, 0xb7, 0x82, 0xda, 0x22, 0xcc, 0x88, 0x41, 0x93, 0x83, 0x23, 0x92, - 0xd0, 0x0b, 0x30, 0x61, 0xf3, 0x8d, 0x87, 0x6f, 0x80, 0x57, 0xbc, 0x3f, 0x20, 0xd8, 0x26, 0x70, - 0xb4, 0x13, 0xc7, 0x69, 0xe5, 0x3f, 0x48, 0xd1, 0x25, 0x2a, 0x28, 0xb5, 0xcf, 0xc5, 0xca, 0xaa, - 0xc7, 0x12, 0x65, 0xd5, 0x6c, 0x9a, 0x23, 0x52, 0x55, 0x7d, 0x27, 0xbb, 0xca, 0xbe, 0x78, 0xa8, - 0x2a, 0x3b, 0x5c, 0x6a, 0xef, 0x5c, 0x66, 0x7f, 0x22, 0xc1, 0xec, 0xc5, 0xe6, 0x25, 0xdb, 0x74, - 0x2d, 0x5f, 0xbd, 0x2b, 0x96, 0xe7, 0xab, 0xaf, 0x41, 0xd1, 0x76, 0x35, 0xdf, 0xae, 0xff, 0xf2, - 0xed, 0xc2, 0xae, 0xc6, 0xec, 0x9a, 0x49, 0x70, 0x79, 0x46, 0x31, 0x06, 0xf4, 0x16, 0x1c, 0xb5, - 0x15, 0xa3, 0x4b, 0xfc, 0x45, 0xf8, 0xd9, 0x3e, 0xad, 0x59, 0x59, 0xc6, 0x8c, 0x3d, 0x52, 0x0a, - 0x72, 0x34, 0x2c, 0x50, 0xe5, 0x9f, 0x48, 0x30, 0x75, 0xb9, 0xd5, 0x6a, 0xac, 0x18, 0x7c, 0x16, - 0x37, 0x14, 0xba, 0xcd, 0xea, 0x04, 0x4b, 0xa1, 0xdb, 0xc9, 0x3a, 0x81, 0xf5, 0x61, 0xde, 0x83, - 0xb6, 0x61, 0x94, 0x65, 0x0f, 0x62, 0x74, 0x06, 0x2c, 0xf1, 0x85, 0xb8, 0xba, 0x07, 0x12, 0xd6, - 0x9f, 0xa2, 0x01, 0xfb, 0xf0, 0xf2, 0x7b, 0x70, 0x22, 0xa2, 0x1e, 0xf3, 0x17, 0x3f, 0x9d, 0x44, - 0x6d, 0x28, 0x31, 0x4d, 0xfc, 0xb3, 0xc7, 0x7e, 0x8f, 0xd0, 0x12, 0x26, 0x87, 0x75, 0x14, 0xfb, - 0x72, 0xb0, 0x87, 0x2d, 0xaf, 0xc1, 0xc4, 0x65, 0xd3, 0xa1, 0x0d, 0xd3, 0xa6, 0xdc, 0x6d, 0xe8, - 0x11, 0x28, 0xe8, 0xaa, 0x21, 0x56, 0xe9, 0x71, 0xc1, 0x53, 0x60, 0xeb, 0x08, 0x6b, 0xe7, 0xdd, - 0xca, 0xae, 0xc8, 0x46, 0x61, 0xb7, 0xb2, 0x8b, 0x59, 0xbb, 0x7c, 0x09, 0x46, 0xc5, 0x70, 0x44, - 0x81, 0x0a, 0x07, 0x03, 0x15, 0x32, 0x80, 0x7e, 0x31, 0x02, 0xa3, 0x42, 0xfb, 0x21, 0x6c, 0xe6, - 0xde, 0x88, 0x6d, 0xe6, 0xce, 0x0d, 0x36, 0xd2, 0xb9, 0x3b, 0xb9, 0x4e, 0x62, 0x27, 0xf7, 0xe2, - 0x80, 0xf8, 0x07, 0x6f, 0xe3, 0x3e, 0x96, 0x60, 0x32, 0x1e, 0x73, 0xe8, 0x2c, 0x8c, 0xb3, 0x35, - 0x45, 0x6d, 0x93, 0xf5, 0xb0, 0x28, 0x0e, 0x0e, 0x56, 0x9a, 0x61, 0x17, 0x8e, 0xd2, 0xa1, 0x6e, - 0xc0, 0xc6, 0xc2, 0x42, 0x38, 0x25, 0xdf, 0xe5, 0x2e, 0x55, 0xb5, 0x9a, 0x77, 0x5f, 0x53, 0x5b, - 0x31, 0xe8, 0x15, 0xbb, 0x49, 0x6d, 0xd5, 0xe8, 0xa6, 0x04, 0xf1, 0x18, 0x8b, 0x22, 0xcb, 0x37, - 0x25, 0x18, 0x17, 0x2a, 0x0f, 0x61, 0x4b, 0xf2, 0x7a, 0x7c, 0x4b, 0xf2, 0xec, 0x80, 0xf3, 0x39, - 0x7b, 0x3f, 0xf2, 0x69, 0x68, 0x0a, 0x9b, 0xc1, 0x2c, 0xc1, 0x6c, 0x9b, 0x0e, 0x4d, 0x26, 0x18, - 0x36, 0xd7, 0x30, 0xef, 0x41, 0xdf, 0x93, 0xe0, 0xb8, 0x9a, 0x98, 0xf3, 0xc2, 0xd7, 0x2f, 0x0f, - 0xa6, 0x5a, 0x00, 0x53, 0xaf, 0x08, 0x79, 0xc7, 0x93, 0x3d, 0x38, 0x25, 0x52, 0x76, 0x21, 0x45, - 0x85, 0x14, 0x28, 0x6e, 0x53, 0x6a, 0x89, 0x41, 0x58, 0x1a, 0x3c, 0xf3, 0x84, 0x2a, 0x95, 0xb9, - 0xf9, 0xad, 0x56, 0x03, 0x73, 0x68, 0xf9, 0xe7, 0x23, 0x81, 0xc3, 0x9a, 0xde, 0x24, 0x09, 0xf2, - 0xad, 0x74, 0x2f, 0xf2, 0xed, 0x78, 0x56, 0xae, 0x45, 0xdf, 0x80, 0x02, 0xd5, 0x06, 0xdd, 0x94, - 0x0a, 0x09, 0xad, 0xd5, 0x66, 0x98, 0xb0, 0x5a, 0xab, 0x4d, 0xcc, 0x20, 0xd1, 0xdb, 0x50, 0x62, - 0xab, 0x19, 0x9b, 0xe3, 0x85, 0xc1, 0x73, 0x08, 0xf3, 0x57, 0x18, 0x61, 0xec, 0xcb, 0xc1, 0x1e, - 0xae, 0xfc, 0x1e, 0x4c, 0xc4, 0x12, 0x01, 0xba, 0x0e, 0xc7, 0x34, 0x53, 0xe9, 0xd4, 0x15, 0x4d, - 0x31, 0xda, 0xc4, 0x4e, 0xa6, 0xc6, 0xec, 0xfd, 0xcc, 0x6a, 0x84, 0x43, 0x24, 0x94, 0xe0, 0x02, - 0x31, 0xda, 0x87, 0x63, 0xd8, 0xb2, 0x02, 0x10, 0x5a, 0x8f, 0xaa, 0x50, 0x62, 0x21, 0xec, 0xad, - 0x4c, 0x63, 0xf5, 0x31, 0xa6, 0x2b, 0x8b, 0x6c, 0x07, 0x7b, 0xed, 0xe8, 0x0c, 0x80, 0x43, 0xda, - 0x36, 0xa1, 0x3c, 0xef, 0x78, 0x27, 0x40, 0x41, 0x06, 0x6e, 0x06, 0x3d, 0x38, 0x42, 0x25, 0xff, - 0x49, 0x82, 0x89, 0x75, 0x42, 0xdf, 0x35, 0xed, 0x1b, 0x0d, 0x53, 0x53, 0xdb, 0xbd, 0x21, 0xe4, - 0xfd, 0xcd, 0x58, 0xde, 0x7f, 0xa5, 0xcf, 0x31, 0x8b, 0x69, 0x9b, 0x97, 0xfd, 0xe5, 0xbf, 0x4b, - 0x50, 0x89, 0x51, 0x46, 0xd3, 0x04, 0x81, 0x92, 0x65, 0xda, 0xd4, 0x5f, 0xe3, 0x0f, 0xa5, 0x01, - 0x4b, 0xa9, 0x91, 0x55, 0x9e, 0xc1, 0x62, 0x0f, 0x9d, 0xd9, 0xb9, 0x65, 0x9b, 0xba, 0x88, 0xfb, - 0xc3, 0x49, 0x21, 0xc4, 0x0e, 0xed, 0xbc, 0x68, 0x9b, 0x3a, 0xe6, 0xd8, 0xf2, 0x1f, 0x25, 0x98, - 0x8e, 0x51, 0x0e, 0x21, 0xa5, 0x2b, 0xf1, 0x94, 0xfe, 0xe2, 0x61, 0x0c, 0xcb, 0x49, 0xec, 0x5f, - 0x25, 0xcd, 0x62, 0x0e, 0x40, 0x5b, 0x30, 0x6e, 0x99, 0x9d, 0xe6, 0x3d, 0xb8, 0x99, 0x9b, 0x62, - 0x2b, 0x64, 0x23, 0xc4, 0xc2, 0x51, 0x60, 0xb4, 0x0b, 0xd3, 0x86, 0xa2, 0x13, 0xc7, 0x52, 0xda, - 0xa4, 0x79, 0x0f, 0xce, 0x45, 0x1e, 0xe0, 0xb7, 0x05, 0x49, 0x44, 0x9c, 0x16, 0x22, 0xff, 0x2a, - 0x65, 0xb7, 0x69, 0x53, 0xf4, 0x2a, 0x94, 0xf9, 0x23, 0x89, 0xb6, 0xa9, 0x89, 0xa5, 0xed, 0x2c, - 0x1b, 0x9a, 0x86, 0x68, 0xbb, 0xbd, 0x57, 0xfd, 0xef, 0x03, 0x8f, 0x75, 0x7d, 0x42, 0x1c, 0xc0, - 0xa0, 0x75, 0x28, 0x5a, 0x87, 0x29, 0x33, 0xf8, 0xc2, 0xc2, 0x6b, 0x0b, 0x8e, 0x23, 0xff, 0x23, - 0xa9, 0x38, 0x5f, 0x5e, 0xae, 0xdf, 0xb3, 0x01, 0x0b, 0xca, 0x9a, 0xdc, 0x41, 0xb3, 0x61, 0x54, - 0xac, 0xb2, 0x22, 0x2e, 0x2f, 0x1d, 0x26, 0x2e, 0xa3, 0x2b, 0x43, 0xb0, 0x89, 0xf0, 0x1b, 0x7d, - 0x41, 0xf2, 0x5f, 0x25, 0x98, 0xe6, 0x0a, 0xb5, 0x5d, 0x5b, 0xa5, 0xbd, 0xa1, 0x65, 0xd0, 0xad, - 0x58, 0x06, 0x5d, 0xee, 0xd3, 0xd0, 0x94, 0xc6, 0xb9, 0x59, 0xf4, 0x73, 0x09, 0x1e, 0x48, 0x51, - 0x0f, 0x21, 0xc3, 0x90, 0x78, 0x86, 0x79, 0xe5, 0xb0, 0x06, 0xe6, 0x64, 0x99, 0x9b, 0x90, 0x61, - 0x1e, 0x0f, 0xdc, 0x33, 0x00, 0x96, 0xad, 0xee, 0xa8, 0x1a, 0xe9, 0x8a, 0xcb, 0xe0, 0x72, 0x38, - 0x24, 0x8d, 0xa0, 0x07, 0x47, 0xa8, 0xd0, 0xb7, 0x60, 0xb6, 0x43, 0xb6, 0x14, 0x57, 0xa3, 0x8b, - 0x9d, 0xce, 0x92, 0x62, 0x29, 0x9b, 0xaa, 0xa6, 0x52, 0x55, 0xec, 0xb0, 0xc7, 0xea, 0x17, 0xbc, - 0x4b, 0xda, 0x2c, 0x8a, 0xdb, 0x7b, 0xd5, 0xc7, 0x0f, 0xbe, 0x98, 0xf1, 0x89, 0x7b, 0x38, 0x47, - 0x08, 0xfa, 0xae, 0x04, 0x15, 0x9b, 0xbc, 0xe3, 0xaa, 0x36, 0xe9, 0x2c, 0xdb, 0xa6, 0x15, 0xd3, - 0xa0, 0xc0, 0x35, 0xb8, 0xb4, 0xbf, 0x57, 0xad, 0xe0, 0x1c, 0x9a, 0x7e, 0x74, 0xc8, 0x15, 0x84, - 0x28, 0xcc, 0x28, 0x9a, 0x66, 0xbe, 0x4b, 0xe2, 0x1e, 0x28, 0x72, 0xf9, 0xf5, 0xfd, 0xbd, 0xea, - 0xcc, 0x62, 0xba, 0xbb, 0x1f, 0xd1, 0x59, 0xf0, 0x68, 0x01, 0x46, 0x77, 0x4c, 0xcd, 0xd5, 0x89, - 0x53, 0x29, 0x71, 0x49, 0x2c, 0xe3, 0x8e, 0x5e, 0xf5, 0x9a, 0x6e, 0xef, 0x55, 0x8f, 0x5e, 0x6c, - 0xf2, 0xa3, 0x0f, 0x9f, 0x8a, 0xed, 0xd1, 0x58, 0xcd, 0x24, 0xa6, 0x3c, 0x3f, 0x77, 0x2d, 0x87, - 0x39, 0xe6, 0x72, 0xd8, 0x85, 0xa3, 0x74, 0x48, 0x87, 0xb1, 0x6d, 0xb1, 0x6f, 0x77, 0x2a, 0xa3, - 0x03, 0xad, 0x7e, 0xb1, 0x7d, 0x7f, 0x7d, 0x5a, 0x88, 0x1c, 0xf3, 0x9b, 0x1d, 0x1c, 0x4a, 0x40, - 0x4f, 0xc0, 0x28, 0xff, 0x58, 0x59, 0xe6, 0xa7, 0xb5, 0xe5, 0x30, 0x13, 0x5d, 0xf6, 0x9a, 0xb1, - 0xdf, 0xef, 0x93, 0xae, 0x34, 0x96, 0xf8, 0xe1, 0x6a, 0x82, 0x74, 0xa5, 0xb1, 0x84, 0xfd, 0x7e, - 0x64, 0xc1, 0xa8, 0x43, 0x56, 0x55, 0xc3, 0xdd, 0xad, 0xc0, 0x40, 0xd7, 0xc5, 0xcd, 0x0b, 0x9c, - 0x3b, 0x71, 0x14, 0x15, 0x4a, 0x14, 0xfd, 0xd8, 0x17, 0x83, 0x76, 0x61, 0xcc, 0x76, 0x8d, 0x45, - 0x67, 0xc3, 0x21, 0x76, 0x65, 0x9c, 0xcb, 0xec, 0x37, 0x39, 0x63, 0x9f, 0x3f, 0x29, 0x35, 0xf0, - 0x60, 0x40, 0x81, 0x43, 0x61, 0xe8, 0x23, 0x09, 0x90, 0xe3, 0x5a, 0x96, 0x46, 0x74, 0x62, 0x50, - 0x45, 0xe3, 0xa7, 0x61, 0x4e, 0xe5, 0x18, 0xd7, 0xa1, 0xd1, 0xaf, 0xdd, 0x29, 0xa0, 0xa4, 0x32, - 0xc1, 0x51, 0x73, 0x9a, 0x14, 0x67, 0xe8, 0xc1, 0x86, 0x62, 0xcb, 0xe1, 0xbf, 0x2b, 0x13, 0x03, - 0x0d, 0x45, 0xf6, 0xa9, 0x60, 0x38, 0x14, 0xa2, 0x1f, 0xfb, 0x62, 0xd0, 0x55, 0x98, 0xb5, 0x89, - 0xd2, 0xb9, 0x62, 0x68, 0x3d, 0x6c, 0x9a, 0xf4, 0xa2, 0xaa, 0x11, 0xa7, 0xe7, 0x50, 0xa2, 0x57, - 0x26, 0x79, 0xd8, 0x04, 0x4f, 0x2e, 0x70, 0x26, 0x15, 0xce, 0xe1, 0xe6, 0x2f, 0x01, 0xc4, 0x19, - 0xec, 0x70, 0xde, 0xd2, 0x1d, 0xee, 0x25, 0x40, 0xa8, 0xea, 0x7d, 0x7b, 0x09, 0x10, 0x11, 0x71, - 0xf0, 0x11, 0xd2, 0x57, 0x23, 0x30, 0x13, 0x12, 0xdf, 0xf5, 0x4b, 0x80, 0x0c, 0x96, 0x21, 0xbc, - 0x04, 0xc8, 0xbe, 0x4a, 0x2f, 0xdc, 0xef, 0xab, 0xf4, 0xfb, 0xf0, 0x02, 0x81, 0xdf, 0xce, 0x87, - 0x4e, 0xfc, 0xf7, 0xbf, 0x9d, 0x0f, 0x75, 0xcd, 0x29, 0x67, 0x7e, 0x33, 0x12, 0x35, 0xe8, 0x3f, - 0xe8, 0x0a, 0xf8, 0xf0, 0x2f, 0x0d, 0xe5, 0xcf, 0x0b, 0x70, 0x3c, 0x39, 0x63, 0x63, 0x37, 0x81, - 0xd2, 0x1d, 0x6f, 0x02, 0x1b, 0x70, 0x62, 0xcb, 0xd5, 0xb4, 0x1e, 0x77, 0x48, 0xe4, 0x3a, 0xd0, - 0x3b, 0xb5, 0x7f, 0x58, 0x70, 0x9e, 0xb8, 0x98, 0x41, 0x83, 0x33, 0x39, 0x73, 0x6e, 0x35, 0x0b, - 0x03, 0xdd, 0x6a, 0xa6, 0x2e, 0xd5, 0x8a, 0x77, 0x7f, 0xa9, 0x96, 0x7d, 0x43, 0x59, 0x1a, 0xe0, - 0x86, 0xf2, 0x5e, 0x5c, 0x29, 0x66, 0x24, 0xbe, 0x3b, 0x5d, 0x29, 0xca, 0x0f, 0xc3, 0x9c, 0x60, - 0x63, 0xdf, 0x4b, 0xa6, 0x41, 0x6d, 0x53, 0xd3, 0x88, 0xbd, 0xec, 0xea, 0x7a, 0x4f, 0x3e, 0x0f, - 0x93, 0xf1, 0x7b, 0x6d, 0x6f, 0xe4, 0xbd, 0xab, 0x76, 0x71, 0x97, 0x12, 0x19, 0x79, 0xaf, 0x1d, - 0x07, 0x14, 0xf2, 0x07, 0x12, 0xcc, 0x66, 0xbf, 0xa1, 0x43, 0x1a, 0x4c, 0xea, 0xca, 0x6e, 0xf4, - 0x11, 0xa1, 0x34, 0xe0, 0x8e, 0x1b, 0xed, 0xef, 0x55, 0x27, 0xd7, 0x62, 0x58, 0x38, 0x81, 0x2d, - 0x7f, 0x21, 0xc1, 0xc9, 0x9c, 0x6b, 0xc6, 0xe1, 0x6a, 0x82, 0xae, 0x41, 0x59, 0x57, 0x76, 0x9b, - 0xae, 0xdd, 0x25, 0x03, 0x9f, 0x31, 0xf0, 0x5c, 0xb2, 0x26, 0x50, 0x70, 0x80, 0x27, 0x7f, 0x22, - 0x41, 0x25, 0xaf, 0x1e, 0x44, 0x67, 0x63, 0x17, 0xa2, 0x8f, 0x26, 0x2e, 0x44, 0xa7, 0x53, 0x7c, - 0x43, 0xba, 0x0e, 0xfd, 0x54, 0x82, 0xd9, 0xec, 0xba, 0x19, 0x3d, 0x13, 0xd3, 0xb8, 0x9a, 0xd0, - 0x78, 0x2a, 0xc1, 0x25, 0xf4, 0xdd, 0x86, 0x49, 0x51, 0x5d, 0x0b, 0x18, 0xe1, 0xe5, 0x27, 0x0f, - 0xce, 0xaa, 0x02, 0xcc, 0xaf, 0x13, 0xf9, 0x48, 0xc6, 0xdb, 0x70, 0x02, 0x57, 0xfe, 0xd9, 0x08, - 0x94, 0x9a, 0x6d, 0x45, 0x23, 0x43, 0x28, 0xea, 0xae, 0xc5, 0x8a, 0xba, 0x7e, 0xdf, 0xf9, 0x73, - 0x2d, 0x73, 0xeb, 0xb9, 0xcd, 0x44, 0x3d, 0x77, 0x6e, 0x20, 0xf4, 0x83, 0x4b, 0xb9, 0xe7, 0x61, - 0x2c, 0x50, 0xa2, 0xbf, 0xd5, 0x43, 0xfe, 0x78, 0x04, 0xc6, 0x23, 0x22, 0xfa, 0x5c, 0x7b, 0x76, - 0x62, 0xab, 0xf7, 0x20, 0x7f, 0x29, 0x8a, 0xc8, 0xae, 0xf9, 0xeb, 0xb7, 0xf7, 0x86, 0x2e, 0x7c, - 0x0b, 0x95, 0x5e, 0xd6, 0xcf, 0xc3, 0x24, 0xe5, 0xff, 0xb0, 0x09, 0xce, 0xf8, 0x0a, 0x3c, 0x8a, - 0x83, 0x97, 0x99, 0xad, 0x58, 0x2f, 0x4e, 0x50, 0xcf, 0xbd, 0x00, 0x13, 0x31, 0x61, 0x7d, 0x3d, - 0x79, 0xfb, 0xad, 0x04, 0x8f, 0xde, 0x71, 0x4f, 0x86, 0xea, 0xb1, 0xe9, 0x55, 0x4b, 0x4c, 0xaf, - 0xf9, 0x7c, 0x80, 0x21, 0x3e, 0x96, 0xf8, 0xd1, 0x08, 0xa0, 0xd6, 0xb6, 0x6a, 0x77, 0x1a, 0x8a, - 0x4d, 0x7b, 0x58, 0xfc, 0x8f, 0x6a, 0x08, 0x13, 0xee, 0x2c, 0x8c, 0x77, 0x88, 0xd3, 0xb6, 0x55, - 0xee, 0x2c, 0xb1, 0x57, 0x08, 0xce, 0x41, 0x96, 0xc3, 0x2e, 0x1c, 0xa5, 0x43, 0x5d, 0x28, 0xef, - 0x78, 0xff, 0xd4, 0xf3, 0x6f, 0xde, 0xfa, 0x2d, 0x66, 0xc3, 0xff, 0xfa, 0x85, 0xf1, 0x25, 0x1a, - 0x1c, 0x1c, 0x80, 0xcb, 0x1f, 0x4a, 0x30, 0x9b, 0x76, 0xcc, 0x32, 0x53, 0xfd, 0xfe, 0x3b, 0xe7, - 0x61, 0x28, 0x72, 0x74, 0xe6, 0x95, 0x63, 0xde, 0x89, 0x37, 0x93, 0x8c, 0x79, 0xab, 0xfc, 0xa5, - 0x04, 0x73, 0xd9, 0xaa, 0x0d, 0x61, 0x2b, 0x71, 0x3d, 0xbe, 0x95, 0xe8, 0xf7, 0xd8, 0x20, 0x5b, - 0xef, 0x9c, 0x6d, 0xc5, 0x5e, 0xe6, 0x18, 0x0c, 0xc1, 0xc8, 0xad, 0xb8, 0x91, 0x8b, 0x87, 0x36, - 0x32, 0xdb, 0xc0, 0xfa, 0x13, 0x37, 0x6f, 0xcd, 0x1f, 0xf9, 0xec, 0xd6, 0xfc, 0x91, 0x3f, 0xdf, - 0x9a, 0x3f, 0xf2, 0xfe, 0xfe, 0xbc, 0x74, 0x73, 0x7f, 0x5e, 0xfa, 0x6c, 0x7f, 0x5e, 0xfa, 0xdb, - 0xfe, 0xbc, 0xf4, 0x83, 0x2f, 0xe6, 0x8f, 0x5c, 0x1b, 0x15, 0x98, 0xff, 0x0a, 0x00, 0x00, 0xff, - 0xff, 0x56, 0x18, 0xbd, 0xf5, 0xb1, 0x3c, 0x00, 0x00, + // 3428 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe4, 0x5b, 0x5b, 0x6f, 0x24, 0x47, + 0xf5, 0xdf, 0xf6, 0x78, 0xec, 0xf1, 0xf1, 0xda, 0x5e, 0x97, 0x1d, 0xef, 0xc4, 0x49, 0xec, 0x4d, + 0xff, 0xf5, 0x4f, 0x36, 0x90, 0x1d, 0x93, 0x0d, 0x1b, 0x92, 0x4d, 0xb2, 0x89, 0xc7, 0xde, 0x8b, + 0x91, 0xed, 0x9d, 0xd4, 0x8c, 0x57, 0x64, 0x73, 0xa3, 0x3d, 0x53, 0x1e, 0xf7, 0x6e, 0xdf, 0xd2, + 0x5d, 0xed, 0x78, 0x14, 0x01, 0x91, 0x10, 0x79, 0xe0, 0x01, 0xc1, 0x0b, 0x0a, 0x12, 0x3c, 0xf2, + 0xc0, 0x0b, 0x24, 0x0f, 0x10, 0xf8, 0x04, 0xec, 0x03, 0x42, 0x41, 0x02, 0x29, 0x42, 0xc1, 0x62, + 0x1d, 0x91, 0x2f, 0x80, 0xf2, 0xb2, 0x4f, 0xa8, 0xaa, 0xab, 0xef, 0xdd, 0xde, 0x9d, 0xb1, 0x77, + 0x84, 0xc4, 0xdb, 0x74, 0xd5, 0x39, 0xbf, 0x73, 0xa9, 0x53, 0xa7, 0x4e, 0x5d, 0x06, 0x5e, 0xbc, + 0xf9, 0xac, 0x53, 0x51, 0xcd, 0x85, 0x9b, 0xee, 0x26, 0xb1, 0x0d, 0x42, 0x89, 0xb3, 0x60, 0xdd, + 0x6c, 0x2f, 0x28, 0x96, 0xea, 0x2c, 0x90, 0x5d, 0x4a, 0x0c, 0x47, 0x35, 0x0d, 0x67, 0x61, 0xe7, + 0xa9, 0x4d, 0x42, 0x95, 0xa7, 0x16, 0xda, 0xc4, 0x20, 0xb6, 0x42, 0x49, 0xab, 0x62, 0xd9, 0x26, + 0x35, 0xd1, 0x19, 0x8f, 0xbd, 0x12, 0xb2, 0x57, 0xac, 0x9b, 0xed, 0x0a, 0x63, 0xaf, 0x84, 0xec, + 0x15, 0xc1, 0x3e, 0x7b, 0xa6, 0xad, 0xd2, 0x6d, 0x77, 0xb3, 0xd2, 0x34, 0xf5, 0x85, 0xb6, 0xd9, + 0x36, 0x17, 0x38, 0xca, 0xa6, 0xbb, 0xc5, 0xbf, 0xf8, 0x07, 0xff, 0xe5, 0xa1, 0xcf, 0x7e, 0x5d, + 0x28, 0xa7, 0x58, 0xaa, 0xae, 0x34, 0xb7, 0x55, 0x83, 0xd8, 0x1d, 0x5f, 0xbd, 0x05, 0x9b, 0x38, + 0xa6, 0x6b, 0x37, 0x49, 0x52, 0xa7, 0x03, 0xb9, 0x9c, 0x05, 0x9d, 0x50, 0x65, 0x61, 0x27, 0x65, + 0xc9, 0xec, 0x42, 0x1e, 0x97, 0xed, 0x1a, 0x54, 0xd5, 0xd3, 0x62, 0x9e, 0xb9, 0x1b, 0x83, 0xd3, + 0xdc, 0x26, 0xba, 0x92, 0xe2, 0x7b, 0x3a, 0x8f, 0xcf, 0xa5, 0xaa, 0xb6, 0xa0, 0x1a, 0xd4, 0xa1, + 0x76, 0x8a, 0xe9, 0xc9, 0xdc, 0x61, 0xca, 0xb2, 0xe5, 0xb9, 0x03, 0x06, 0xd5, 0x32, 0x35, 0xb5, + 0xd9, 0xc9, 0x1b, 0x50, 0xb9, 0x02, 0xb0, 0x58, 0x5b, 0xb9, 0x46, 0x6c, 0x36, 0x70, 0xe8, 0x14, + 0x0c, 0x1a, 0x8a, 0x4e, 0xca, 0xd2, 0x29, 0xe9, 0xf4, 0x48, 0xf5, 0xf8, 0xad, 0xbd, 0xf9, 0x63, + 0xfb, 0x7b, 0xf3, 0x83, 0xeb, 0x8a, 0x4e, 0x30, 0xef, 0x91, 0x7f, 0x26, 0xc1, 0x83, 0x4b, 0xae, + 0x43, 0x4d, 0x7d, 0x8d, 0x50, 0x5b, 0x6d, 0x2e, 0xb9, 0xb6, 0x4d, 0x0c, 0x5a, 0xa7, 0x0a, 0x75, + 0x9d, 0xbb, 0xf3, 0xa3, 0xeb, 0x50, 0xdc, 0x51, 0x34, 0x97, 0x94, 0x07, 0x4e, 0x49, 0xa7, 0x47, + 0xcf, 0x56, 0x2a, 0x22, 0xa0, 0xa2, 0xde, 0xf1, 0x43, 0xaa, 0xe2, 0x0f, 0x79, 0xe5, 0x15, 0x57, + 0x31, 0xa8, 0x4a, 0x3b, 0xd5, 0x69, 0x01, 0x79, 0x5c, 0xc8, 0xbd, 0xc6, 0xb0, 0xb0, 0x07, 0x29, + 0xff, 0x48, 0x82, 0x47, 0x72, 0x75, 0x5b, 0x55, 0x1d, 0x8a, 0x74, 0x28, 0xaa, 0x94, 0xe8, 0x4e, + 0x59, 0x3a, 0x55, 0x38, 0x3d, 0x7a, 0xf6, 0x4a, 0xa5, 0xab, 0x70, 0xae, 0xe4, 0x82, 0x57, 0xc7, + 0x84, 0x5e, 0xc5, 0x15, 0x06, 0x8f, 0x3d, 0x29, 0xf2, 0x4f, 0x24, 0x40, 0x51, 0x9e, 0x86, 0x62, + 0xb7, 0x09, 0xbd, 0x07, 0x2f, 0xbd, 0x7a, 0x38, 0x2f, 0x4d, 0x09, 0xc8, 0x51, 0x4f, 0x60, 0xcc, + 0x49, 0xef, 0x49, 0x30, 0x93, 0xd6, 0x89, 0x7b, 0x67, 0x2b, 0xee, 0x9d, 0xc5, 0x43, 0x78, 0xc7, + 0x43, 0xcd, 0x71, 0xcb, 0x6f, 0x07, 0x60, 0x64, 0x59, 0x21, 0xba, 0x69, 0xd4, 0x09, 0x45, 0xdf, + 0x86, 0x12, 0x9b, 0xa3, 0x2d, 0x85, 0x2a, 0xdc, 0x23, 0xa3, 0x67, 0xbf, 0x76, 0x90, 0xb9, 0x4e, + 0x85, 0x51, 0x57, 0x76, 0x9e, 0xaa, 0x5c, 0xdd, 0xbc, 0x41, 0x9a, 0x74, 0x8d, 0x50, 0xa5, 0x8a, + 0x84, 0x1c, 0x08, 0xdb, 0x70, 0x80, 0x8a, 0xde, 0x84, 0x41, 0xc7, 0x22, 0x4d, 0xe1, 0xcc, 0x17, + 0xba, 0x34, 0x2b, 0xd0, 0xb4, 0x6e, 0x91, 0x66, 0x38, 0x5a, 0xec, 0x0b, 0x73, 0x5c, 0xb4, 0x05, + 0x43, 0x0e, 0x0f, 0x83, 0x72, 0x81, 0x4b, 0xb8, 0xd0, 0xb3, 0x04, 0x2f, 0x98, 0xc6, 0x85, 0x8c, + 0x21, 0xef, 0x1b, 0x0b, 0x74, 0xf9, 0x4f, 0x12, 0x8c, 0x05, 0xb4, 0x7c, 0xc4, 0x5e, 0x4f, 0xf9, + 0xae, 0x72, 0x6f, 0xbe, 0x63, 0xdc, 0xdc, 0x73, 0x27, 0x84, 0xac, 0x92, 0xdf, 0x12, 0xf1, 0xdb, + 0x1b, 0x7e, 0x3c, 0x0c, 0xf0, 0x78, 0x78, 0xb6, 0x57, 0xb3, 0x72, 0xc2, 0xe0, 0xa3, 0xc1, 0x88, + 0x39, 0xcc, 0x9d, 0xe8, 0x0d, 0x28, 0x39, 0x44, 0x23, 0x4d, 0x6a, 0xda, 0xc2, 0x9c, 0xa7, 0xef, + 0xd1, 0x1c, 0x65, 0x93, 0x68, 0x75, 0xc1, 0x5a, 0x3d, 0xce, 0xec, 0xf1, 0xbf, 0x70, 0x00, 0x89, + 0x5e, 0x83, 0x12, 0x25, 0xba, 0xa5, 0x29, 0xd4, 0x9f, 0x58, 0x67, 0xf2, 0x4d, 0x62, 0xb0, 0x35, + 0xb3, 0xd5, 0x10, 0x0c, 0x7c, 0xf0, 0x03, 0x67, 0xf9, 0xad, 0x38, 0x00, 0x44, 0xef, 0x4b, 0x30, + 0xee, 0x5a, 0x2d, 0x46, 0x4a, 0x59, 0x82, 0x6d, 0x77, 0x44, 0x34, 0x5c, 0xea, 0xd5, 0x6d, 0x1b, + 0x31, 0xb4, 0xea, 0x8c, 0x10, 0x3e, 0x1e, 0x6f, 0xc7, 0x09, 0xa9, 0x68, 0x11, 0x26, 0x74, 0xd5, + 0xc0, 0x44, 0x69, 0x75, 0xea, 0xa4, 0x69, 0x1a, 0x2d, 0xa7, 0x3c, 0x78, 0x4a, 0x3a, 0x5d, 0xac, + 0x9e, 0x14, 0x00, 0x13, 0x6b, 0xf1, 0x6e, 0x9c, 0xa4, 0x47, 0xdf, 0x04, 0xe4, 0xdb, 0x75, 0xd9, + 0x5b, 0x2f, 0x54, 0xd3, 0x28, 0x17, 0x4f, 0x49, 0xa7, 0x0b, 0xd5, 0x59, 0x81, 0x82, 0x1a, 0x29, + 0x0a, 0x9c, 0xc1, 0x85, 0x56, 0x61, 0xda, 0x26, 0x3b, 0x2a, 0xb3, 0xf1, 0x8a, 0xea, 0x50, 0xd3, + 0xee, 0xac, 0xaa, 0xba, 0x4a, 0xcb, 0x43, 0x5c, 0xa7, 0xf2, 0xfe, 0xde, 0xfc, 0x34, 0xce, 0xe8, + 0xc7, 0x99, 0x5c, 0xf2, 0x87, 0x45, 0x98, 0x48, 0x4c, 0x17, 0x74, 0x0d, 0x66, 0x9a, 0x5e, 0x32, + 0x5e, 0x77, 0xf5, 0x4d, 0x62, 0xd7, 0x9b, 0xdb, 0xa4, 0xe5, 0x6a, 0xa4, 0xc5, 0x63, 0xa8, 0x58, + 0x9d, 0x13, 0x1a, 0xcf, 0x2c, 0x65, 0x52, 0xe1, 0x1c, 0x6e, 0xe6, 0x05, 0x83, 0x37, 0xad, 0xa9, + 0x8e, 0x13, 0x60, 0x0e, 0x70, 0xcc, 0xc0, 0x0b, 0xeb, 0x29, 0x0a, 0x9c, 0xc1, 0xc5, 0x74, 0x6c, + 0x11, 0x47, 0xb5, 0x49, 0x2b, 0xa9, 0x63, 0x21, 0xae, 0xe3, 0x72, 0x26, 0x15, 0xce, 0xe1, 0x46, + 0xe7, 0x60, 0xd4, 0x93, 0xc6, 0xc7, 0x4f, 0x0c, 0x74, 0x90, 0xfe, 0xd7, 0xc3, 0x2e, 0x1c, 0xa5, + 0x63, 0xa6, 0x99, 0x9b, 0x0e, 0xb1, 0x77, 0x48, 0x2b, 0x7f, 0x80, 0xaf, 0xa6, 0x28, 0x70, 0x06, + 0x17, 0x33, 0xcd, 0x8b, 0xc0, 0x94, 0x69, 0x43, 0x71, 0xd3, 0x36, 0x32, 0xa9, 0x70, 0x0e, 0x37, + 0x8b, 0x63, 0x4f, 0xe5, 0xc5, 0x1d, 0x45, 0xd5, 0x94, 0x4d, 0x8d, 0x94, 0x87, 0xe3, 0x71, 0xbc, + 0x1e, 0xef, 0xc6, 0x49, 0x7a, 0x74, 0x19, 0x26, 0xbd, 0xa6, 0x0d, 0x43, 0x09, 0x40, 0x4a, 0x1c, + 0xe4, 0x41, 0x01, 0x32, 0xb9, 0x9e, 0x24, 0xc0, 0x69, 0x1e, 0x74, 0x1e, 0xc6, 0x9b, 0xa6, 0xa6, + 0xf1, 0x78, 0x5c, 0x32, 0x5d, 0x83, 0x96, 0x47, 0xb8, 0xaf, 0x10, 0x9b, 0x8f, 0x4b, 0xb1, 0x1e, + 0x9c, 0xa0, 0x94, 0xff, 0x2e, 0xc1, 0xc9, 0x9c, 0x39, 0x8d, 0x5e, 0x82, 0x41, 0xda, 0xb1, 0xfc, + 0x4a, 0xe0, 0xab, 0xfe, 0xda, 0xd2, 0xe8, 0x58, 0xe4, 0xce, 0xde, 0xfc, 0x43, 0x39, 0x6c, 0xac, + 0x1b, 0x73, 0x46, 0xf4, 0x5d, 0x18, 0xb3, 0x99, 0x38, 0xa3, 0xed, 0x91, 0x88, 0xbc, 0x76, 0xb1, + 0xcb, 0x9c, 0x83, 0xa3, 0x18, 0x61, 0xde, 0x9e, 0xdc, 0xdf, 0x9b, 0x1f, 0x8b, 0xf5, 0xe1, 0xb8, + 0x38, 0xf9, 0xf7, 0x03, 0x00, 0xcb, 0xc4, 0xd2, 0xcc, 0x8e, 0x4e, 0x8c, 0x7e, 0xac, 0xe5, 0x6f, + 0xc5, 0xd6, 0xf2, 0x17, 0xbb, 0xcd, 0xad, 0x81, 0xaa, 0xb9, 0x8b, 0x79, 0x3b, 0xb1, 0x98, 0xbf, + 0xd4, 0xbb, 0x88, 0x83, 0x57, 0xf3, 0xdb, 0x05, 0x98, 0x0a, 0x89, 0x97, 0x4c, 0xa3, 0xa5, 0xf2, + 0xf9, 0xf4, 0x7c, 0x2c, 0x26, 0x1e, 0x4f, 0xc4, 0xc4, 0xc9, 0x0c, 0x96, 0x48, 0x3c, 0x5c, 0x0b, + 0xb4, 0x1f, 0xe0, 0xec, 0x17, 0xe2, 0xc2, 0xef, 0xec, 0xcd, 0x1f, 0xb8, 0xb3, 0xa8, 0x04, 0x98, + 0x71, 0x65, 0xd1, 0x63, 0x30, 0x64, 0x13, 0xc5, 0x31, 0x0d, 0x9e, 0x62, 0x46, 0x42, 0xa3, 0x30, + 0x6f, 0xc5, 0xa2, 0x17, 0x3d, 0x01, 0xc3, 0x3a, 0x71, 0x1c, 0xa5, 0x4d, 0x78, 0x36, 0x19, 0xa9, + 0x4e, 0x08, 0xc2, 0xe1, 0x35, 0xaf, 0x19, 0xfb, 0xfd, 0xe8, 0x06, 0x8c, 0x6b, 0x8a, 0x23, 0x42, + 0xbb, 0xa1, 0xea, 0x84, 0xe7, 0x8b, 0xd1, 0xb3, 0x5f, 0xb9, 0xb7, 0x88, 0x61, 0x1c, 0xe1, 0x9a, + 0xb8, 0x1a, 0x43, 0xc2, 0x09, 0x64, 0xb4, 0x03, 0x88, 0xb5, 0x34, 0x6c, 0xc5, 0x70, 0x3c, 0x97, + 0x31, 0x79, 0xc3, 0x5d, 0xcb, 0x0b, 0x72, 0xe3, 0x6a, 0x0a, 0x0d, 0x67, 0x48, 0x90, 0xff, 0x2c, + 0xc1, 0x78, 0x38, 0x60, 0x7d, 0x28, 0xd9, 0xde, 0x8c, 0x97, 0x6c, 0xcf, 0xf5, 0x1c, 0xbc, 0x39, + 0x35, 0xdb, 0x07, 0x05, 0x40, 0x21, 0x11, 0x4b, 0x0d, 0x9b, 0x4a, 0xf3, 0xe6, 0x3d, 0xec, 0x68, + 0x7e, 0x29, 0x01, 0x12, 0x89, 0x7e, 0xd1, 0x30, 0x4c, 0xca, 0xd7, 0x0e, 0x5f, 0xcd, 0x57, 0x7b, + 0x56, 0xd3, 0xd7, 0xa0, 0xb2, 0x91, 0xc2, 0xbe, 0x68, 0x50, 0xbb, 0x13, 0x8e, 0x58, 0x9a, 0x00, + 0x67, 0x28, 0x84, 0xde, 0x06, 0xb0, 0x05, 0x66, 0xc3, 0x14, 0x29, 0xe0, 0xc5, 0x1e, 0xb2, 0x29, + 0x03, 0x58, 0x32, 0x8d, 0x2d, 0xb5, 0x1d, 0x26, 0x34, 0x1c, 0x00, 0xe3, 0x88, 0x90, 0xd9, 0x8b, + 0x70, 0x32, 0x47, 0x7b, 0x74, 0x02, 0x0a, 0x37, 0x49, 0xc7, 0x73, 0x2b, 0x66, 0x3f, 0xd1, 0x74, + 0x74, 0x67, 0x38, 0x22, 0x36, 0x75, 0xe7, 0x07, 0x9e, 0x95, 0xe4, 0x2f, 0x8a, 0xd1, 0x58, 0xe3, + 0xf5, 0xf4, 0x69, 0x28, 0xd9, 0xc4, 0xd2, 0xd4, 0xa6, 0xe2, 0x88, 0x5a, 0x88, 0x97, 0xc6, 0x58, + 0xb4, 0xe1, 0xa0, 0x37, 0x56, 0x79, 0x0f, 0xdc, 0xdf, 0xca, 0xbb, 0x70, 0xd4, 0x95, 0xb7, 0x09, + 0x25, 0xc7, 0x2f, 0xb9, 0x07, 0x39, 0xf8, 0xe2, 0x21, 0x72, 0xb6, 0xa8, 0xb6, 0x03, 0x81, 0x41, + 0x9d, 0x1d, 0x08, 0xc9, 0xaa, 0xb0, 0x8b, 0x5d, 0x56, 0xd8, 0x47, 0x5a, 0x15, 0xb3, 0xec, 0x6c, + 0x29, 0xae, 0x43, 0x5a, 0x3c, 0xa5, 0x95, 0xc2, 0xec, 0x5c, 0xe3, 0xad, 0x58, 0xf4, 0x22, 0x3d, + 0x16, 0xdc, 0xa5, 0xa3, 0x08, 0xee, 0xf1, 0xfc, 0xc0, 0x46, 0x1b, 0x70, 0xd2, 0xb2, 0xcd, 0xb6, + 0x4d, 0x1c, 0x67, 0x99, 0x28, 0x2d, 0x4d, 0x35, 0x88, 0xef, 0xaf, 0x11, 0x6e, 0xe7, 0x43, 0xfb, + 0x7b, 0xf3, 0x27, 0x6b, 0xd9, 0x24, 0x38, 0x8f, 0x57, 0xfe, 0x74, 0x10, 0x4e, 0x24, 0x57, 0xd9, + 0x9c, 0x8a, 0x56, 0xea, 0xa9, 0xa2, 0x7d, 0x32, 0x32, 0x6d, 0xbc, 0x72, 0x3f, 0x88, 0x86, 0x8c, + 0xa9, 0xb3, 0x08, 0x13, 0x22, 0x8f, 0xf8, 0x9d, 0xa2, 0xa6, 0x0f, 0xa2, 0x61, 0x23, 0xde, 0x8d, + 0x93, 0xf4, 0xac, 0x4e, 0x0d, 0xcb, 0x4f, 0x1f, 0x64, 0x30, 0x5e, 0xa7, 0x2e, 0x26, 0x09, 0x70, + 0x9a, 0x07, 0xad, 0xc1, 0x94, 0x6b, 0xa4, 0xa1, 0xbc, 0xe8, 0x7c, 0x48, 0x40, 0x4d, 0x6d, 0xa4, + 0x49, 0x70, 0x16, 0x1f, 0xda, 0x01, 0x68, 0xfa, 0x05, 0x81, 0x53, 0x1e, 0xe2, 0xb9, 0xba, 0xda, + 0xf3, 0xdc, 0x0a, 0x6a, 0x8b, 0x30, 0x23, 0x06, 0x4d, 0x0e, 0x8e, 0x48, 0x42, 0xcf, 0xc3, 0x98, + 0xcd, 0x37, 0x2d, 0xbe, 0x01, 0x5e, 0xe1, 0xff, 0x80, 0x60, 0x1b, 0xc3, 0xd1, 0x4e, 0x1c, 0xa7, + 0xcd, 0xa8, 0xd5, 0x4b, 0xf7, 0x5c, 0xab, 0xff, 0x45, 0x8a, 0x2e, 0x6f, 0x41, 0x99, 0x7e, 0x3e, + 0x56, 0x92, 0x3d, 0x96, 0x28, 0xc9, 0x66, 0xd2, 0x1c, 0x91, 0x8a, 0xec, 0x7b, 0xd9, 0x15, 0xfa, + 0xa5, 0x43, 0x55, 0xe8, 0xe1, 0x32, 0x7d, 0xf7, 0x12, 0xfd, 0x23, 0x09, 0x66, 0x2e, 0xd5, 0x2f, + 0xdb, 0xa6, 0x6b, 0xf9, 0xea, 0x5d, 0xb5, 0x3c, 0x3f, 0x7f, 0x03, 0x06, 0x6d, 0x57, 0xf3, 0xed, + 0xfa, 0x3f, 0xdf, 0x2e, 0xec, 0x6a, 0xcc, 0xae, 0xa9, 0x04, 0x97, 0x67, 0x14, 0x63, 0x40, 0x6f, + 0xc2, 0x90, 0xad, 0x18, 0x6d, 0xe2, 0x2f, 0xe0, 0xcf, 0x74, 0x69, 0xcd, 0xca, 0x32, 0x66, 0xec, + 0x91, 0x32, 0x92, 0xa3, 0x61, 0x81, 0x2a, 0xff, 0x42, 0x82, 0x89, 0x2b, 0x8d, 0x46, 0x6d, 0xc5, + 0xe0, 0x19, 0xa0, 0xa6, 0xd0, 0x6d, 0x56, 0x63, 0x58, 0x0a, 0xdd, 0x4e, 0xd6, 0x18, 0xac, 0x0f, + 0xf3, 0x1e, 0xb4, 0x0d, 0xc3, 0x2c, 0xf3, 0x10, 0xa3, 0xd5, 0xe3, 0xf6, 0x40, 0x88, 0xab, 0x7a, + 0x20, 0x61, 0xed, 0x2a, 0x1a, 0xb0, 0x0f, 0x2f, 0xbf, 0x0b, 0xd3, 0x11, 0xf5, 0x98, 0xbf, 0xf8, + 0x19, 0x2b, 0x6a, 0x42, 0x91, 0x69, 0xe2, 0x9f, 0xa0, 0x76, 0x7b, 0x10, 0x98, 0x30, 0x39, 0xac, + 0xc1, 0xd8, 0x97, 0x83, 0x3d, 0x6c, 0x79, 0x0d, 0xc6, 0xae, 0x98, 0x0e, 0xad, 0x99, 0x36, 0xe5, + 0x6e, 0x43, 0x8f, 0x40, 0x41, 0x57, 0x0d, 0xb1, 0xc2, 0x8f, 0x0a, 0x9e, 0x02, 0x5b, 0x83, 0x58, + 0x3b, 0xef, 0x56, 0x76, 0x45, 0x26, 0x0b, 0xbb, 0x95, 0x5d, 0xcc, 0xda, 0xe5, 0xcb, 0x30, 0x2c, + 0x86, 0x23, 0x0a, 0x54, 0x38, 0x18, 0xa8, 0x90, 0x01, 0xf4, 0x9b, 0x01, 0x18, 0x16, 0xda, 0xf7, + 0x61, 0x23, 0xf8, 0x7a, 0x6c, 0x23, 0x78, 0xbe, 0xb7, 0x91, 0xce, 0xdd, 0x05, 0xb6, 0x12, 0xbb, + 0xc0, 0x17, 0x7a, 0xc4, 0x3f, 0x78, 0x0b, 0xf8, 0xa1, 0x04, 0xe3, 0xf1, 0x98, 0x43, 0xe7, 0x60, + 0x94, 0xad, 0x47, 0x6a, 0x93, 0xac, 0x87, 0x05, 0x75, 0x70, 0xa0, 0x53, 0x0f, 0xbb, 0x70, 0x94, + 0x0e, 0xb5, 0x03, 0x36, 0x16, 0x16, 0xc2, 0x29, 0xf9, 0x2e, 0x77, 0xa9, 0xaa, 0x55, 0xbc, 0xab, + 0xa7, 0xca, 0x8a, 0x41, 0xaf, 0xda, 0x75, 0x6a, 0xab, 0x46, 0x3b, 0x25, 0x88, 0xc7, 0x58, 0x14, + 0x59, 0xbe, 0x25, 0xc1, 0xa8, 0x50, 0xb9, 0x0f, 0xdb, 0x99, 0xd7, 0xe2, 0xdb, 0x99, 0x67, 0x7a, + 0x9c, 0xcf, 0xd9, 0x7b, 0x99, 0x8f, 0x43, 0x53, 0xd8, 0x0c, 0x66, 0x09, 0x66, 0xdb, 0x74, 0x68, + 0x32, 0xc1, 0xb0, 0xb9, 0x86, 0x79, 0x0f, 0xfa, 0x81, 0x04, 0x27, 0xd4, 0xc4, 0x9c, 0x17, 0xbe, + 0x7e, 0xa9, 0x37, 0xd5, 0x02, 0x98, 0x6a, 0x59, 0xc8, 0x3b, 0x91, 0xec, 0xc1, 0x29, 0x91, 0xb2, + 0x0b, 0x29, 0x2a, 0xa4, 0xc0, 0xe0, 0x36, 0xa5, 0x96, 0x18, 0x84, 0xa5, 0xde, 0x33, 0x4f, 0xa8, + 0x52, 0x89, 0x9b, 0xdf, 0x68, 0xd4, 0x30, 0x87, 0x96, 0x7f, 0x3d, 0x10, 0x38, 0xac, 0xee, 0x4d, + 0x92, 0x20, 0xdf, 0x4a, 0x47, 0x91, 0x6f, 0x47, 0xb3, 0x72, 0x2d, 0xfa, 0x16, 0x14, 0xa8, 0xd6, + 0xeb, 0x86, 0x56, 0x48, 0x68, 0xac, 0xd6, 0xc3, 0x84, 0xd5, 0x58, 0xad, 0x63, 0x06, 0x89, 0xde, + 0x82, 0x22, 0x5b, 0xcd, 0xd8, 0x1c, 0x2f, 0xf4, 0x9e, 0x43, 0x98, 0xbf, 0xc2, 0x08, 0x63, 0x5f, + 0x0e, 0xf6, 0x70, 0xe5, 0x77, 0x61, 0x2c, 0x96, 0x08, 0xd0, 0x0d, 0x38, 0xae, 0x99, 0x4a, 0xab, + 0xaa, 0x68, 0x8a, 0xd1, 0x24, 0x76, 0x32, 0x35, 0x66, 0xef, 0x85, 0x56, 0x23, 0x1c, 0x22, 0xa1, + 0x04, 0xd7, 0xa0, 0xd1, 0x3e, 0x1c, 0xc3, 0x96, 0x15, 0x80, 0xd0, 0x7a, 0x34, 0x0f, 0x45, 0x16, + 0xc2, 0xde, 0xca, 0x34, 0x52, 0x1d, 0x61, 0xba, 0xb2, 0xc8, 0x76, 0xb0, 0xd7, 0x8e, 0xce, 0x02, + 0x38, 0xa4, 0x69, 0x13, 0xca, 0xf3, 0x8e, 0x77, 0x7a, 0x14, 0x64, 0xe0, 0x7a, 0xd0, 0x83, 0x23, + 0x54, 0xf2, 0xdf, 0x24, 0x18, 0x5b, 0x27, 0xf4, 0x1d, 0xd3, 0xbe, 0x59, 0xe3, 0xd7, 0xcc, 0x7d, + 0xc8, 0xfb, 0x9b, 0xb1, 0xbc, 0xff, 0x72, 0x97, 0x63, 0x16, 0xd3, 0x36, 0x2f, 0xfb, 0xcb, 0xff, + 0x92, 0xa0, 0x1c, 0xa3, 0x8c, 0xa6, 0x09, 0x02, 0x45, 0xcb, 0xb4, 0xa9, 0xbf, 0xc6, 0x1f, 0x4a, + 0x03, 0x96, 0x52, 0x23, 0xab, 0x3c, 0x83, 0xc5, 0x1e, 0x3a, 0xb3, 0x73, 0xcb, 0x36, 0x75, 0x11, + 0xf7, 0x87, 0x93, 0x42, 0x88, 0x1d, 0xda, 0x79, 0xc9, 0x36, 0x75, 0xcc, 0xb1, 0xe5, 0xbf, 0x4a, + 0x30, 0x19, 0xa3, 0xec, 0x43, 0x4a, 0x57, 0xe2, 0x29, 0xfd, 0x85, 0xc3, 0x18, 0x96, 0x93, 0xd8, + 0xbf, 0x4c, 0x9a, 0xc5, 0x1c, 0x80, 0xb6, 0x60, 0xd4, 0x32, 0x5b, 0xf5, 0x23, 0xb8, 0x5f, 0x9c, + 0x60, 0x2b, 0x64, 0x2d, 0xc4, 0xc2, 0x51, 0x60, 0xb4, 0x0b, 0x93, 0x86, 0xa2, 0x13, 0xc7, 0x52, + 0x9a, 0xa4, 0x7e, 0x04, 0x67, 0x2a, 0x0f, 0xf0, 0x5b, 0x8a, 0x24, 0x22, 0x4e, 0x0b, 0x91, 0x7f, + 0x97, 0xb2, 0xdb, 0xb4, 0x29, 0x7a, 0x05, 0x4a, 0xfc, 0xa9, 0x47, 0xd3, 0xd4, 0xc4, 0xd2, 0x76, + 0x8e, 0x0d, 0x4d, 0x4d, 0xb4, 0xdd, 0xd9, 0x9b, 0xff, 0xff, 0x03, 0x8f, 0x84, 0x7d, 0x42, 0x1c, + 0xc0, 0xa0, 0x75, 0x18, 0xb4, 0x0e, 0x53, 0x66, 0xf0, 0x85, 0x85, 0xd7, 0x16, 0x1c, 0x47, 0xfe, + 0x77, 0x52, 0x71, 0xbe, 0xbc, 0xdc, 0x38, 0xb2, 0x01, 0x0b, 0xca, 0x9a, 0xdc, 0x41, 0xb3, 0x61, + 0x58, 0xac, 0xb2, 0x22, 0x2e, 0x2f, 0x1f, 0x26, 0x2e, 0xa3, 0x2b, 0x43, 0xb0, 0x89, 0xf0, 0x1b, + 0x7d, 0x41, 0xf2, 0x3f, 0x24, 0x98, 0xe4, 0x0a, 0x35, 0x5d, 0x5b, 0xa5, 0x9d, 0xbe, 0x65, 0xd0, + 0xad, 0x58, 0x06, 0x5d, 0xee, 0xd2, 0xd0, 0x94, 0xc6, 0xb9, 0x59, 0xf4, 0x33, 0x09, 0x1e, 0x48, + 0x51, 0xf7, 0x21, 0xc3, 0x90, 0x78, 0x86, 0x79, 0xf9, 0xb0, 0x06, 0xe6, 0x64, 0x99, 0x1f, 0x8e, + 0x66, 0x98, 0xc7, 0x03, 0xf7, 0x2c, 0x80, 0x65, 0xab, 0x3b, 0xaa, 0x46, 0xda, 0xe2, 0x12, 0xba, + 0x14, 0x0e, 0x49, 0x2d, 0xe8, 0xc1, 0x11, 0x2a, 0xf4, 0x1d, 0x98, 0x69, 0x91, 0x2d, 0xc5, 0xd5, + 0xe8, 0x62, 0xab, 0xb5, 0xa4, 0x58, 0xca, 0xa6, 0xaa, 0xa9, 0x54, 0x15, 0x3b, 0xec, 0x91, 0xea, + 0x45, 0xef, 0x72, 0x38, 0x8b, 0xe2, 0xce, 0xde, 0xfc, 0xe3, 0x07, 0x5f, 0xea, 0xf8, 0xc4, 0x1d, + 0x9c, 0x23, 0x04, 0x7d, 0x5f, 0x82, 0xb2, 0x4d, 0xde, 0x76, 0x55, 0x9b, 0xb4, 0x96, 0x6d, 0xd3, + 0x8a, 0x69, 0x50, 0xe0, 0x1a, 0x5c, 0xde, 0xdf, 0x9b, 0x2f, 0xe3, 0x1c, 0x9a, 0x6e, 0x74, 0xc8, + 0x15, 0x84, 0x28, 0x4c, 0x29, 0x9a, 0x66, 0xbe, 0x43, 0xe2, 0x1e, 0x18, 0xe4, 0xf2, 0xab, 0xfb, + 0x7b, 0xf3, 0x53, 0x8b, 0xe9, 0xee, 0x6e, 0x44, 0x67, 0xc1, 0xa3, 0x05, 0x18, 0xde, 0x31, 0x35, + 0x57, 0x27, 0x4e, 0xb9, 0xc8, 0x25, 0xb1, 0x8c, 0x3b, 0x7c, 0xcd, 0x6b, 0xba, 0xb3, 0x37, 0x3f, + 0x74, 0xa9, 0xce, 0x8f, 0x3e, 0x7c, 0x2a, 0xb6, 0x47, 0x63, 0x35, 0x93, 0x98, 0xf2, 0xfc, 0xcc, + 0xb6, 0x14, 0xe6, 0x98, 0x2b, 0x61, 0x17, 0x8e, 0xd2, 0x21, 0x1d, 0x46, 0xb6, 0xc5, 0xbe, 0xdd, + 0x29, 0x0f, 0xf7, 0xb4, 0xfa, 0xc5, 0xf6, 0xfd, 0xd5, 0x49, 0x21, 0x72, 0xc4, 0x6f, 0x76, 0x70, + 0x28, 0x01, 0x3d, 0x01, 0xc3, 0xfc, 0x63, 0x65, 0x99, 0x1f, 0x80, 0x95, 0xc2, 0x4c, 0x74, 0xc5, + 0x6b, 0xc6, 0x7e, 0xbf, 0x4f, 0xba, 0x52, 0x5b, 0xe2, 0x07, 0xb3, 0x09, 0xd2, 0x95, 0xda, 0x12, + 0xf6, 0xfb, 0x91, 0x05, 0xc3, 0x0e, 0x59, 0x55, 0x0d, 0x77, 0xb7, 0x0c, 0x3d, 0x5d, 0x35, 0xd7, + 0x2f, 0x72, 0xee, 0xc4, 0x51, 0x54, 0x28, 0x51, 0xf4, 0x63, 0x5f, 0x0c, 0xda, 0x85, 0x11, 0xdb, + 0x35, 0x16, 0x9d, 0x0d, 0x87, 0xd8, 0xe5, 0x51, 0x2e, 0xb3, 0xdb, 0xe4, 0x8c, 0x7d, 0xfe, 0xa4, + 0xd4, 0xc0, 0x83, 0x01, 0x05, 0x0e, 0x85, 0xa1, 0x9f, 0x4b, 0x80, 0x1c, 0xd7, 0xb2, 0x34, 0xa2, + 0x13, 0x83, 0x2a, 0x1a, 0x3f, 0x0d, 0x73, 0xca, 0xc7, 0xb9, 0x0e, 0xb5, 0x6e, 0xed, 0x4e, 0x01, + 0x25, 0x95, 0x09, 0x8e, 0xa9, 0xd3, 0xa4, 0x38, 0x43, 0x0f, 0x36, 0x14, 0x5b, 0x0e, 0xff, 0x5d, + 0x1e, 0xeb, 0x69, 0x28, 0xb2, 0x4f, 0x05, 0xc3, 0xa1, 0x10, 0xfd, 0xd8, 0x17, 0x83, 0xae, 0xc1, + 0x8c, 0x4d, 0x94, 0xd6, 0x55, 0x43, 0xeb, 0x60, 0xd3, 0xa4, 0x97, 0x54, 0x8d, 0x38, 0x1d, 0x87, + 0x12, 0xbd, 0x3c, 0xce, 0xc3, 0x26, 0x78, 0xea, 0x81, 0x33, 0xa9, 0x70, 0x0e, 0x37, 0x7a, 0x19, + 0x4e, 0x88, 0x89, 0xc9, 0x43, 0x93, 0x9f, 0xa0, 0x4d, 0xf0, 0xa9, 0x38, 0xcd, 0x76, 0xc4, 0x8b, + 0x89, 0x3e, 0x9c, 0xa2, 0xe6, 0xef, 0x10, 0xc4, 0x09, 0x70, 0x7f, 0xde, 0x14, 0x1e, 0xee, 0x1d, + 0x42, 0xa8, 0xea, 0x7d, 0x7b, 0x87, 0x10, 0x11, 0x71, 0xf0, 0x21, 0xd4, 0x97, 0x03, 0x30, 0x15, + 0x12, 0xdf, 0xf3, 0x3b, 0x84, 0x0c, 0x96, 0x3e, 0xbc, 0x43, 0xc8, 0xbe, 0xc8, 0x2f, 0xdc, 0xef, + 0x8b, 0xfc, 0xfb, 0xf0, 0xfe, 0x81, 0xbf, 0x0d, 0x08, 0x9d, 0xf8, 0xdf, 0xff, 0x36, 0x20, 0xd4, + 0x35, 0xa7, 0x20, 0xfa, 0xc3, 0x40, 0xd4, 0xa0, 0xff, 0xa1, 0x0b, 0xe8, 0xc3, 0xbf, 0xb8, 0x94, + 0x3f, 0x2b, 0xc0, 0x89, 0xe4, 0x8c, 0x8d, 0xdd, 0x43, 0x4a, 0x77, 0xbd, 0x87, 0xac, 0xc1, 0xf4, + 0x96, 0xab, 0x69, 0x1d, 0xee, 0x90, 0xc8, 0x65, 0xa4, 0x77, 0xee, 0xff, 0xb0, 0xe0, 0x9c, 0xbe, + 0x94, 0x41, 0x83, 0x33, 0x39, 0x73, 0xee, 0x54, 0x0b, 0x3d, 0xdd, 0xa9, 0xa6, 0xae, 0xf4, 0x06, + 0xbb, 0xb8, 0xd2, 0xcb, 0xbc, 0x1f, 0x2d, 0xf6, 0x70, 0x3f, 0x7a, 0x14, 0x17, 0x9a, 0x19, 0x89, + 0xef, 0x6e, 0x17, 0x9a, 0xf2, 0xc3, 0x30, 0x2b, 0xd8, 0x28, 0xbf, 0x6b, 0x34, 0xa8, 0x6d, 0x6a, + 0x1a, 0xb1, 0x97, 0x5d, 0x5d, 0xef, 0xc8, 0x17, 0x60, 0x3c, 0x7e, 0xab, 0xee, 0x8d, 0xbc, 0x77, + 0xd1, 0x2f, 0x6e, 0x63, 0x22, 0x23, 0xef, 0xb5, 0xe3, 0x80, 0x42, 0x7e, 0x5f, 0x82, 0x99, 0xec, + 0x17, 0x7c, 0x48, 0x83, 0x71, 0x5d, 0xd9, 0x8d, 0x3e, 0x7f, 0x94, 0x7a, 0xdc, 0xb3, 0xf3, 0xeb, + 0xd3, 0xb5, 0x18, 0x16, 0x4e, 0x60, 0xcb, 0x9f, 0x4b, 0x70, 0x32, 0xe7, 0xa2, 0xb2, 0xbf, 0x9a, + 0xa0, 0xeb, 0x50, 0xd2, 0x95, 0xdd, 0xba, 0x6b, 0xb7, 0x49, 0xcf, 0xa7, 0x14, 0x3c, 0x97, 0xac, + 0x09, 0x14, 0x1c, 0xe0, 0xc9, 0x1f, 0x49, 0x50, 0xce, 0xab, 0x28, 0xd1, 0xb9, 0xd8, 0x95, 0xea, + 0xa3, 0x89, 0x2b, 0xd5, 0xc9, 0x14, 0x5f, 0x9f, 0x2e, 0x54, 0x3f, 0x96, 0x60, 0x26, 0xbb, 0xf2, + 0x46, 0x4f, 0xc7, 0x34, 0x9e, 0x4f, 0x68, 0x3c, 0x91, 0xe0, 0x12, 0xfa, 0x6e, 0xc3, 0xb8, 0xa8, + 0xcf, 0x05, 0x8c, 0xf0, 0xf2, 0x93, 0x07, 0x67, 0x55, 0x01, 0xe6, 0x57, 0x9a, 0x7c, 0x24, 0xe3, + 0x6d, 0x38, 0x81, 0x2b, 0xff, 0x6a, 0x00, 0x8a, 0xf5, 0xa6, 0xa2, 0x91, 0x3e, 0x14, 0x75, 0xd7, + 0x63, 0x45, 0x5d, 0xb7, 0xff, 0x77, 0xe0, 0x5a, 0xe6, 0xd6, 0x73, 0x9b, 0x89, 0x7a, 0xee, 0x7c, + 0x4f, 0xe8, 0x07, 0x97, 0x72, 0xcf, 0xc1, 0x48, 0xa0, 0x44, 0x77, 0xab, 0x87, 0xfc, 0xe1, 0x00, + 0x8c, 0x46, 0x44, 0x74, 0xb9, 0xf6, 0xec, 0xc4, 0x56, 0xef, 0x5e, 0xfe, 0x5a, 0x15, 0x91, 0x5d, + 0xf1, 0xd7, 0x6f, 0xef, 0x05, 0x5f, 0xf8, 0x12, 0x2b, 0xbd, 0xac, 0x5f, 0x80, 0x71, 0xca, 0xff, + 0x69, 0x14, 0x9c, 0x12, 0x16, 0x78, 0x14, 0x07, 0xef, 0x42, 0x1b, 0xb1, 0x5e, 0x9c, 0xa0, 0x9e, + 0x7d, 0x1e, 0xc6, 0x62, 0xc2, 0xba, 0x7a, 0x70, 0xf7, 0x47, 0x09, 0x1e, 0xbd, 0xeb, 0xae, 0x0e, + 0x55, 0x63, 0xd3, 0xab, 0x92, 0x98, 0x5e, 0x73, 0xf9, 0x00, 0x7d, 0x7c, 0x6e, 0xf1, 0xd3, 0x01, + 0x40, 0x8d, 0x6d, 0xd5, 0x6e, 0xd5, 0x14, 0x9b, 0x76, 0xb0, 0xf8, 0x3f, 0x59, 0x1f, 0x26, 0xdc, + 0x39, 0x18, 0x6d, 0x11, 0xa7, 0x69, 0xab, 0xdc, 0x59, 0x62, 0xaf, 0x10, 0x9c, 0xa4, 0x2c, 0x87, + 0x5d, 0x38, 0x4a, 0x87, 0xda, 0x50, 0xda, 0xf1, 0xfe, 0xb1, 0xe8, 0xdf, 0xdd, 0x75, 0x5b, 0xcc, + 0x86, 0xff, 0x79, 0x0c, 0xe3, 0x4b, 0x34, 0x38, 0x38, 0x00, 0x97, 0x3f, 0x90, 0x60, 0x26, 0xed, + 0x98, 0x65, 0xa6, 0xfa, 0xfd, 0x77, 0xce, 0xc3, 0x30, 0xc8, 0xd1, 0x99, 0x57, 0x8e, 0x7b, 0x67, + 0xe6, 0x4c, 0x32, 0xe6, 0xad, 0xf2, 0x17, 0x12, 0xcc, 0x66, 0xab, 0xd6, 0x87, 0xad, 0xc4, 0x8d, + 0xf8, 0x56, 0xa2, 0xdb, 0x83, 0x87, 0x6c, 0xbd, 0x73, 0xb6, 0x15, 0x7b, 0x99, 0x63, 0xd0, 0x07, + 0x23, 0xb7, 0xe2, 0x46, 0x2e, 0x1e, 0xda, 0xc8, 0x6c, 0x03, 0xab, 0x67, 0x6e, 0xdd, 0x9e, 0x3b, + 0xf6, 0xc9, 0xed, 0xb9, 0x63, 0x9f, 0xde, 0x9e, 0x3b, 0xf6, 0xde, 0xfe, 0x9c, 0x74, 0x6b, 0x7f, + 0x4e, 0xfa, 0x64, 0x7f, 0x4e, 0xfa, 0x74, 0x7f, 0x4e, 0xfa, 0xe7, 0xfe, 0x9c, 0xf4, 0xe3, 0xcf, + 0xe7, 0x8e, 0x5d, 0x1f, 0x16, 0xb8, 0xff, 0x09, 0x00, 0x00, 0xff, 0xff, 0xfe, 0xd5, 0x62, 0x7f, + 0xc2, 0x3d, 0x00, 0x00, } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/generated.proto b/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/generated.proto index 861904e4..69b9563b 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/generated.proto @@ -26,8 +26,8 @@ import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; import "k8s.io/kubernetes/pkg/api/v1/generated.proto"; +import "k8s.io/kubernetes/pkg/apis/policy/v1beta1/generated.proto"; // Package-wide variables from generator "generated". option go_package = "v1beta1"; @@ -67,12 +67,12 @@ message CustomMetricTargetList { // DaemonSet represents the configuration of a daemon set. message DaemonSet { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // The desired behavior of this daemon set. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional DaemonSetSpec spec = 2; @@ -80,7 +80,7 @@ message DaemonSet { // out of date by some window of time. // Populated by the system. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional DaemonSetStatus status = 3; } @@ -88,7 +88,7 @@ message DaemonSet { // DaemonSetList is a collection of daemon sets. message DaemonSetList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -123,10 +123,17 @@ message DaemonSetSpec { // +optional optional int32 minReadySeconds = 4; + // DEPRECATED. // A sequence number representing a specific generation of the template. // Populated by the system. It can be set only during the creation. // +optional optional int64 templateGeneration = 5; + + // The number of old history to retain to allow rollback. + // This is a pointer to distinguish between explicit zero and not specified. + // Defaults to 10. + // +optional + optional int32 revisionHistoryLimit = 6; } // DaemonSetStatus represents the current status of a daemon set. @@ -169,6 +176,12 @@ message DaemonSetStatus { // (ready for at least spec.minReadySeconds) // +optional optional int32 numberUnavailable = 8; + + // Count of hash collisions for the DaemonSet. The DaemonSet controller + // uses this field as a collision avoidance mechanism when it needs to + // create the name for the newest ControllerRevision. + // +optional + optional int64 collisionCount = 9; } message DaemonSetUpdateStrategy { @@ -180,7 +193,7 @@ message DaemonSetUpdateStrategy { // Rolling update config params. Present only if type = "RollingUpdate". // --- // TODO: Update this to follow our convention for oneOf, whatever we decide it - // to be. Same as DeploymentStrategy.RollingUpdate. + // to be. Same as Deployment `strategy.rollingUpdate`. // See https://github.com/kubernetes/kubernetes/issues/35345 // +optional optional RollingUpdateDaemonSet rollingUpdate = 2; @@ -324,6 +337,12 @@ message DeploymentStatus { // +patchMergeKey=type // +patchStrategy=merge repeated DeploymentCondition conditions = 6; + + // Count of hash collisions for the Deployment. The Deployment controller uses this + // field as a collision avoidance mechanism when it needs to create the name for the + // newest ReplicaSet. + // +optional + optional int64 collisionCount = 8; } // DeploymentStrategy describes how to replace existing pods with new ones. @@ -406,17 +425,17 @@ message IDRange { // based virtual hosting etc. message Ingress { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // Spec is the desired state of the Ingress. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional IngressSpec spec = 2; // Status is the current state of the Ingress. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional IngressStatus status = 3; } @@ -433,7 +452,7 @@ message IngressBackend { // IngressList is a collection of Ingress. message IngressList { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -526,9 +545,10 @@ message IngressTLS { optional string secretName = 2; } +// NetworkPolicy describes what network traffic is allowed for a set of Pods message NetworkPolicy { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; @@ -559,7 +579,7 @@ message NetworkPolicyIngressRule { // Network Policy List is a list of NetworkPolicy objects. message NetworkPolicyList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -606,13 +626,12 @@ message NetworkPolicySpec { optional k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector podSelector = 1; // List of ingress rules to be applied to the selected pods. - // Traffic is allowed to a pod if namespace.networkPolicy.ingress.isolation is undefined and cluster policy allows it, + // Traffic is allowed to a pod if there are no NetworkPolicies selecting the pod // OR if the traffic source is the pod's local node, // OR if the traffic matches at least one ingress rule across all of the NetworkPolicy // objects whose podSelector matches the pod. - // If this field is empty then this NetworkPolicy does not affect ingress isolation. - // If this field is present and contains at least one rule, this policy allows any traffic - // which matches at least one of the ingress rules in this list. + // If this field is empty then this NetworkPolicy does not allow any traffic + // (and serves solely to ensure that the pods it selects are isolated by default). // +optional repeated NetworkPolicyIngressRule ingress = 2; } @@ -621,7 +640,7 @@ message NetworkPolicySpec { // that will be applied to a pod and container. message PodSecurityPolicy { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; @@ -633,7 +652,7 @@ message PodSecurityPolicy { // Pod Security Policy List is a list of PodSecurityPolicy objects. message PodSecurityPolicyList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -704,18 +723,23 @@ message PodSecurityPolicySpec { // will not be forced to. // +optional optional bool readOnlyRootFilesystem = 14; + + // AllowedHostPaths is a white list of allowed host path prefixes. Empty indicates that all + // host paths may be used. + // +optional + repeated string allowedHostPaths = 15; } // ReplicaSet represents the configuration of a ReplicaSet. message ReplicaSet { // If the Labels of a ReplicaSet are empty, they are defaulted to // be the same as the Pod(s) that the ReplicaSet manages. - // Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata + // Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; // Spec defines the specification of the desired behavior of the ReplicaSet. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional ReplicaSetSpec spec = 2; @@ -723,7 +747,7 @@ message ReplicaSet { // This data may be out of date by some window of time. // Populated by the system. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional optional ReplicaSetStatus status = 3; } @@ -752,7 +776,7 @@ message ReplicaSetCondition { // ReplicaSetList is a collection of ReplicaSets. message ReplicaSetList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; @@ -824,7 +848,7 @@ message ReplicationControllerDummy { } message RollbackConfig { - // The revision to rollback to. If set to 0, rollbck to the last revision. + // The revision to rollback to. If set to 0, rollback to the last revision. // +optional optional int64 revision = 1; } @@ -895,22 +919,22 @@ message SELinuxStrategyOptions { optional string rule = 1; // seLinuxOptions required to run as; required for MustRunAs - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/security_context.md + // More info: https://git.k8s.io/community/contributors/design-proposals/security_context.md // +optional optional k8s.io.kubernetes.pkg.api.v1.SELinuxOptions seLinuxOptions = 2; } // represents a scaling request for a resource. message Scale { - // Standard object metadata; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata. + // Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; - // defines the behavior of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. + // defines the behavior of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. // +optional optional ScaleSpec spec = 2; - // current status of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. Read-only. + // current status of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. Read-only. // +optional optional ScaleStatus status = 3; } @@ -983,7 +1007,7 @@ message ThirdPartyResourceData { // ThirdPartyResrouceDataList is a list of ThirdPartyResourceData. message ThirdPartyResourceDataList { // Standard list metadata - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; diff --git a/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/types.generated.go b/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/types.generated.go index b882c2eb..5d65fdc4 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/types.generated.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/types.generated.go @@ -5606,7 +5606,7 @@ func (x *DeploymentStatus) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [7]bool + var yyq2 [8]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[0] = x.ObservedGeneration != 0 @@ -5616,9 +5616,10 @@ func (x *DeploymentStatus) CodecEncodeSelf(e *codec1978.Encoder) { yyq2[4] = x.AvailableReplicas != 0 yyq2[5] = x.UnavailableReplicas != 0 yyq2[6] = len(x.Conditions) != 0 + yyq2[7] = x.CollisionCount != nil var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(7) + r.EncodeArrayStart(8) } else { yynn2 = 0 for _, b := range yyq2 { @@ -5812,6 +5813,41 @@ func (x *DeploymentStatus) CodecEncodeSelf(e *codec1978.Encoder) { } } } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[7] { + if x.CollisionCount == nil { + r.EncodeNil() + } else { + yy25 := *x.CollisionCount + yym26 := z.EncBinary() + _ = yym26 + if false { + } else { + r.EncodeInt(int64(yy25)) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[7] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("collisionCount")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.CollisionCount == nil { + r.EncodeNil() + } else { + yy27 := *x.CollisionCount + yym28 := z.EncBinary() + _ = yym28 + if false { + } else { + r.EncodeInt(int64(yy27)) + } + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -5957,6 +5993,22 @@ func (x *DeploymentStatus) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { h.decSliceDeploymentCondition((*[]DeploymentCondition)(yyv16), d) } } + case "collisionCount": + if r.TryDecodeAsNil() { + if x.CollisionCount != nil { + x.CollisionCount = nil + } + } else { + if x.CollisionCount == nil { + x.CollisionCount = new(int64) + } + yym19 := z.DecBinary() + _ = yym19 + if false { + } else { + *((*int64)(x.CollisionCount)) = int64(r.DecodeInt(64)) + } + } default: z.DecStructFieldNotFound(-1, yys3) } // end switch yys3 @@ -5968,16 +6020,16 @@ func (x *DeploymentStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj18 int - var yyb18 bool - var yyhl18 bool = l >= 0 - yyj18++ - if yyhl18 { - yyb18 = yyj18 > l + var yyj20 int + var yyb20 bool + var yyhl20 bool = l >= 0 + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l } else { - yyb18 = r.CheckBreak() + yyb20 = r.CheckBreak() } - if yyb18 { + if yyb20 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -5985,21 +6037,21 @@ func (x *DeploymentStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) if r.TryDecodeAsNil() { x.ObservedGeneration = 0 } else { - yyv19 := &x.ObservedGeneration - yym20 := z.DecBinary() - _ = yym20 + yyv21 := &x.ObservedGeneration + yym22 := z.DecBinary() + _ = yym22 if false { } else { - *((*int64)(yyv19)) = int64(r.DecodeInt(64)) + *((*int64)(yyv21)) = int64(r.DecodeInt(64)) } } - yyj18++ - if yyhl18 { - yyb18 = yyj18 > l + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l } else { - yyb18 = r.CheckBreak() + yyb20 = r.CheckBreak() } - if yyb18 { + if yyb20 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6007,29 +6059,7 @@ func (x *DeploymentStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) if r.TryDecodeAsNil() { x.Replicas = 0 } else { - yyv21 := &x.Replicas - yym22 := z.DecBinary() - _ = yym22 - if false { - } else { - *((*int32)(yyv21)) = int32(r.DecodeInt(32)) - } - } - yyj18++ - if yyhl18 { - yyb18 = yyj18 > l - } else { - yyb18 = r.CheckBreak() - } - if yyb18 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.UpdatedReplicas = 0 - } else { - yyv23 := &x.UpdatedReplicas + yyv23 := &x.Replicas yym24 := z.DecBinary() _ = yym24 if false { @@ -6037,21 +6067,21 @@ func (x *DeploymentStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) *((*int32)(yyv23)) = int32(r.DecodeInt(32)) } } - yyj18++ - if yyhl18 { - yyb18 = yyj18 > l + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l } else { - yyb18 = r.CheckBreak() + yyb20 = r.CheckBreak() } - if yyb18 { + if yyb20 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } z.DecSendContainerState(codecSelfer_containerArrayElem1234) if r.TryDecodeAsNil() { - x.ReadyReplicas = 0 + x.UpdatedReplicas = 0 } else { - yyv25 := &x.ReadyReplicas + yyv25 := &x.UpdatedReplicas yym26 := z.DecBinary() _ = yym26 if false { @@ -6059,21 +6089,21 @@ func (x *DeploymentStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) *((*int32)(yyv25)) = int32(r.DecodeInt(32)) } } - yyj18++ - if yyhl18 { - yyb18 = yyj18 > l + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l } else { - yyb18 = r.CheckBreak() + yyb20 = r.CheckBreak() } - if yyb18 { + if yyb20 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } z.DecSendContainerState(codecSelfer_containerArrayElem1234) if r.TryDecodeAsNil() { - x.AvailableReplicas = 0 + x.ReadyReplicas = 0 } else { - yyv27 := &x.AvailableReplicas + yyv27 := &x.ReadyReplicas yym28 := z.DecBinary() _ = yym28 if false { @@ -6081,21 +6111,21 @@ func (x *DeploymentStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) *((*int32)(yyv27)) = int32(r.DecodeInt(32)) } } - yyj18++ - if yyhl18 { - yyb18 = yyj18 > l + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l } else { - yyb18 = r.CheckBreak() + yyb20 = r.CheckBreak() } - if yyb18 { + if yyb20 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } z.DecSendContainerState(codecSelfer_containerArrayElem1234) if r.TryDecodeAsNil() { - x.UnavailableReplicas = 0 + x.AvailableReplicas = 0 } else { - yyv29 := &x.UnavailableReplicas + yyv29 := &x.AvailableReplicas yym30 := z.DecBinary() _ = yym30 if false { @@ -6103,13 +6133,35 @@ func (x *DeploymentStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) *((*int32)(yyv29)) = int32(r.DecodeInt(32)) } } - yyj18++ - if yyhl18 { - yyb18 = yyj18 > l + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l } else { - yyb18 = r.CheckBreak() + yyb20 = r.CheckBreak() } - if yyb18 { + if yyb20 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.UnavailableReplicas = 0 + } else { + yyv31 := &x.UnavailableReplicas + yym32 := z.DecBinary() + _ = yym32 + if false { + } else { + *((*int32)(yyv31)) = int32(r.DecodeInt(32)) + } + } + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l + } else { + yyb20 = r.CheckBreak() + } + if yyb20 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -6117,26 +6169,52 @@ func (x *DeploymentStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) if r.TryDecodeAsNil() { x.Conditions = nil } else { - yyv31 := &x.Conditions - yym32 := z.DecBinary() - _ = yym32 + yyv33 := &x.Conditions + yym34 := z.DecBinary() + _ = yym34 if false { } else { - h.decSliceDeploymentCondition((*[]DeploymentCondition)(yyv31), d) + h.decSliceDeploymentCondition((*[]DeploymentCondition)(yyv33), d) + } + } + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l + } else { + yyb20 = r.CheckBreak() + } + if yyb20 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.CollisionCount != nil { + x.CollisionCount = nil + } + } else { + if x.CollisionCount == nil { + x.CollisionCount = new(int64) + } + yym36 := z.DecBinary() + _ = yym36 + if false { + } else { + *((*int64)(x.CollisionCount)) = int64(r.DecodeInt(64)) } } for { - yyj18++ - if yyhl18 { - yyb18 = yyj18 > l + yyj20++ + if yyhl20 { + yyb20 = yyj20 > l } else { - yyb18 = r.CheckBreak() + yyb20 = r.CheckBreak() } - if yyb18 { + if yyb20 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj18-1, "") + z.DecStructFieldNotFound(yyj20-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -7474,16 +7552,17 @@ func (x *DaemonSetSpec) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [5]bool + var yyq2 [6]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[0] = x.Selector != nil yyq2[2] = true yyq2[3] = x.MinReadySeconds != 0 yyq2[4] = x.TemplateGeneration != 0 + yyq2[5] = x.RevisionHistoryLimit != nil var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(5) + r.EncodeArrayStart(6) } else { yynn2 = 1 for _, b := range yyq2 { @@ -7607,6 +7686,41 @@ func (x *DaemonSetSpec) CodecEncodeSelf(e *codec1978.Encoder) { } } } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[5] { + if x.RevisionHistoryLimit == nil { + r.EncodeNil() + } else { + yy23 := *x.RevisionHistoryLimit + yym24 := z.EncBinary() + _ = yym24 + if false { + } else { + r.EncodeInt(int64(yy23)) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[5] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("revisionHistoryLimit")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.RevisionHistoryLimit == nil { + r.EncodeNil() + } else { + yy25 := *x.RevisionHistoryLimit + yym26 := z.EncBinary() + _ = yym26 + if false { + } else { + r.EncodeInt(int64(yy25)) + } + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -7723,6 +7837,22 @@ func (x *DaemonSetSpec) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { *((*int64)(yyv10)) = int64(r.DecodeInt(64)) } } + case "revisionHistoryLimit": + if r.TryDecodeAsNil() { + if x.RevisionHistoryLimit != nil { + x.RevisionHistoryLimit = nil + } + } else { + if x.RevisionHistoryLimit == nil { + x.RevisionHistoryLimit = new(int32) + } + yym13 := z.DecBinary() + _ = yym13 + if false { + } else { + *((*int32)(x.RevisionHistoryLimit)) = int32(r.DecodeInt(32)) + } + } default: z.DecStructFieldNotFound(-1, yys3) } // end switch yys3 @@ -7734,16 +7864,16 @@ func (x *DaemonSetSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj12 int - var yyb12 bool - var yyhl12 bool = l >= 0 - yyj12++ - if yyhl12 { - yyb12 = yyj12 > l + var yyj14 int + var yyb14 bool + var yyhl14 bool = l >= 0 + yyj14++ + if yyhl14 { + yyb14 = yyj14 > l } else { - yyb12 = r.CheckBreak() + yyb14 = r.CheckBreak() } - if yyb12 { + if yyb14 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -7756,21 +7886,21 @@ func (x *DaemonSetSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if x.Selector == nil { x.Selector = new(pkg1_v1.LabelSelector) } - yym14 := z.DecBinary() - _ = yym14 + yym16 := z.DecBinary() + _ = yym16 if false { } else if z.HasExtensions() && z.DecExt(x.Selector) { } else { z.DecFallback(x.Selector, false) } } - yyj12++ - if yyhl12 { - yyb12 = yyj12 > l + yyj14++ + if yyhl14 { + yyb14 = yyj14 > l } else { - yyb12 = r.CheckBreak() + yyb14 = r.CheckBreak() } - if yyb12 { + if yyb14 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -7778,16 +7908,16 @@ func (x *DaemonSetSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.Template = pkg4_v1.PodTemplateSpec{} } else { - yyv15 := &x.Template - yyv15.CodecDecodeSelf(d) + yyv17 := &x.Template + yyv17.CodecDecodeSelf(d) } - yyj12++ - if yyhl12 { - yyb12 = yyj12 > l + yyj14++ + if yyhl14 { + yyb14 = yyj14 > l } else { - yyb12 = r.CheckBreak() + yyb14 = r.CheckBreak() } - if yyb12 { + if yyb14 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -7795,16 +7925,16 @@ func (x *DaemonSetSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.UpdateStrategy = DaemonSetUpdateStrategy{} } else { - yyv16 := &x.UpdateStrategy - yyv16.CodecDecodeSelf(d) + yyv18 := &x.UpdateStrategy + yyv18.CodecDecodeSelf(d) } - yyj12++ - if yyhl12 { - yyb12 = yyj12 > l + yyj14++ + if yyhl14 { + yyb14 = yyj14 > l } else { - yyb12 = r.CheckBreak() + yyb14 = r.CheckBreak() } - if yyb12 { + if yyb14 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -7812,21 +7942,21 @@ func (x *DaemonSetSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.MinReadySeconds = 0 } else { - yyv17 := &x.MinReadySeconds - yym18 := z.DecBinary() - _ = yym18 + yyv19 := &x.MinReadySeconds + yym20 := z.DecBinary() + _ = yym20 if false { } else { - *((*int32)(yyv17)) = int32(r.DecodeInt(32)) + *((*int32)(yyv19)) = int32(r.DecodeInt(32)) } } - yyj12++ - if yyhl12 { - yyb12 = yyj12 > l + yyj14++ + if yyhl14 { + yyb14 = yyj14 > l } else { - yyb12 = r.CheckBreak() + yyb14 = r.CheckBreak() } - if yyb12 { + if yyb14 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -7834,26 +7964,52 @@ func (x *DaemonSetSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { if r.TryDecodeAsNil() { x.TemplateGeneration = 0 } else { - yyv19 := &x.TemplateGeneration - yym20 := z.DecBinary() - _ = yym20 + yyv21 := &x.TemplateGeneration + yym22 := z.DecBinary() + _ = yym22 if false { } else { - *((*int64)(yyv19)) = int64(r.DecodeInt(64)) + *((*int64)(yyv21)) = int64(r.DecodeInt(64)) + } + } + yyj14++ + if yyhl14 { + yyb14 = yyj14 > l + } else { + yyb14 = r.CheckBreak() + } + if yyb14 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.RevisionHistoryLimit != nil { + x.RevisionHistoryLimit = nil + } + } else { + if x.RevisionHistoryLimit == nil { + x.RevisionHistoryLimit = new(int32) + } + yym24 := z.DecBinary() + _ = yym24 + if false { + } else { + *((*int32)(x.RevisionHistoryLimit)) = int32(r.DecodeInt(32)) } } for { - yyj12++ - if yyhl12 { - yyb12 = yyj12 > l + yyj14++ + if yyhl14 { + yyb14 = yyj14 > l } else { - yyb12 = r.CheckBreak() + yyb14 = r.CheckBreak() } - if yyb12 { + if yyb14 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj12-1, "") + z.DecStructFieldNotFound(yyj14-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -7872,16 +8028,17 @@ func (x *DaemonSetStatus) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [8]bool + var yyq2 [9]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[4] = x.ObservedGeneration != 0 yyq2[5] = x.UpdatedNumberScheduled != 0 yyq2[6] = x.NumberAvailable != 0 yyq2[7] = x.NumberUnavailable != 0 + yyq2[8] = x.CollisionCount != nil var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(8) + r.EncodeArrayStart(9) } else { yynn2 = 4 for _, b := range yyq2 { @@ -8068,6 +8225,41 @@ func (x *DaemonSetStatus) CodecEncodeSelf(e *codec1978.Encoder) { } } } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[8] { + if x.CollisionCount == nil { + r.EncodeNil() + } else { + yy28 := *x.CollisionCount + yym29 := z.EncBinary() + _ = yym29 + if false { + } else { + r.EncodeInt(int64(yy28)) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[8] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("collisionCount")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.CollisionCount == nil { + r.EncodeNil() + } else { + yy30 := *x.CollisionCount + yym31 := z.EncBinary() + _ = yym31 + if false { + } else { + r.EncodeInt(int64(yy30)) + } + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -8225,6 +8417,22 @@ func (x *DaemonSetStatus) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { *((*int32)(yyv18)) = int32(r.DecodeInt(32)) } } + case "collisionCount": + if r.TryDecodeAsNil() { + if x.CollisionCount != nil { + x.CollisionCount = nil + } + } else { + if x.CollisionCount == nil { + x.CollisionCount = new(int64) + } + yym21 := z.DecBinary() + _ = yym21 + if false { + } else { + *((*int64)(x.CollisionCount)) = int64(r.DecodeInt(64)) + } + } default: z.DecStructFieldNotFound(-1, yys3) } // end switch yys3 @@ -8236,16 +8444,16 @@ func (x *DaemonSetStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj20 int - var yyb20 bool - var yyhl20 bool = l >= 0 - yyj20++ - if yyhl20 { - yyb20 = yyj20 > l + var yyj22 int + var yyb22 bool + var yyhl22 bool = l >= 0 + yyj22++ + if yyhl22 { + yyb22 = yyj22 > l } else { - yyb20 = r.CheckBreak() + yyb22 = r.CheckBreak() } - if yyb20 { + if yyb22 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8253,29 +8461,7 @@ func (x *DaemonSetStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) if r.TryDecodeAsNil() { x.CurrentNumberScheduled = 0 } else { - yyv21 := &x.CurrentNumberScheduled - yym22 := z.DecBinary() - _ = yym22 - if false { - } else { - *((*int32)(yyv21)) = int32(r.DecodeInt(32)) - } - } - yyj20++ - if yyhl20 { - yyb20 = yyj20 > l - } else { - yyb20 = r.CheckBreak() - } - if yyb20 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.NumberMisscheduled = 0 - } else { - yyv23 := &x.NumberMisscheduled + yyv23 := &x.CurrentNumberScheduled yym24 := z.DecBinary() _ = yym24 if false { @@ -8283,21 +8469,21 @@ func (x *DaemonSetStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) *((*int32)(yyv23)) = int32(r.DecodeInt(32)) } } - yyj20++ - if yyhl20 { - yyb20 = yyj20 > l + yyj22++ + if yyhl22 { + yyb22 = yyj22 > l } else { - yyb20 = r.CheckBreak() + yyb22 = r.CheckBreak() } - if yyb20 { + if yyb22 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } z.DecSendContainerState(codecSelfer_containerArrayElem1234) if r.TryDecodeAsNil() { - x.DesiredNumberScheduled = 0 + x.NumberMisscheduled = 0 } else { - yyv25 := &x.DesiredNumberScheduled + yyv25 := &x.NumberMisscheduled yym26 := z.DecBinary() _ = yym26 if false { @@ -8305,21 +8491,21 @@ func (x *DaemonSetStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) *((*int32)(yyv25)) = int32(r.DecodeInt(32)) } } - yyj20++ - if yyhl20 { - yyb20 = yyj20 > l + yyj22++ + if yyhl22 { + yyb22 = yyj22 > l } else { - yyb20 = r.CheckBreak() + yyb22 = r.CheckBreak() } - if yyb20 { + if yyb22 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } z.DecSendContainerState(codecSelfer_containerArrayElem1234) if r.TryDecodeAsNil() { - x.NumberReady = 0 + x.DesiredNumberScheduled = 0 } else { - yyv27 := &x.NumberReady + yyv27 := &x.DesiredNumberScheduled yym28 := z.DecBinary() _ = yym28 if false { @@ -8327,13 +8513,35 @@ func (x *DaemonSetStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) *((*int32)(yyv27)) = int32(r.DecodeInt(32)) } } - yyj20++ - if yyhl20 { - yyb20 = yyj20 > l + yyj22++ + if yyhl22 { + yyb22 = yyj22 > l } else { - yyb20 = r.CheckBreak() + yyb22 = r.CheckBreak() } - if yyb20 { + if yyb22 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.NumberReady = 0 + } else { + yyv29 := &x.NumberReady + yym30 := z.DecBinary() + _ = yym30 + if false { + } else { + *((*int32)(yyv29)) = int32(r.DecodeInt(32)) + } + } + yyj22++ + if yyhl22 { + yyb22 = yyj22 > l + } else { + yyb22 = r.CheckBreak() + } + if yyb22 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8341,21 +8549,21 @@ func (x *DaemonSetStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) if r.TryDecodeAsNil() { x.ObservedGeneration = 0 } else { - yyv29 := &x.ObservedGeneration - yym30 := z.DecBinary() - _ = yym30 + yyv31 := &x.ObservedGeneration + yym32 := z.DecBinary() + _ = yym32 if false { } else { - *((*int64)(yyv29)) = int64(r.DecodeInt(64)) + *((*int64)(yyv31)) = int64(r.DecodeInt(64)) } } - yyj20++ - if yyhl20 { - yyb20 = yyj20 > l + yyj22++ + if yyhl22 { + yyb22 = yyj22 > l } else { - yyb20 = r.CheckBreak() + yyb22 = r.CheckBreak() } - if yyb20 { + if yyb22 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -8363,29 +8571,7 @@ func (x *DaemonSetStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) if r.TryDecodeAsNil() { x.UpdatedNumberScheduled = 0 } else { - yyv31 := &x.UpdatedNumberScheduled - yym32 := z.DecBinary() - _ = yym32 - if false { - } else { - *((*int32)(yyv31)) = int32(r.DecodeInt(32)) - } - } - yyj20++ - if yyhl20 { - yyb20 = yyj20 > l - } else { - yyb20 = r.CheckBreak() - } - if yyb20 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.NumberAvailable = 0 - } else { - yyv33 := &x.NumberAvailable + yyv33 := &x.UpdatedNumberScheduled yym34 := z.DecBinary() _ = yym34 if false { @@ -8393,21 +8579,21 @@ func (x *DaemonSetStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) *((*int32)(yyv33)) = int32(r.DecodeInt(32)) } } - yyj20++ - if yyhl20 { - yyb20 = yyj20 > l + yyj22++ + if yyhl22 { + yyb22 = yyj22 > l } else { - yyb20 = r.CheckBreak() + yyb22 = r.CheckBreak() } - if yyb20 { + if yyb22 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } z.DecSendContainerState(codecSelfer_containerArrayElem1234) if r.TryDecodeAsNil() { - x.NumberUnavailable = 0 + x.NumberAvailable = 0 } else { - yyv35 := &x.NumberUnavailable + yyv35 := &x.NumberAvailable yym36 := z.DecBinary() _ = yym36 if false { @@ -8415,18 +8601,66 @@ func (x *DaemonSetStatus) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) *((*int32)(yyv35)) = int32(r.DecodeInt(32)) } } - for { - yyj20++ - if yyhl20 { - yyb20 = yyj20 > l + yyj22++ + if yyhl22 { + yyb22 = yyj22 > l + } else { + yyb22 = r.CheckBreak() + } + if yyb22 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.NumberUnavailable = 0 + } else { + yyv37 := &x.NumberUnavailable + yym38 := z.DecBinary() + _ = yym38 + if false { } else { - yyb20 = r.CheckBreak() + *((*int32)(yyv37)) = int32(r.DecodeInt(32)) } - if yyb20 { + } + yyj22++ + if yyhl22 { + yyb22 = yyj22 > l + } else { + yyb22 = r.CheckBreak() + } + if yyb22 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.CollisionCount != nil { + x.CollisionCount = nil + } + } else { + if x.CollisionCount == nil { + x.CollisionCount = new(int64) + } + yym40 := z.DecBinary() + _ = yym40 + if false { + } else { + *((*int64)(x.CollisionCount)) = int64(r.DecodeInt(64)) + } + } + for { + yyj22++ + if yyhl22 { + yyb22 = yyj22 > l + } else { + yyb22 = r.CheckBreak() + } + if yyb22 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj20-1, "") + z.DecStructFieldNotFound(yyj22-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -14517,7 +14751,7 @@ func (x *PodSecurityPolicySpec) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [14]bool + var yyq2 [15]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false yyq2[0] = x.Privileged != false @@ -14530,9 +14764,10 @@ func (x *PodSecurityPolicySpec) CodecEncodeSelf(e *codec1978.Encoder) { yyq2[7] = x.HostPID != false yyq2[8] = x.HostIPC != false yyq2[13] = x.ReadOnlyRootFilesystem != false + yyq2[14] = len(x.AllowedHostPaths) != 0 var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(14) + r.EncodeArrayStart(15) } else { yynn2 = 4 for _, b := range yyq2 { @@ -14877,6 +15112,39 @@ func (x *PodSecurityPolicySpec) CodecEncodeSelf(e *codec1978.Encoder) { } } } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[14] { + if x.AllowedHostPaths == nil { + r.EncodeNil() + } else { + yym54 := z.EncBinary() + _ = yym54 + if false { + } else { + z.F.EncSliceStringV(x.AllowedHostPaths, false, e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[14] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("allowedHostPaths")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.AllowedHostPaths == nil { + r.EncodeNil() + } else { + yym55 := z.EncBinary() + _ = yym55 + if false { + } else { + z.F.EncSliceStringV(x.AllowedHostPaths, false, e) + } + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -15086,6 +15354,18 @@ func (x *PodSecurityPolicySpec) codecDecodeSelfFromMap(l int, d *codec1978.Decod *((*bool)(yyv26)) = r.DecodeBool() } } + case "allowedHostPaths": + if r.TryDecodeAsNil() { + x.AllowedHostPaths = nil + } else { + yyv28 := &x.AllowedHostPaths + yym29 := z.DecBinary() + _ = yym29 + if false { + } else { + z.F.DecSliceStringX(yyv28, false, d) + } + } default: z.DecStructFieldNotFound(-1, yys3) } // end switch yys3 @@ -15097,16 +15377,16 @@ func (x *PodSecurityPolicySpec) codecDecodeSelfFromArray(l int, d *codec1978.Dec var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj28 int - var yyb28 bool - var yyhl28 bool = l >= 0 - yyj28++ - if yyhl28 { - yyb28 = yyj28 > l + var yyj30 int + var yyb30 bool + var yyhl30 bool = l >= 0 + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb28 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb28 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -15114,21 +15394,21 @@ func (x *PodSecurityPolicySpec) codecDecodeSelfFromArray(l int, d *codec1978.Dec if r.TryDecodeAsNil() { x.Privileged = false } else { - yyv29 := &x.Privileged - yym30 := z.DecBinary() - _ = yym30 + yyv31 := &x.Privileged + yym32 := z.DecBinary() + _ = yym32 if false { } else { - *((*bool)(yyv29)) = r.DecodeBool() + *((*bool)(yyv31)) = r.DecodeBool() } } - yyj28++ - if yyhl28 { - yyb28 = yyj28 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb28 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb28 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -15136,29 +15416,7 @@ func (x *PodSecurityPolicySpec) codecDecodeSelfFromArray(l int, d *codec1978.Dec if r.TryDecodeAsNil() { x.DefaultAddCapabilities = nil } else { - yyv31 := &x.DefaultAddCapabilities - yym32 := z.DecBinary() - _ = yym32 - if false { - } else { - h.decSlicev1_Capability((*[]pkg4_v1.Capability)(yyv31), d) - } - } - yyj28++ - if yyhl28 { - yyb28 = yyj28 > l - } else { - yyb28 = r.CheckBreak() - } - if yyb28 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.RequiredDropCapabilities = nil - } else { - yyv33 := &x.RequiredDropCapabilities + yyv33 := &x.DefaultAddCapabilities yym34 := z.DecBinary() _ = yym34 if false { @@ -15166,21 +15424,21 @@ func (x *PodSecurityPolicySpec) codecDecodeSelfFromArray(l int, d *codec1978.Dec h.decSlicev1_Capability((*[]pkg4_v1.Capability)(yyv33), d) } } - yyj28++ - if yyhl28 { - yyb28 = yyj28 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb28 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb28 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } z.DecSendContainerState(codecSelfer_containerArrayElem1234) if r.TryDecodeAsNil() { - x.AllowedCapabilities = nil + x.RequiredDropCapabilities = nil } else { - yyv35 := &x.AllowedCapabilities + yyv35 := &x.RequiredDropCapabilities yym36 := z.DecBinary() _ = yym36 if false { @@ -15188,13 +15446,35 @@ func (x *PodSecurityPolicySpec) codecDecodeSelfFromArray(l int, d *codec1978.Dec h.decSlicev1_Capability((*[]pkg4_v1.Capability)(yyv35), d) } } - yyj28++ - if yyhl28 { - yyb28 = yyj28 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb28 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb28 { + if yyb30 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.AllowedCapabilities = nil + } else { + yyv37 := &x.AllowedCapabilities + yym38 := z.DecBinary() + _ = yym38 + if false { + } else { + h.decSlicev1_Capability((*[]pkg4_v1.Capability)(yyv37), d) + } + } + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l + } else { + yyb30 = r.CheckBreak() + } + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -15202,21 +15482,21 @@ func (x *PodSecurityPolicySpec) codecDecodeSelfFromArray(l int, d *codec1978.Dec if r.TryDecodeAsNil() { x.Volumes = nil } else { - yyv37 := &x.Volumes - yym38 := z.DecBinary() - _ = yym38 + yyv39 := &x.Volumes + yym40 := z.DecBinary() + _ = yym40 if false { } else { - h.decSliceFSType((*[]FSType)(yyv37), d) + h.decSliceFSType((*[]FSType)(yyv39), d) } } - yyj28++ - if yyhl28 { - yyb28 = yyj28 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb28 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb28 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -15224,21 +15504,21 @@ func (x *PodSecurityPolicySpec) codecDecodeSelfFromArray(l int, d *codec1978.Dec if r.TryDecodeAsNil() { x.HostNetwork = false } else { - yyv39 := &x.HostNetwork - yym40 := z.DecBinary() - _ = yym40 + yyv41 := &x.HostNetwork + yym42 := z.DecBinary() + _ = yym42 if false { } else { - *((*bool)(yyv39)) = r.DecodeBool() + *((*bool)(yyv41)) = r.DecodeBool() } } - yyj28++ - if yyhl28 { - yyb28 = yyj28 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb28 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb28 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -15246,21 +15526,21 @@ func (x *PodSecurityPolicySpec) codecDecodeSelfFromArray(l int, d *codec1978.Dec if r.TryDecodeAsNil() { x.HostPorts = nil } else { - yyv41 := &x.HostPorts - yym42 := z.DecBinary() - _ = yym42 + yyv43 := &x.HostPorts + yym44 := z.DecBinary() + _ = yym44 if false { } else { - h.decSliceHostPortRange((*[]HostPortRange)(yyv41), d) + h.decSliceHostPortRange((*[]HostPortRange)(yyv43), d) } } - yyj28++ - if yyhl28 { - yyb28 = yyj28 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb28 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb28 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -15268,29 +15548,7 @@ func (x *PodSecurityPolicySpec) codecDecodeSelfFromArray(l int, d *codec1978.Dec if r.TryDecodeAsNil() { x.HostPID = false } else { - yyv43 := &x.HostPID - yym44 := z.DecBinary() - _ = yym44 - if false { - } else { - *((*bool)(yyv43)) = r.DecodeBool() - } - } - yyj28++ - if yyhl28 { - yyb28 = yyj28 > l - } else { - yyb28 = r.CheckBreak() - } - if yyb28 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.HostIPC = false - } else { - yyv45 := &x.HostIPC + yyv45 := &x.HostPID yym46 := z.DecBinary() _ = yym46 if false { @@ -15298,13 +15556,35 @@ func (x *PodSecurityPolicySpec) codecDecodeSelfFromArray(l int, d *codec1978.Dec *((*bool)(yyv45)) = r.DecodeBool() } } - yyj28++ - if yyhl28 { - yyb28 = yyj28 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb28 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb28 { + if yyb30 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.HostIPC = false + } else { + yyv47 := &x.HostIPC + yym48 := z.DecBinary() + _ = yym48 + if false { + } else { + *((*bool)(yyv47)) = r.DecodeBool() + } + } + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l + } else { + yyb30 = r.CheckBreak() + } + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -15312,16 +15592,16 @@ func (x *PodSecurityPolicySpec) codecDecodeSelfFromArray(l int, d *codec1978.Dec if r.TryDecodeAsNil() { x.SELinux = SELinuxStrategyOptions{} } else { - yyv47 := &x.SELinux - yyv47.CodecDecodeSelf(d) + yyv49 := &x.SELinux + yyv49.CodecDecodeSelf(d) } - yyj28++ - if yyhl28 { - yyb28 = yyj28 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb28 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb28 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -15329,16 +15609,16 @@ func (x *PodSecurityPolicySpec) codecDecodeSelfFromArray(l int, d *codec1978.Dec if r.TryDecodeAsNil() { x.RunAsUser = RunAsUserStrategyOptions{} } else { - yyv48 := &x.RunAsUser - yyv48.CodecDecodeSelf(d) + yyv50 := &x.RunAsUser + yyv50.CodecDecodeSelf(d) } - yyj28++ - if yyhl28 { - yyb28 = yyj28 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb28 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb28 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -15346,16 +15626,16 @@ func (x *PodSecurityPolicySpec) codecDecodeSelfFromArray(l int, d *codec1978.Dec if r.TryDecodeAsNil() { x.SupplementalGroups = SupplementalGroupsStrategyOptions{} } else { - yyv49 := &x.SupplementalGroups - yyv49.CodecDecodeSelf(d) + yyv51 := &x.SupplementalGroups + yyv51.CodecDecodeSelf(d) } - yyj28++ - if yyhl28 { - yyb28 = yyj28 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb28 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb28 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -15363,16 +15643,16 @@ func (x *PodSecurityPolicySpec) codecDecodeSelfFromArray(l int, d *codec1978.Dec if r.TryDecodeAsNil() { x.FSGroup = FSGroupStrategyOptions{} } else { - yyv50 := &x.FSGroup - yyv50.CodecDecodeSelf(d) + yyv52 := &x.FSGroup + yyv52.CodecDecodeSelf(d) } - yyj28++ - if yyhl28 { - yyb28 = yyj28 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb28 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb28 { + if yyb30 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -15380,26 +15660,48 @@ func (x *PodSecurityPolicySpec) codecDecodeSelfFromArray(l int, d *codec1978.Dec if r.TryDecodeAsNil() { x.ReadOnlyRootFilesystem = false } else { - yyv51 := &x.ReadOnlyRootFilesystem - yym52 := z.DecBinary() - _ = yym52 + yyv53 := &x.ReadOnlyRootFilesystem + yym54 := z.DecBinary() + _ = yym54 if false { } else { - *((*bool)(yyv51)) = r.DecodeBool() + *((*bool)(yyv53)) = r.DecodeBool() + } + } + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l + } else { + yyb30 = r.CheckBreak() + } + if yyb30 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.AllowedHostPaths = nil + } else { + yyv55 := &x.AllowedHostPaths + yym56 := z.DecBinary() + _ = yym56 + if false { + } else { + z.F.DecSliceStringX(yyv55, false, d) } } for { - yyj28++ - if yyhl28 { - yyb28 = yyj28 > l + yyj30++ + if yyhl30 { + yyb30 = yyj30 > l } else { - yyb28 = r.CheckBreak() + yyb30 = r.CheckBreak() } - if yyb28 { + if yyb30 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj28-1, "") + z.DecStructFieldNotFound(yyj30-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -19652,7 +19954,7 @@ func (x codecSelfer1234) decSliceDeployment(v *[]Deployment, d *codec1978.Decode yyrg1 := len(yyv1) > 0 yyv21 := yyv1 - yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 960) + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 968) if yyrt1 { if yyrl1 <= cap(yyv1) { yyv1 = yyv1[:yyrl1] @@ -19771,7 +20073,7 @@ func (x codecSelfer1234) decSliceDaemonSet(v *[]DaemonSet, d *codec1978.Decoder) yyrg1 := len(yyv1) > 0 yyv21 := yyv1 - yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 912) + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 928) if yyrt1 { if yyrl1 <= cap(yyv1) { yyv1 = yyv1[:yyrl1] @@ -21188,7 +21490,7 @@ func (x codecSelfer1234) decSlicePodSecurityPolicy(v *[]PodSecurityPolicy, d *co yyrg1 := len(yyv1) > 0 yyv21 := yyv1 - yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 560) + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 584) if yyrt1 { if yyrl1 <= cap(yyv1) { yyv1 = yyv1[:yyrl1] diff --git a/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/types.go b/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/types.go index 17838877..5008e63d 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/types.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/types.go @@ -21,6 +21,7 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/util/intstr" "k8s.io/kubernetes/pkg/api/v1" + appsv1beta1 "k8s.io/kubernetes/pkg/apis/apps/v1beta1" ) // describes the attributes of a scale subresource @@ -55,15 +56,15 @@ type ScaleStatus struct { // represents a scaling request for a resource. type Scale struct { metav1.TypeMeta `json:",inline"` - // Standard object metadata; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata. + // Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata. // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` - // defines the behavior of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. + // defines the behavior of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. // +optional Spec ScaleSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` - // current status of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. Read-only. + // current status of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. Read-only. // +optional Status ScaleStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } @@ -228,7 +229,7 @@ type DeploymentRollback struct { } type RollbackConfig struct { - // The revision to rollback to. If set to 0, rollbck to the last revision. + // The revision to rollback to. If set to 0, rollback to the last revision. // +optional Revision int64 `json:"revision,omitempty" protobuf:"varint,1,opt,name=revision"` } @@ -325,6 +326,12 @@ type DeploymentStatus struct { // +patchMergeKey=type // +patchStrategy=merge Conditions []DeploymentCondition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,6,rep,name=conditions"` + + // Count of hash collisions for the Deployment. The Deployment controller uses this + // field as a collision avoidance mechanism when it needs to create the name for the + // newest ReplicaSet. + // +optional + CollisionCount *int64 `json:"collisionCount,omitempty" protobuf:"varint,8,opt,name=collisionCount"` } type DeploymentConditionType string @@ -380,7 +387,7 @@ type DaemonSetUpdateStrategy struct { // Rolling update config params. Present only if type = "RollingUpdate". //--- // TODO: Update this to follow our convention for oneOf, whatever we decide it - // to be. Same as DeploymentStrategy.RollingUpdate. + // to be. Same as Deployment `strategy.rollingUpdate`. // See https://github.com/kubernetes/kubernetes/issues/35345 // +optional RollingUpdate *RollingUpdateDaemonSet `json:"rollingUpdate,omitempty" protobuf:"bytes,2,opt,name=rollingUpdate"` @@ -443,10 +450,17 @@ type DaemonSetSpec struct { // +optional MinReadySeconds int32 `json:"minReadySeconds,omitempty" protobuf:"varint,4,opt,name=minReadySeconds"` + // DEPRECATED. // A sequence number representing a specific generation of the template. // Populated by the system. It can be set only during the creation. // +optional TemplateGeneration int64 `json:"templateGeneration,omitempty" protobuf:"varint,5,opt,name=templateGeneration"` + + // The number of old history to retain to allow rollback. + // This is a pointer to distinguish between explicit zero and not specified. + // Defaults to 10. + // +optional + RevisionHistoryLimit *int32 `json:"revisionHistoryLimit,omitempty" protobuf:"varint,6,opt,name=revisionHistoryLimit"` } // DaemonSetStatus represents the current status of a daemon set. @@ -489,6 +503,12 @@ type DaemonSetStatus struct { // (ready for at least spec.minReadySeconds) // +optional NumberUnavailable int32 `json:"numberUnavailable,omitempty" protobuf:"varint,8,opt,name=numberUnavailable"` + + // Count of hash collisions for the DaemonSet. The DaemonSet controller + // uses this field as a collision avoidance mechanism when it needs to + // create the name for the newest ControllerRevision. + // +optional + CollisionCount *int64 `json:"collisionCount,omitempty" protobuf:"varint,9,opt,name=collisionCount"` } // +genclient=true @@ -497,12 +517,12 @@ type DaemonSetStatus struct { type DaemonSet struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // The desired behavior of this daemon set. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec DaemonSetSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` @@ -510,23 +530,29 @@ type DaemonSet struct { // out of date by some window of time. // Populated by the system. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status DaemonSetStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } const ( + // DEPRECATED: DefaultDaemonSetUniqueLabelKey is used instead. // DaemonSetTemplateGenerationKey is the key of the labels that is added // to daemon set pods to distinguish between old and new pod templates // during DaemonSet template update. DaemonSetTemplateGenerationKey string = "pod-template-generation" + + // DefaultDaemonSetUniqueLabelKey is the default label key that is added + // to existing DaemonSet pods to distinguish between old and new + // DaemonSet pods during DaemonSet template updates. + DefaultDaemonSetUniqueLabelKey = appsv1beta1.ControllerRevisionHashLabelKey ) // DaemonSetList is a collection of daemon sets. type DaemonSetList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -538,7 +564,7 @@ type DaemonSetList struct { type ThirdPartyResourceDataList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -555,17 +581,17 @@ type ThirdPartyResourceDataList struct { type Ingress struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Spec is the desired state of the Ingress. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec IngressSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` // Status is the current state of the Ingress. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status IngressStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } @@ -574,7 +600,7 @@ type Ingress struct { type IngressList struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -720,12 +746,12 @@ type ReplicaSet struct { // If the Labels of a ReplicaSet are empty, they are defaulted to // be the same as the Pod(s) that the ReplicaSet manages. - // Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata + // Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Spec defines the specification of the desired behavior of the ReplicaSet. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Spec ReplicaSetSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` @@ -733,7 +759,7 @@ type ReplicaSet struct { // This data may be out of date by some window of time. // Populated by the system. // Read-only. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status ReplicaSetStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"` } @@ -742,7 +768,7 @@ type ReplicaSet struct { type ReplicaSetList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -844,7 +870,7 @@ type ReplicaSetCondition struct { type PodSecurityPolicy struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -903,6 +929,10 @@ type PodSecurityPolicySpec struct { // will not be forced to. // +optional ReadOnlyRootFilesystem bool `json:"readOnlyRootFilesystem,omitempty" protobuf:"varint,14,opt,name=readOnlyRootFilesystem"` + // AllowedHostPaths is a white list of allowed host path prefixes. Empty indicates that all + // host paths may be used. + // +optional + AllowedHostPaths []string `json:"allowedHostPaths,omitempty" protobuf:"bytes,15,opt,name=allowedHostPaths"` } // FS Type gives strong typing to different file systems that are used by volumes. @@ -947,7 +977,7 @@ type SELinuxStrategyOptions struct { // type is the strategy that will dictate the allowable labels that may be set. Rule SELinuxStrategy `json:"rule" protobuf:"bytes,1,opt,name=rule,casttype=SELinuxStrategy"` // seLinuxOptions required to run as; required for MustRunAs - // More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/security_context.md + // More info: https://git.k8s.io/community/contributors/design-proposals/security_context.md // +optional SELinuxOptions *v1.SELinuxOptions `json:"seLinuxOptions,omitempty" protobuf:"bytes,2,opt,name=seLinuxOptions"` } @@ -1041,7 +1071,7 @@ const ( type PodSecurityPolicyList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -1049,10 +1079,11 @@ type PodSecurityPolicyList struct { Items []PodSecurityPolicy `json:"items" protobuf:"bytes,2,rep,name=items"` } +// NetworkPolicy describes what network traffic is allowed for a set of Pods type NetworkPolicy struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -1070,13 +1101,12 @@ type NetworkPolicySpec struct { PodSelector metav1.LabelSelector `json:"podSelector" protobuf:"bytes,1,opt,name=podSelector"` // List of ingress rules to be applied to the selected pods. - // Traffic is allowed to a pod if namespace.networkPolicy.ingress.isolation is undefined and cluster policy allows it, + // Traffic is allowed to a pod if there are no NetworkPolicies selecting the pod // OR if the traffic source is the pod's local node, // OR if the traffic matches at least one ingress rule across all of the NetworkPolicy // objects whose podSelector matches the pod. - // If this field is empty then this NetworkPolicy does not affect ingress isolation. - // If this field is present and contains at least one rule, this policy allows any traffic - // which matches at least one of the ingress rules in this list. + // If this field is empty then this NetworkPolicy does not allow any traffic + // (and serves solely to ensure that the pods it selects are isolated by default). // +optional Ingress []NetworkPolicyIngressRule `json:"ingress,omitempty" protobuf:"bytes,2,rep,name=ingress"` } @@ -1136,7 +1166,7 @@ type NetworkPolicyPeer struct { type NetworkPolicyList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` diff --git a/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/types_swagger_doc_generated.go b/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/types_swagger_doc_generated.go index 9e9a03ff..cc362674 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/types_swagger_doc_generated.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/types_swagger_doc_generated.go @@ -57,9 +57,9 @@ func (CustomMetricTarget) SwaggerDoc() map[string]string { var map_DaemonSet = map[string]string{ "": "DaemonSet represents the configuration of a daemon set.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "spec": "The desired behavior of this daemon set. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", - "status": "The current status of this daemon set. This data may be out of date by some window of time. Populated by the system. Read-only. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "The desired behavior of this daemon set. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", + "status": "The current status of this daemon set. This data may be out of date by some window of time. Populated by the system. Read-only. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (DaemonSet) SwaggerDoc() map[string]string { @@ -68,7 +68,7 @@ func (DaemonSet) SwaggerDoc() map[string]string { var map_DaemonSetList = map[string]string{ "": "DaemonSetList is a collection of daemon sets.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "items": "A list of daemon sets.", } @@ -77,12 +77,13 @@ func (DaemonSetList) SwaggerDoc() map[string]string { } var map_DaemonSetSpec = map[string]string{ - "": "DaemonSetSpec is the specification of a daemon set.", - "selector": "A label query over pods that are managed by the daemon set. Must match in order to be controlled. If empty, defaulted to labels on Pod template. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors", - "template": "An object that describes the pod that will be created. The DaemonSet will create exactly one copy of this pod on every node that matches the template's node selector (or on every node if no node selector is specified). More info: https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller#pod-template", - "updateStrategy": "An update strategy to replace existing DaemonSet pods with new pods.", - "minReadySeconds": "The minimum number of seconds for which a newly created DaemonSet pod should be ready without any of its container crashing, for it to be considered available. Defaults to 0 (pod will be considered available as soon as it is ready).", - "templateGeneration": "A sequence number representing a specific generation of the template. Populated by the system. It can be set only during the creation.", + "": "DaemonSetSpec is the specification of a daemon set.", + "selector": "A label query over pods that are managed by the daemon set. Must match in order to be controlled. If empty, defaulted to labels on Pod template. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors", + "template": "An object that describes the pod that will be created. The DaemonSet will create exactly one copy of this pod on every node that matches the template's node selector (or on every node if no node selector is specified). More info: https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller#pod-template", + "updateStrategy": "An update strategy to replace existing DaemonSet pods with new pods.", + "minReadySeconds": "The minimum number of seconds for which a newly created DaemonSet pod should be ready without any of its container crashing, for it to be considered available. Defaults to 0 (pod will be considered available as soon as it is ready).", + "templateGeneration": "DEPRECATED. A sequence number representing a specific generation of the template. Populated by the system. It can be set only during the creation.", + "revisionHistoryLimit": "The number of old history to retain to allow rollback. This is a pointer to distinguish between explicit zero and not specified. Defaults to 10.", } func (DaemonSetSpec) SwaggerDoc() map[string]string { @@ -99,6 +100,7 @@ var map_DaemonSetStatus = map[string]string{ "updatedNumberScheduled": "The total number of nodes that are running updated daemon pod", "numberAvailable": "The number of nodes that should be running the daemon pod and have one or more of the daemon pod running and available (ready for at least spec.minReadySeconds)", "numberUnavailable": "The number of nodes that should be running the daemon pod and have none of the daemon pod running and available (ready for at least spec.minReadySeconds)", + "collisionCount": "Count of hash collisions for the DaemonSet. The DaemonSet controller uses this field as a collision avoidance mechanism when it needs to create the name for the newest ControllerRevision.", } func (DaemonSetStatus) SwaggerDoc() map[string]string { @@ -186,6 +188,7 @@ var map_DeploymentStatus = map[string]string{ "availableReplicas": "Total number of available pods (ready for at least minReadySeconds) targeted by this deployment.", "unavailableReplicas": "Total number of unavailable pods targeted by this deployment.", "conditions": "Represents the latest available observations of a deployment's current state.", + "collisionCount": "Count of hash collisions for the Deployment. The Deployment controller uses this field as a collision avoidance mechanism when it needs to create the name for the newest ReplicaSet.", } func (DeploymentStatus) SwaggerDoc() map[string]string { @@ -253,9 +256,9 @@ func (IDRange) SwaggerDoc() map[string]string { var map_Ingress = map[string]string{ "": "Ingress is a collection of rules that allow inbound connections to reach the endpoints defined by a backend. An Ingress can be configured to give services externally-reachable urls, load balance traffic, terminate SSL, offer name based virtual hosting etc.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", - "spec": "Spec is the desired state of the Ingress. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", - "status": "Status is the current state of the Ingress. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "Spec is the desired state of the Ingress. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", + "status": "Status is the current state of the Ingress. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (Ingress) SwaggerDoc() map[string]string { @@ -274,7 +277,7 @@ func (IngressBackend) SwaggerDoc() map[string]string { var map_IngressList = map[string]string{ "": "IngressList is a collection of Ingress.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "items": "Items is the list of Ingress.", } @@ -330,7 +333,8 @@ func (IngressTLS) SwaggerDoc() map[string]string { } var map_NetworkPolicy = map[string]string{ - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "": "NetworkPolicy describes what network traffic is allowed for a set of Pods", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "spec": "Specification of the desired behavior for this NetworkPolicy.", } @@ -350,7 +354,7 @@ func (NetworkPolicyIngressRule) SwaggerDoc() map[string]string { var map_NetworkPolicyList = map[string]string{ "": "Network Policy List is a list of NetworkPolicy objects.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "items": "Items is a list of schema objects.", } @@ -378,7 +382,7 @@ func (NetworkPolicyPort) SwaggerDoc() map[string]string { var map_NetworkPolicySpec = map[string]string{ "podSelector": "Selects the pods to which this NetworkPolicy object applies. The array of ingress rules is applied to any pods selected by this field. Multiple network policies can select the same set of pods. In this case, the ingress rules for each are combined additively. This field is NOT optional and follows standard label selector semantics. An empty podSelector matches all pods in this namespace.", - "ingress": "List of ingress rules to be applied to the selected pods. Traffic is allowed to a pod if namespace.networkPolicy.ingress.isolation is undefined and cluster policy allows it, OR if the traffic source is the pod's local node, OR if the traffic matches at least one ingress rule across all of the NetworkPolicy objects whose podSelector matches the pod. If this field is empty then this NetworkPolicy does not affect ingress isolation. If this field is present and contains at least one rule, this policy allows any traffic which matches at least one of the ingress rules in this list.", + "ingress": "List of ingress rules to be applied to the selected pods. Traffic is allowed to a pod if there are no NetworkPolicies selecting the pod OR if the traffic source is the pod's local node, OR if the traffic matches at least one ingress rule across all of the NetworkPolicy objects whose podSelector matches the pod. If this field is empty then this NetworkPolicy does not allow any traffic (and serves solely to ensure that the pods it selects are isolated by default).", } func (NetworkPolicySpec) SwaggerDoc() map[string]string { @@ -387,7 +391,7 @@ func (NetworkPolicySpec) SwaggerDoc() map[string]string { var map_PodSecurityPolicy = map[string]string{ "": "Pod Security Policy governs the ability to make requests that affect the Security Context that will be applied to a pod and container.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "spec": "spec defines the policy enforced.", } @@ -397,7 +401,7 @@ func (PodSecurityPolicy) SwaggerDoc() map[string]string { var map_PodSecurityPolicyList = map[string]string{ "": "Pod Security Policy List is a list of PodSecurityPolicy objects.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "items": "Items is a list of schema objects.", } @@ -421,6 +425,7 @@ var map_PodSecurityPolicySpec = map[string]string{ "supplementalGroups": "SupplementalGroups is the strategy that will dictate what supplemental groups are used by the SecurityContext.", "fsGroup": "FSGroup is the strategy that will dictate what fs group is used by the SecurityContext.", "readOnlyRootFilesystem": "ReadOnlyRootFilesystem when set to true will force containers to run with a read only root file system. If the container specifically requests to run with a non-read only root file system the PSP should deny the pod. If set to false the container may run with a read only root file system if it wishes but it will not be forced to.", + "allowedHostPaths": "AllowedHostPaths is a white list of allowed host path prefixes. Empty indicates that all host paths may be used.", } func (PodSecurityPolicySpec) SwaggerDoc() map[string]string { @@ -429,9 +434,9 @@ func (PodSecurityPolicySpec) SwaggerDoc() map[string]string { var map_ReplicaSet = map[string]string{ "": "ReplicaSet represents the configuration of a ReplicaSet.", - "metadata": "If the Labels of a ReplicaSet are empty, they are defaulted to be the same as the Pod(s) that the ReplicaSet manages. Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", - "spec": "Spec defines the specification of the desired behavior of the ReplicaSet. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", - "status": "Status is the most recently observed status of the ReplicaSet. This data may be out of date by some window of time. Populated by the system. Read-only. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#spec-and-status", + "metadata": "If the Labels of a ReplicaSet are empty, they are defaulted to be the same as the Pod(s) that the ReplicaSet manages. Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "Spec defines the specification of the desired behavior of the ReplicaSet. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", + "status": "Status is the most recently observed status of the ReplicaSet. This data may be out of date by some window of time. Populated by the system. Read-only. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status", } func (ReplicaSet) SwaggerDoc() map[string]string { @@ -453,7 +458,7 @@ func (ReplicaSetCondition) SwaggerDoc() map[string]string { var map_ReplicaSetList = map[string]string{ "": "ReplicaSetList is a collection of ReplicaSets.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#types-kinds", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds", "items": "List of ReplicaSets. More info: https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller", } @@ -496,7 +501,7 @@ func (ReplicationControllerDummy) SwaggerDoc() map[string]string { } var map_RollbackConfig = map[string]string{ - "revision": "The revision to rollback to. If set to 0, rollbck to the last revision.", + "revision": "The revision to rollback to. If set to 0, rollback to the last revision.", } func (RollbackConfig) SwaggerDoc() map[string]string { @@ -535,7 +540,7 @@ func (RunAsUserStrategyOptions) SwaggerDoc() map[string]string { var map_SELinuxStrategyOptions = map[string]string{ "": "SELinux Strategy Options defines the strategy type and any options used to create the strategy.", "rule": "type is the strategy that will dictate the allowable labels that may be set.", - "seLinuxOptions": "seLinuxOptions required to run as; required for MustRunAs More info: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/security_context.md", + "seLinuxOptions": "seLinuxOptions required to run as; required for MustRunAs More info: https://git.k8s.io/community/contributors/design-proposals/security_context.md", } func (SELinuxStrategyOptions) SwaggerDoc() map[string]string { @@ -544,9 +549,9 @@ func (SELinuxStrategyOptions) SwaggerDoc() map[string]string { var map_Scale = map[string]string{ "": "represents a scaling request for a resource.", - "metadata": "Standard object metadata; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata.", - "spec": "defines the behavior of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status.", - "status": "current status of the scale. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#spec-and-status. Read-only.", + "metadata": "Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata.", + "spec": "defines the behavior of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status.", + "status": "current status of the scale. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status. Read-only.", } func (Scale) SwaggerDoc() map[string]string { @@ -606,7 +611,7 @@ func (ThirdPartyResourceData) SwaggerDoc() map[string]string { var map_ThirdPartyResourceDataList = map[string]string{ "": "ThirdPartyResrouceDataList is a list of ThirdPartyResourceData.", - "metadata": "Standard list metadata More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard list metadata More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "items": "Items is the list of ThirdpartyResourceData.", } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/zz_generated.conversion.go b/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/zz_generated.conversion.go index f2032b2c..403f14f0 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/zz_generated.conversion.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/zz_generated.conversion.go @@ -352,6 +352,7 @@ func autoConvert_v1beta1_DaemonSetSpec_To_extensions_DaemonSetSpec(in *DaemonSet } out.MinReadySeconds = in.MinReadySeconds out.TemplateGeneration = in.TemplateGeneration + out.RevisionHistoryLimit = (*int32)(unsafe.Pointer(in.RevisionHistoryLimit)) return nil } @@ -370,6 +371,7 @@ func autoConvert_extensions_DaemonSetSpec_To_v1beta1_DaemonSetSpec(in *extension } out.MinReadySeconds = in.MinReadySeconds out.TemplateGeneration = in.TemplateGeneration + out.RevisionHistoryLimit = (*int32)(unsafe.Pointer(in.RevisionHistoryLimit)) return nil } @@ -387,6 +389,7 @@ func autoConvert_v1beta1_DaemonSetStatus_To_extensions_DaemonSetStatus(in *Daemo out.UpdatedNumberScheduled = in.UpdatedNumberScheduled out.NumberAvailable = in.NumberAvailable out.NumberUnavailable = in.NumberUnavailable + out.CollisionCount = (*int64)(unsafe.Pointer(in.CollisionCount)) return nil } @@ -404,6 +407,7 @@ func autoConvert_extensions_DaemonSetStatus_To_v1beta1_DaemonSetStatus(in *exten out.UpdatedNumberScheduled = in.UpdatedNumberScheduled out.NumberAvailable = in.NumberAvailable out.NumberUnavailable = in.NumberUnavailable + out.CollisionCount = (*int64)(unsafe.Pointer(in.CollisionCount)) return nil } @@ -628,6 +632,7 @@ func autoConvert_v1beta1_DeploymentStatus_To_extensions_DeploymentStatus(in *Dep out.AvailableReplicas = in.AvailableReplicas out.UnavailableReplicas = in.UnavailableReplicas out.Conditions = *(*[]extensions.DeploymentCondition)(unsafe.Pointer(&in.Conditions)) + out.CollisionCount = (*int64)(unsafe.Pointer(in.CollisionCount)) return nil } @@ -644,6 +649,7 @@ func autoConvert_extensions_DeploymentStatus_To_v1beta1_DeploymentStatus(in *ext out.AvailableReplicas = in.AvailableReplicas out.UnavailableReplicas = in.UnavailableReplicas out.Conditions = *(*[]DeploymentCondition)(unsafe.Pointer(&in.Conditions)) + out.CollisionCount = (*int64)(unsafe.Pointer(in.CollisionCount)) return nil } @@ -1213,6 +1219,7 @@ func autoConvert_v1beta1_PodSecurityPolicySpec_To_extensions_PodSecurityPolicySp return err } out.ReadOnlyRootFilesystem = in.ReadOnlyRootFilesystem + out.AllowedHostPaths = *(*[]string)(unsafe.Pointer(&in.AllowedHostPaths)) return nil } @@ -1254,6 +1261,7 @@ func autoConvert_extensions_PodSecurityPolicySpec_To_v1beta1_PodSecurityPolicySp return err } out.ReadOnlyRootFilesystem = in.ReadOnlyRootFilesystem + out.AllowedHostPaths = *(*[]string)(unsafe.Pointer(&in.AllowedHostPaths)) return nil } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/zz_generated.deepcopy.go index a386e3da..3c845f5c 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/zz_generated.deepcopy.go @@ -182,6 +182,9 @@ func DeepCopy_v1beta1_DaemonSet(in interface{}, out interface{}, c *conversion.C if err := DeepCopy_v1beta1_DaemonSetSpec(&in.Spec, &out.Spec, c); err != nil { return err } + if err := DeepCopy_v1beta1_DaemonSetStatus(&in.Status, &out.Status, c); err != nil { + return err + } return nil } } @@ -225,6 +228,11 @@ func DeepCopy_v1beta1_DaemonSetSpec(in interface{}, out interface{}, c *conversi if err := DeepCopy_v1beta1_DaemonSetUpdateStrategy(&in.UpdateStrategy, &out.UpdateStrategy, c); err != nil { return err } + if in.RevisionHistoryLimit != nil { + in, out := &in.RevisionHistoryLimit, &out.RevisionHistoryLimit + *out = new(int32) + **out = **in + } return nil } } @@ -235,6 +243,11 @@ func DeepCopy_v1beta1_DaemonSetStatus(in interface{}, out interface{}, c *conver in := in.(*DaemonSetStatus) out := out.(*DaemonSetStatus) *out = *in + if in.CollisionCount != nil { + in, out := &in.CollisionCount, &out.CollisionCount + *out = new(int64) + **out = **in + } return nil } } @@ -384,6 +397,11 @@ func DeepCopy_v1beta1_DeploymentStatus(in interface{}, out interface{}, c *conve } } } + if in.CollisionCount != nil { + in, out := &in.CollisionCount, &out.CollisionCount + *out = new(int64) + **out = **in + } return nil } } @@ -821,6 +839,11 @@ func DeepCopy_v1beta1_PodSecurityPolicySpec(in interface{}, out interface{}, c * if err := DeepCopy_v1beta1_FSGroupStrategyOptions(&in.FSGroup, &out.FSGroup, c); err != nil { return err } + if in.AllowedHostPaths != nil { + in, out := &in.AllowedHostPaths, &out.AllowedHostPaths + *out = make([]string, len(*in)) + copy(*out, *in) + } return nil } } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/extensions/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/extensions/zz_generated.deepcopy.go index 866c908c..97c61d53 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/extensions/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/extensions/zz_generated.deepcopy.go @@ -183,6 +183,9 @@ func DeepCopy_extensions_DaemonSet(in interface{}, out interface{}, c *conversio if err := DeepCopy_extensions_DaemonSetSpec(&in.Spec, &out.Spec, c); err != nil { return err } + if err := DeepCopy_extensions_DaemonSetStatus(&in.Status, &out.Status, c); err != nil { + return err + } return nil } } @@ -226,6 +229,11 @@ func DeepCopy_extensions_DaemonSetSpec(in interface{}, out interface{}, c *conve if err := DeepCopy_extensions_DaemonSetUpdateStrategy(&in.UpdateStrategy, &out.UpdateStrategy, c); err != nil { return err } + if in.RevisionHistoryLimit != nil { + in, out := &in.RevisionHistoryLimit, &out.RevisionHistoryLimit + *out = new(int32) + **out = **in + } return nil } } @@ -236,6 +244,11 @@ func DeepCopy_extensions_DaemonSetStatus(in interface{}, out interface{}, c *con in := in.(*DaemonSetStatus) out := out.(*DaemonSetStatus) *out = *in + if in.CollisionCount != nil { + in, out := &in.CollisionCount, &out.CollisionCount + *out = new(int64) + **out = **in + } return nil } } @@ -378,6 +391,11 @@ func DeepCopy_extensions_DeploymentStatus(in interface{}, out interface{}, c *co } } } + if in.CollisionCount != nil { + in, out := &in.CollisionCount, &out.CollisionCount + *out = new(int64) + **out = **in + } return nil } } @@ -813,6 +831,11 @@ func DeepCopy_extensions_PodSecurityPolicySpec(in interface{}, out interface{}, if err := DeepCopy_extensions_FSGroupStrategyOptions(&in.FSGroup, &out.FSGroup, c); err != nil { return err } + if in.AllowedHostPaths != nil { + in, out := &in.AllowedHostPaths, &out.AllowedHostPaths + *out = make([]string, len(*in)) + copy(*out, *in) + } return nil } } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/networking/doc.go b/vendor/k8s.io/kubernetes/pkg/apis/networking/doc.go new file mode 100644 index 00000000..b583051c --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/apis/networking/doc.go @@ -0,0 +1,19 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// +k8s:deepcopy-gen=package,register +// +groupName=networking.k8s.io +package networking // import "k8s.io/kubernetes/pkg/apis/networking" diff --git a/vendor/k8s.io/kubernetes/pkg/apis/networking/register.go b/vendor/k8s.io/kubernetes/pkg/apis/networking/register.go new file mode 100644 index 00000000..4d58a210 --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/apis/networking/register.go @@ -0,0 +1,51 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package networking + +import ( + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/apimachinery/pkg/runtime/schema" +) + +// GroupName is the group name use in this package +const GroupName = "networking.k8s.io" + +// SchemeGroupVersion is group version used to register these objects +var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: runtime.APIVersionInternal} + +// Kind takes an unqualified kind and returns a Group qualified GroupKind +func Kind(kind string) schema.GroupKind { + return SchemeGroupVersion.WithKind(kind).GroupKind() +} + +// Resource takes an unqualified resource and returns a Group qualified GroupResource +func Resource(resource string) schema.GroupResource { + return SchemeGroupVersion.WithResource(resource).GroupResource() +} + +var ( + SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) + AddToScheme = SchemeBuilder.AddToScheme +) + +func addKnownTypes(scheme *runtime.Scheme) error { + scheme.AddKnownTypes(SchemeGroupVersion, + &NetworkPolicy{}, + &NetworkPolicyList{}, + ) + return nil +} diff --git a/vendor/k8s.io/kubernetes/pkg/apis/networking/types.go b/vendor/k8s.io/kubernetes/pkg/apis/networking/types.go new file mode 100644 index 00000000..f889543e --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/apis/networking/types.go @@ -0,0 +1,115 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package networking + +import ( + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/util/intstr" + "k8s.io/kubernetes/pkg/api" +) + +// +genclient=true + +// NetworkPolicy describes what network traffic is allowed for a set of Pods +type NetworkPolicy struct { + metav1.TypeMeta + // +optional + metav1.ObjectMeta + + // Specification of the desired behavior for this NetworkPolicy. + // +optional + Spec NetworkPolicySpec +} + +// NetworkPolicySpec provides the specification of a NetworkPolicy +type NetworkPolicySpec struct { + // Selects the pods to which this NetworkPolicy object applies. The array of + // ingress rules is applied to any pods selected by this field. Multiple network + // policies can select the same set of pods. In this case, the ingress rules for + // each are combined additively. This field is NOT optional and follows standard + // label selector semantics. An empty podSelector matches all pods in this + // namespace. + PodSelector metav1.LabelSelector + + // List of ingress rules to be applied to the selected pods. Traffic is allowed to + // a pod if there are no NetworkPolicies selecting the pod + // (and cluster policy otherwise allows the traffic), OR if the traffic source is + // the pod's local node, OR if the traffic matches at least one ingress rule + // across all of the NetworkPolicy objects whose podSelector matches the pod. If + // this field is empty then this NetworkPolicy does not allow any traffic (and serves + // solely to ensure that the pods it selects are isolated by default) + // +optional + Ingress []NetworkPolicyIngressRule +} + +// NetworkPolicyIngressRule describes a particular set of traffic that is allowed to the pods +// matched by a NetworkPolicySpec's podSelector. The traffic must match both ports and from. +type NetworkPolicyIngressRule struct { + // List of ports which should be made accessible on the pods selected for this + // rule. Each item in this list is combined using a logical OR. If this field is + // empty or missing, this rule matches all ports (traffic not restricted by port). + // If this field is present and contains at least one item, then this rule allows + // traffic only if the traffic matches at least one port in the list. + // +optional + Ports []NetworkPolicyPort + + // List of sources which should be able to access the pods selected for this rule. + // Items in this list are combined using a logical OR operation. If this field is + // empty or missing, this rule matches all sources (traffic not restricted by + // source). If this field is present and contains at least on item, this rule + // allows traffic only if the traffic matches at least one item in the from list. + // +optional + From []NetworkPolicyPeer +} + +// NetworkPolicyPort describes a port to allow traffic on +type NetworkPolicyPort struct { + // The protocol (TCP or UDP) which traffic must match. If not specified, this + // field defaults to TCP. + // +optional + Protocol *api.Protocol + + // The port on the given protocol. This can either be a numerical or named port on + // a pod. If this field is not provided, this matches all port names and numbers. + // +optional + Port *intstr.IntOrString +} + +// NetworkPolicyPeer describes a peer to allow traffic from. Exactly one of its fields +// must be specified. +type NetworkPolicyPeer struct { + // This is a label selector which selects Pods in this namespace. This field + // follows standard label selector semantics. If present but empty, this selector + // selects all pods in this namespace. + // +optional + PodSelector *metav1.LabelSelector + + // Selects Namespaces using cluster scoped-labels. This matches all pods in all + // namespaces selected by this label selector. This field follows standard label + // selector semantics. If present but empty, this selector selects all namespaces. + // +optional + NamespaceSelector *metav1.LabelSelector +} + +// NetworkPolicyList is a list of NetworkPolicy objects. +type NetworkPolicyList struct { + metav1.TypeMeta + // +optional + metav1.ListMeta + + Items []NetworkPolicy +} diff --git a/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/conversion.go b/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/conversion.go new file mode 100644 index 00000000..b6d1a36d --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/conversion.go @@ -0,0 +1,195 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +import ( + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/conversion" + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/kubernetes/pkg/api" + "k8s.io/kubernetes/pkg/api/v1" + "k8s.io/kubernetes/pkg/apis/extensions" +) + +func addConversionFuncs(scheme *runtime.Scheme) error { + return scheme.AddConversionFuncs( + Convert_v1_NetworkPolicy_To_extensions_NetworkPolicy, + Convert_extensions_NetworkPolicy_To_v1_NetworkPolicy, + Convert_v1_NetworkPolicyIngressRule_To_extensions_NetworkPolicyIngressRule, + Convert_extensions_NetworkPolicyIngressRule_To_v1_NetworkPolicyIngressRule, + Convert_v1_NetworkPolicyList_To_extensions_NetworkPolicyList, + Convert_extensions_NetworkPolicyList_To_v1_NetworkPolicyList, + Convert_v1_NetworkPolicyPeer_To_extensions_NetworkPolicyPeer, + Convert_extensions_NetworkPolicyPeer_To_v1_NetworkPolicyPeer, + Convert_v1_NetworkPolicyPort_To_extensions_NetworkPolicyPort, + Convert_extensions_NetworkPolicyPort_To_v1_NetworkPolicyPort, + Convert_v1_NetworkPolicySpec_To_extensions_NetworkPolicySpec, + Convert_extensions_NetworkPolicySpec_To_v1_NetworkPolicySpec, + ) +} + +func Convert_v1_NetworkPolicy_To_extensions_NetworkPolicy(in *NetworkPolicy, out *extensions.NetworkPolicy, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + return Convert_v1_NetworkPolicySpec_To_extensions_NetworkPolicySpec(&in.Spec, &out.Spec, s) +} + +func Convert_extensions_NetworkPolicy_To_v1_NetworkPolicy(in *extensions.NetworkPolicy, out *NetworkPolicy, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + return Convert_extensions_NetworkPolicySpec_To_v1_NetworkPolicySpec(&in.Spec, &out.Spec, s) +} + +func Convert_v1_NetworkPolicySpec_To_extensions_NetworkPolicySpec(in *NetworkPolicySpec, out *extensions.NetworkPolicySpec, s conversion.Scope) error { + if err := s.Convert(&in.PodSelector, &out.PodSelector, 0); err != nil { + return err + } + out.Ingress = make([]extensions.NetworkPolicyIngressRule, len(in.Ingress)) + for i := range in.Ingress { + if err := Convert_v1_NetworkPolicyIngressRule_To_extensions_NetworkPolicyIngressRule(&in.Ingress[i], &out.Ingress[i], s); err != nil { + return err + } + } + return nil +} + +func Convert_extensions_NetworkPolicySpec_To_v1_NetworkPolicySpec(in *extensions.NetworkPolicySpec, out *NetworkPolicySpec, s conversion.Scope) error { + if err := s.Convert(&in.PodSelector, &out.PodSelector, 0); err != nil { + return err + } + out.Ingress = make([]NetworkPolicyIngressRule, len(in.Ingress)) + for i := range in.Ingress { + if err := Convert_extensions_NetworkPolicyIngressRule_To_v1_NetworkPolicyIngressRule(&in.Ingress[i], &out.Ingress[i], s); err != nil { + return err + } + } + return nil +} + +func Convert_v1_NetworkPolicyIngressRule_To_extensions_NetworkPolicyIngressRule(in *NetworkPolicyIngressRule, out *extensions.NetworkPolicyIngressRule, s conversion.Scope) error { + out.Ports = make([]extensions.NetworkPolicyPort, len(in.Ports)) + for i := range in.Ports { + if err := Convert_v1_NetworkPolicyPort_To_extensions_NetworkPolicyPort(&in.Ports[i], &out.Ports[i], s); err != nil { + return err + } + } + out.From = make([]extensions.NetworkPolicyPeer, len(in.From)) + for i := range in.From { + if err := Convert_v1_NetworkPolicyPeer_To_extensions_NetworkPolicyPeer(&in.From[i], &out.From[i], s); err != nil { + return err + } + } + return nil +} + +func Convert_extensions_NetworkPolicyIngressRule_To_v1_NetworkPolicyIngressRule(in *extensions.NetworkPolicyIngressRule, out *NetworkPolicyIngressRule, s conversion.Scope) error { + out.Ports = make([]NetworkPolicyPort, len(in.Ports)) + for i := range in.Ports { + if err := Convert_extensions_NetworkPolicyPort_To_v1_NetworkPolicyPort(&in.Ports[i], &out.Ports[i], s); err != nil { + return err + } + } + out.From = make([]NetworkPolicyPeer, len(in.From)) + for i := range in.From { + if err := Convert_extensions_NetworkPolicyPeer_To_v1_NetworkPolicyPeer(&in.From[i], &out.From[i], s); err != nil { + return err + } + } + return nil +} + +func Convert_v1_NetworkPolicyPeer_To_extensions_NetworkPolicyPeer(in *NetworkPolicyPeer, out *extensions.NetworkPolicyPeer, s conversion.Scope) error { + if in.PodSelector != nil { + out.PodSelector = new(metav1.LabelSelector) + if err := s.Convert(in.PodSelector, out.PodSelector, 0); err != nil { + return err + } + } else { + out.PodSelector = nil + } + if in.NamespaceSelector != nil { + out.NamespaceSelector = new(metav1.LabelSelector) + if err := s.Convert(in.NamespaceSelector, out.NamespaceSelector, 0); err != nil { + return err + } + } else { + out.NamespaceSelector = nil + } + return nil +} + +func Convert_extensions_NetworkPolicyPeer_To_v1_NetworkPolicyPeer(in *extensions.NetworkPolicyPeer, out *NetworkPolicyPeer, s conversion.Scope) error { + if in.PodSelector != nil { + out.PodSelector = new(metav1.LabelSelector) + if err := s.Convert(in.PodSelector, out.PodSelector, 0); err != nil { + return err + } + } else { + out.PodSelector = nil + } + if in.NamespaceSelector != nil { + out.NamespaceSelector = new(metav1.LabelSelector) + if err := s.Convert(in.NamespaceSelector, out.NamespaceSelector, 0); err != nil { + return err + } + } else { + out.NamespaceSelector = nil + } + return nil +} + +func Convert_v1_NetworkPolicyPort_To_extensions_NetworkPolicyPort(in *NetworkPolicyPort, out *extensions.NetworkPolicyPort, s conversion.Scope) error { + if in.Protocol != nil { + out.Protocol = new(api.Protocol) + *out.Protocol = api.Protocol(*in.Protocol) + } else { + out.Protocol = nil + } + out.Port = in.Port + return nil +} + +func Convert_extensions_NetworkPolicyPort_To_v1_NetworkPolicyPort(in *extensions.NetworkPolicyPort, out *NetworkPolicyPort, s conversion.Scope) error { + if in.Protocol != nil { + out.Protocol = new(v1.Protocol) + *out.Protocol = v1.Protocol(*in.Protocol) + } else { + out.Protocol = nil + } + out.Port = in.Port + return nil +} + +func Convert_v1_NetworkPolicyList_To_extensions_NetworkPolicyList(in *NetworkPolicyList, out *extensions.NetworkPolicyList, s conversion.Scope) error { + out.ListMeta = in.ListMeta + out.Items = make([]extensions.NetworkPolicy, len(in.Items)) + for i := range in.Items { + if err := Convert_v1_NetworkPolicy_To_extensions_NetworkPolicy(&in.Items[i], &out.Items[i], s); err != nil { + return err + } + } + return nil +} + +func Convert_extensions_NetworkPolicyList_To_v1_NetworkPolicyList(in *extensions.NetworkPolicyList, out *NetworkPolicyList, s conversion.Scope) error { + out.ListMeta = in.ListMeta + out.Items = make([]NetworkPolicy, len(in.Items)) + for i := range in.Items { + if err := Convert_extensions_NetworkPolicy_To_v1_NetworkPolicy(&in.Items[i], &out.Items[i], s); err != nil { + return err + } + } + return nil +} diff --git a/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/defaults.go b/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/defaults.go new file mode 100644 index 00000000..e4aeaaa6 --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/defaults.go @@ -0,0 +1,34 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +import ( + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/kubernetes/pkg/api/v1" +) + +func addDefaultingFuncs(scheme *runtime.Scheme) error { + return RegisterDefaults(scheme) +} + +func SetDefaults_NetworkPolicyPort(obj *NetworkPolicyPort) { + // Default any undefined Protocol fields to TCP. + if obj.Protocol == nil { + proto := v1.ProtocolTCP + obj.Protocol = &proto + } +} diff --git a/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/doc.go b/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/doc.go new file mode 100644 index 00000000..e4000f86 --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/doc.go @@ -0,0 +1,22 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// +k8s:deepcopy-gen=package,register +// +k8s:conversion-gen=k8s.io/kubernetes/pkg/apis/networking +// +k8s:openapi-gen=true +// +k8s:defaulter-gen=TypeMeta +// +groupName=networking.k8s.io +package v1 // import "k8s.io/kubernetes/pkg/apis/networking/v1" diff --git a/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/generated.pb.go new file mode 100644 index 00000000..45e7dfef --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/generated.pb.go @@ -0,0 +1,1345 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// Code generated by protoc-gen-gogo. +// source: k8s.io/kubernetes/pkg/apis/networking/v1/generated.proto +// DO NOT EDIT! + +/* + Package v1 is a generated protocol buffer package. + + It is generated from these files: + k8s.io/kubernetes/pkg/apis/networking/v1/generated.proto + + It has these top-level messages: + NetworkPolicy + NetworkPolicyIngressRule + NetworkPolicyList + NetworkPolicyPeer + NetworkPolicyPort + NetworkPolicySpec +*/ +package v1 + +import proto "github.com/gogo/protobuf/proto" +import fmt "fmt" +import math "math" + +import k8s_io_apimachinery_pkg_apis_meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + +import k8s_io_apimachinery_pkg_util_intstr "k8s.io/apimachinery/pkg/util/intstr" + +import k8s_io_kubernetes_pkg_api_v1 "k8s.io/kubernetes/pkg/api/v1" + +import strings "strings" +import reflect "reflect" + +import io "io" + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.GoGoProtoPackageIsVersion2 // please upgrade the proto package + +func (m *NetworkPolicy) Reset() { *m = NetworkPolicy{} } +func (*NetworkPolicy) ProtoMessage() {} +func (*NetworkPolicy) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{0} } + +func (m *NetworkPolicyIngressRule) Reset() { *m = NetworkPolicyIngressRule{} } +func (*NetworkPolicyIngressRule) ProtoMessage() {} +func (*NetworkPolicyIngressRule) Descriptor() ([]byte, []int) { + return fileDescriptorGenerated, []int{1} +} + +func (m *NetworkPolicyList) Reset() { *m = NetworkPolicyList{} } +func (*NetworkPolicyList) ProtoMessage() {} +func (*NetworkPolicyList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{2} } + +func (m *NetworkPolicyPeer) Reset() { *m = NetworkPolicyPeer{} } +func (*NetworkPolicyPeer) ProtoMessage() {} +func (*NetworkPolicyPeer) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{3} } + +func (m *NetworkPolicyPort) Reset() { *m = NetworkPolicyPort{} } +func (*NetworkPolicyPort) ProtoMessage() {} +func (*NetworkPolicyPort) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{4} } + +func (m *NetworkPolicySpec) Reset() { *m = NetworkPolicySpec{} } +func (*NetworkPolicySpec) ProtoMessage() {} +func (*NetworkPolicySpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{5} } + +func init() { + proto.RegisterType((*NetworkPolicy)(nil), "k8s.io.kubernetes.pkg.apis.networking.v1.NetworkPolicy") + proto.RegisterType((*NetworkPolicyIngressRule)(nil), "k8s.io.kubernetes.pkg.apis.networking.v1.NetworkPolicyIngressRule") + proto.RegisterType((*NetworkPolicyList)(nil), "k8s.io.kubernetes.pkg.apis.networking.v1.NetworkPolicyList") + proto.RegisterType((*NetworkPolicyPeer)(nil), "k8s.io.kubernetes.pkg.apis.networking.v1.NetworkPolicyPeer") + proto.RegisterType((*NetworkPolicyPort)(nil), "k8s.io.kubernetes.pkg.apis.networking.v1.NetworkPolicyPort") + proto.RegisterType((*NetworkPolicySpec)(nil), "k8s.io.kubernetes.pkg.apis.networking.v1.NetworkPolicySpec") +} +func (m *NetworkPolicy) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *NetworkPolicy) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.ObjectMeta.Size())) + n1, err := m.ObjectMeta.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n1 + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Spec.Size())) + n2, err := m.Spec.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n2 + return i, nil +} + +func (m *NetworkPolicyIngressRule) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *NetworkPolicyIngressRule) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + if len(m.Ports) > 0 { + for _, msg := range m.Ports { + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(msg.Size())) + n, err := msg.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n + } + } + if len(m.From) > 0 { + for _, msg := range m.From { + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(msg.Size())) + n, err := msg.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n + } + } + return i, nil +} + +func (m *NetworkPolicyList) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *NetworkPolicyList) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size())) + n3, err := m.ListMeta.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n3 + if len(m.Items) > 0 { + for _, msg := range m.Items { + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(msg.Size())) + n, err := msg.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n + } + } + return i, nil +} + +func (m *NetworkPolicyPeer) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *NetworkPolicyPeer) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + if m.PodSelector != nil { + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.PodSelector.Size())) + n4, err := m.PodSelector.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n4 + } + if m.NamespaceSelector != nil { + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.NamespaceSelector.Size())) + n5, err := m.NamespaceSelector.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n5 + } + return i, nil +} + +func (m *NetworkPolicyPort) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *NetworkPolicyPort) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + if m.Protocol != nil { + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(len(*m.Protocol))) + i += copy(dAtA[i:], *m.Protocol) + } + if m.Port != nil { + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.Port.Size())) + n6, err := m.Port.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n6 + } + return i, nil +} + +func (m *NetworkPolicySpec) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *NetworkPolicySpec) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.PodSelector.Size())) + n7, err := m.PodSelector.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n7 + if len(m.Ingress) > 0 { + for _, msg := range m.Ingress { + dAtA[i] = 0x12 + i++ + i = encodeVarintGenerated(dAtA, i, uint64(msg.Size())) + n, err := msg.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n + } + } + return i, nil +} + +func encodeFixed64Generated(dAtA []byte, offset int, v uint64) int { + dAtA[offset] = uint8(v) + dAtA[offset+1] = uint8(v >> 8) + dAtA[offset+2] = uint8(v >> 16) + dAtA[offset+3] = uint8(v >> 24) + dAtA[offset+4] = uint8(v >> 32) + dAtA[offset+5] = uint8(v >> 40) + dAtA[offset+6] = uint8(v >> 48) + dAtA[offset+7] = uint8(v >> 56) + return offset + 8 +} +func encodeFixed32Generated(dAtA []byte, offset int, v uint32) int { + dAtA[offset] = uint8(v) + dAtA[offset+1] = uint8(v >> 8) + dAtA[offset+2] = uint8(v >> 16) + dAtA[offset+3] = uint8(v >> 24) + return offset + 4 +} +func encodeVarintGenerated(dAtA []byte, offset int, v uint64) int { + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return offset + 1 +} +func (m *NetworkPolicy) Size() (n int) { + var l int + _ = l + l = m.ObjectMeta.Size() + n += 1 + l + sovGenerated(uint64(l)) + l = m.Spec.Size() + n += 1 + l + sovGenerated(uint64(l)) + return n +} + +func (m *NetworkPolicyIngressRule) Size() (n int) { + var l int + _ = l + if len(m.Ports) > 0 { + for _, e := range m.Ports { + l = e.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + } + if len(m.From) > 0 { + for _, e := range m.From { + l = e.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + } + return n +} + +func (m *NetworkPolicyList) Size() (n int) { + var l int + _ = l + l = m.ListMeta.Size() + n += 1 + l + sovGenerated(uint64(l)) + if len(m.Items) > 0 { + for _, e := range m.Items { + l = e.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + } + return n +} + +func (m *NetworkPolicyPeer) Size() (n int) { + var l int + _ = l + if m.PodSelector != nil { + l = m.PodSelector.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + if m.NamespaceSelector != nil { + l = m.NamespaceSelector.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + return n +} + +func (m *NetworkPolicyPort) Size() (n int) { + var l int + _ = l + if m.Protocol != nil { + l = len(*m.Protocol) + n += 1 + l + sovGenerated(uint64(l)) + } + if m.Port != nil { + l = m.Port.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + return n +} + +func (m *NetworkPolicySpec) Size() (n int) { + var l int + _ = l + l = m.PodSelector.Size() + n += 1 + l + sovGenerated(uint64(l)) + if len(m.Ingress) > 0 { + for _, e := range m.Ingress { + l = e.Size() + n += 1 + l + sovGenerated(uint64(l)) + } + } + return n +} + +func sovGenerated(x uint64) (n int) { + for { + n++ + x >>= 7 + if x == 0 { + break + } + } + return n +} +func sozGenerated(x uint64) (n int) { + return sovGenerated(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (this *NetworkPolicy) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&NetworkPolicy{`, + `ObjectMeta:` + strings.Replace(strings.Replace(this.ObjectMeta.String(), "ObjectMeta", "k8s_io_apimachinery_pkg_apis_meta_v1.ObjectMeta", 1), `&`, ``, 1) + `,`, + `Spec:` + strings.Replace(strings.Replace(this.Spec.String(), "NetworkPolicySpec", "NetworkPolicySpec", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func (this *NetworkPolicyIngressRule) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&NetworkPolicyIngressRule{`, + `Ports:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.Ports), "NetworkPolicyPort", "NetworkPolicyPort", 1), `&`, ``, 1) + `,`, + `From:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.From), "NetworkPolicyPeer", "NetworkPolicyPeer", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func (this *NetworkPolicyList) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&NetworkPolicyList{`, + `ListMeta:` + strings.Replace(strings.Replace(this.ListMeta.String(), "ListMeta", "k8s_io_apimachinery_pkg_apis_meta_v1.ListMeta", 1), `&`, ``, 1) + `,`, + `Items:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.Items), "NetworkPolicy", "NetworkPolicy", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func (this *NetworkPolicyPeer) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&NetworkPolicyPeer{`, + `PodSelector:` + strings.Replace(fmt.Sprintf("%v", this.PodSelector), "LabelSelector", "k8s_io_apimachinery_pkg_apis_meta_v1.LabelSelector", 1) + `,`, + `NamespaceSelector:` + strings.Replace(fmt.Sprintf("%v", this.NamespaceSelector), "LabelSelector", "k8s_io_apimachinery_pkg_apis_meta_v1.LabelSelector", 1) + `,`, + `}`, + }, "") + return s +} +func (this *NetworkPolicyPort) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&NetworkPolicyPort{`, + `Protocol:` + valueToStringGenerated(this.Protocol) + `,`, + `Port:` + strings.Replace(fmt.Sprintf("%v", this.Port), "IntOrString", "k8s_io_apimachinery_pkg_util_intstr.IntOrString", 1) + `,`, + `}`, + }, "") + return s +} +func (this *NetworkPolicySpec) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&NetworkPolicySpec{`, + `PodSelector:` + strings.Replace(strings.Replace(this.PodSelector.String(), "LabelSelector", "k8s_io_apimachinery_pkg_apis_meta_v1.LabelSelector", 1), `&`, ``, 1) + `,`, + `Ingress:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.Ingress), "NetworkPolicyIngressRule", "NetworkPolicyIngressRule", 1), `&`, ``, 1) + `,`, + `}`, + }, "") + return s +} +func valueToStringGenerated(v interface{}) string { + rv := reflect.ValueOf(v) + if rv.IsNil() { + return "nil" + } + pv := reflect.Indirect(rv).Interface() + return fmt.Sprintf("*%v", pv) +} +func (m *NetworkPolicy) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: NetworkPolicy: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: NetworkPolicy: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ObjectMeta", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.ObjectMeta.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *NetworkPolicyIngressRule) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: NetworkPolicyIngressRule: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: NetworkPolicyIngressRule: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Ports", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Ports = append(m.Ports, NetworkPolicyPort{}) + if err := m.Ports[len(m.Ports)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field From", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.From = append(m.From, NetworkPolicyPeer{}) + if err := m.From[len(m.From)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *NetworkPolicyList) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: NetworkPolicyList: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: NetworkPolicyList: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ListMeta", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.ListMeta.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Items", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Items = append(m.Items, NetworkPolicy{}) + if err := m.Items[len(m.Items)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *NetworkPolicyPeer) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: NetworkPolicyPeer: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: NetworkPolicyPeer: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PodSelector", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.PodSelector == nil { + m.PodSelector = &k8s_io_apimachinery_pkg_apis_meta_v1.LabelSelector{} + } + if err := m.PodSelector.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field NamespaceSelector", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.NamespaceSelector == nil { + m.NamespaceSelector = &k8s_io_apimachinery_pkg_apis_meta_v1.LabelSelector{} + } + if err := m.NamespaceSelector.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *NetworkPolicyPort) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: NetworkPolicyPort: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: NetworkPolicyPort: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Protocol", 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 := k8s_io_kubernetes_pkg_api_v1.Protocol(dAtA[iNdEx:postIndex]) + m.Protocol = &s + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Port", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Port == nil { + m.Port = &k8s_io_apimachinery_pkg_util_intstr.IntOrString{} + } + if err := m.Port.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *NetworkPolicySpec) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: NetworkPolicySpec: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: NetworkPolicySpec: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PodSelector", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.PodSelector.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Ingress", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Ingress = append(m.Ingress, NetworkPolicyIngressRule{}) + if err := m.Ingress[len(m.Ingress)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipGenerated(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenerated + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenerated + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + return iNdEx, nil + case 1: + iNdEx += 8 + return iNdEx, nil + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenerated + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + iNdEx += length + if length < 0 { + return 0, ErrInvalidLengthGenerated + } + return iNdEx, nil + case 3: + for { + var innerWire uint64 + var start int = iNdEx + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowGenerated + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + innerWire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + innerWireType := int(innerWire & 0x7) + if innerWireType == 4 { + break + } + next, err := skipGenerated(dAtA[start:]) + if err != nil { + return 0, err + } + iNdEx = start + next + } + return iNdEx, nil + case 4: + return iNdEx, nil + case 5: + iNdEx += 4 + return iNdEx, nil + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + } + panic("unreachable") +} + +var ( + ErrInvalidLengthGenerated = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowGenerated = fmt.Errorf("proto: integer overflow") +) + +func init() { + proto.RegisterFile("k8s.io/kubernetes/pkg/apis/networking/v1/generated.proto", fileDescriptorGenerated) +} + +var fileDescriptorGenerated = []byte{ + // 666 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x54, 0xcf, 0x4f, 0x13, 0x41, + 0x18, 0xed, 0x56, 0x08, 0x75, 0x90, 0x20, 0x6b, 0x4c, 0x1a, 0x0e, 0x5b, 0xd2, 0xc4, 0x84, 0x83, + 0xce, 0x5a, 0xf1, 0x07, 0xc6, 0x78, 0xd9, 0x83, 0x09, 0x89, 0x42, 0x5d, 0x6e, 0x06, 0x13, 0xa6, + 0xcb, 0xc7, 0x32, 0xb4, 0x3b, 0xb3, 0x99, 0x99, 0x56, 0xb8, 0xf9, 0x27, 0xf8, 0xd7, 0xf8, 0x37, + 0x70, 0x93, 0x23, 0x89, 0x49, 0x23, 0xeb, 0xdd, 0x9b, 0x17, 0x4f, 0x66, 0x76, 0xa7, 0x6c, 0x61, + 0x59, 0x24, 0xc5, 0xdb, 0xcc, 0xe4, 0x7b, 0xef, 0x7d, 0x6f, 0xde, 0x37, 0x83, 0x56, 0xbb, 0xab, + 0x12, 0x53, 0xee, 0x76, 0xfb, 0x1d, 0x10, 0x0c, 0x14, 0x48, 0x37, 0xee, 0x86, 0x2e, 0x89, 0xa9, + 0x74, 0x19, 0xa8, 0x4f, 0x5c, 0x74, 0x29, 0x0b, 0xdd, 0x41, 0xcb, 0x0d, 0x81, 0x81, 0x20, 0x0a, + 0x76, 0x70, 0x2c, 0xb8, 0xe2, 0xf6, 0x72, 0x86, 0xc4, 0x39, 0x12, 0xc7, 0xdd, 0x10, 0x6b, 0x24, + 0xce, 0x91, 0x78, 0xd0, 0x5a, 0x7c, 0x14, 0x52, 0xb5, 0xd7, 0xef, 0xe0, 0x80, 0x47, 0x6e, 0xc8, + 0x43, 0xee, 0xa6, 0x04, 0x9d, 0xfe, 0x6e, 0xba, 0x4b, 0x37, 0xe9, 0x2a, 0x23, 0x5e, 0x7c, 0x6a, + 0x5a, 0x22, 0x31, 0x8d, 0x48, 0xb0, 0x47, 0x19, 0x88, 0xc3, 0xbc, 0xa9, 0x08, 0x14, 0xb9, 0xa4, + 0x9d, 0x45, 0xb7, 0x0c, 0x25, 0xfa, 0x4c, 0xd1, 0x08, 0x0a, 0x80, 0xe7, 0xff, 0x02, 0xc8, 0x60, + 0x0f, 0x22, 0x52, 0xc0, 0xad, 0x94, 0xe1, 0xfa, 0x8a, 0xf6, 0x5c, 0xca, 0x94, 0x54, 0xa2, 0x00, + 0x7a, 0x58, 0x7a, 0xcd, 0x97, 0x79, 0x79, 0x7d, 0x45, 0x28, 0x70, 0xa0, 0x80, 0x49, 0xca, 0x99, + 0x74, 0x07, 0xad, 0x0e, 0x28, 0x52, 0x84, 0xbf, 0xbc, 0x02, 0x1e, 0xf3, 0x1e, 0x0d, 0x0e, 0xcb, + 0xa0, 0xcd, 0x63, 0x0b, 0xcd, 0xad, 0x67, 0xe1, 0xb5, 0xd3, 0x4a, 0x7b, 0x1b, 0xd5, 0xf4, 0x95, + 0xef, 0x10, 0x45, 0xea, 0xd6, 0x92, 0xb5, 0x3c, 0xfb, 0xe4, 0x31, 0x36, 0xc9, 0x8f, 0xdf, 0x40, + 0x9e, 0xbd, 0xae, 0xc6, 0x83, 0x16, 0xde, 0xe8, 0xec, 0x43, 0xa0, 0xde, 0x81, 0x22, 0x9e, 0x7d, + 0x34, 0x6c, 0x54, 0x92, 0x61, 0x03, 0xe5, 0x67, 0xfe, 0x19, 0xab, 0xfd, 0x11, 0x4d, 0xc9, 0x18, + 0x82, 0x7a, 0x35, 0x65, 0x7f, 0x85, 0xaf, 0x3b, 0x57, 0xf8, 0x5c, 0xa3, 0x9b, 0x31, 0x04, 0xde, + 0x1d, 0x23, 0x34, 0xa5, 0x77, 0x7e, 0x4a, 0xdb, 0xfc, 0x6e, 0xa1, 0xfa, 0xb9, 0xca, 0x35, 0x16, + 0x0a, 0x90, 0xd2, 0xef, 0xf7, 0xc0, 0xde, 0x46, 0xd3, 0x31, 0x17, 0x4a, 0xd6, 0xad, 0xa5, 0x5b, + 0x37, 0x10, 0x6f, 0x73, 0xa1, 0xbc, 0x39, 0x23, 0x3e, 0xad, 0x77, 0xd2, 0xcf, 0x88, 0xb5, 0xbb, + 0x5d, 0xc1, 0xa3, 0x7a, 0xf5, 0x66, 0x02, 0x00, 0x22, 0x77, 0xf7, 0x46, 0xf0, 0xc8, 0x4f, 0x69, + 0x9b, 0xdf, 0x2c, 0xb4, 0x70, 0xae, 0xf2, 0x2d, 0x95, 0xca, 0xde, 0x2a, 0x84, 0x86, 0xaf, 0x17, + 0x9a, 0x46, 0xa7, 0x91, 0xdd, 0x35, 0x5a, 0xb5, 0xd1, 0xc9, 0x58, 0x60, 0x5b, 0x68, 0x9a, 0x2a, + 0x88, 0xa4, 0xf1, 0xf4, 0x62, 0x42, 0x4f, 0xf9, 0x85, 0xad, 0x69, 0x36, 0x3f, 0x23, 0x6d, 0xfe, + 0xbe, 0xe8, 0x48, 0x7b, 0xb7, 0x77, 0xd1, 0x6c, 0xcc, 0x77, 0x36, 0xa1, 0x07, 0x81, 0xe2, 0xc2, + 0x98, 0x5a, 0xb9, 0xa6, 0x29, 0xd2, 0x81, 0xde, 0x08, 0xea, 0xcd, 0x27, 0xc3, 0xc6, 0x6c, 0x3b, + 0xe7, 0xf2, 0xc7, 0x89, 0xed, 0x03, 0xb4, 0xc0, 0x48, 0x04, 0x32, 0x26, 0x01, 0x9c, 0xa9, 0x55, + 0x27, 0x57, 0xbb, 0x9f, 0x0c, 0x1b, 0x0b, 0xeb, 0x17, 0x19, 0xfd, 0xa2, 0x48, 0xf3, 0x6b, 0xc1, + 0x37, 0x17, 0xca, 0x7e, 0x8f, 0x6a, 0xe9, 0xcb, 0x0c, 0x78, 0x2f, 0x35, 0x7d, 0xdb, 0x7b, 0xa6, + 0x53, 0x69, 0x9b, 0xb3, 0x3f, 0xc3, 0xc6, 0x83, 0xab, 0xbe, 0x16, 0x3c, 0x2a, 0xf4, 0xcf, 0x68, + 0xec, 0x75, 0x34, 0xa5, 0x47, 0xd3, 0xb8, 0x2a, 0x7f, 0xcd, 0xfa, 0x3f, 0xc3, 0xd9, 0x7f, 0x86, + 0xd7, 0x98, 0xda, 0x10, 0x9b, 0x4a, 0x50, 0x16, 0x7a, 0x35, 0x3d, 0x82, 0xba, 0x39, 0x3f, 0xe5, + 0x69, 0xfe, 0xba, 0xd8, 0xb8, 0x7e, 0x7c, 0xf6, 0xfe, 0x7f, 0x0b, 0xec, 0x9e, 0x19, 0x93, 0xf2, + 0xd0, 0x22, 0x34, 0x43, 0xb3, 0x47, 0x6d, 0x46, 0xd2, 0x9b, 0x70, 0x24, 0xc7, 0xbe, 0x06, 0x6f, + 0xde, 0xc8, 0xce, 0x8c, 0x0e, 0x47, 0x1a, 0xde, 0xf2, 0xd1, 0xa9, 0x53, 0x39, 0x3e, 0x75, 0x2a, + 0x27, 0xa7, 0x4e, 0xe5, 0x73, 0xe2, 0x58, 0x47, 0x89, 0x63, 0x1d, 0x27, 0x8e, 0x75, 0x92, 0x38, + 0xd6, 0x8f, 0xc4, 0xb1, 0xbe, 0xfc, 0x74, 0x2a, 0x1f, 0xaa, 0x83, 0xd6, 0xdf, 0x00, 0x00, 0x00, + 0xff, 0xff, 0xfa, 0x8d, 0x62, 0x1f, 0x5e, 0x07, 0x00, 0x00, +} diff --git a/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/generated.proto b/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/generated.proto new file mode 100644 index 00000000..7c448f87 --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/generated.proto @@ -0,0 +1,127 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + + +// This file was autogenerated by go-to-protobuf. Do not edit it manually! + +syntax = 'proto2'; + +package k8s.io.kubernetes.pkg.apis.networking.v1; + +import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; +import "k8s.io/apimachinery/pkg/runtime/generated.proto"; +import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; +import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; +import "k8s.io/kubernetes/pkg/api/v1/generated.proto"; +import "k8s.io/kubernetes/pkg/apis/extensions/v1beta1/generated.proto"; +import "k8s.io/kubernetes/pkg/apis/policy/v1beta1/generated.proto"; + +// Package-wide variables from generator "generated". +option go_package = "v1"; + +// NetworkPolicy describes what network traffic is allowed for a set of Pods +message NetworkPolicy { + // Standard object's metadata. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + // +optional + optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; + + // Specification of the desired behavior for this NetworkPolicy. + // +optional + optional NetworkPolicySpec spec = 2; +} + +// NetworkPolicyIngressRule describes a particular set of traffic that is allowed to the pods +// matched by a NetworkPolicySpec's podSelector. The traffic must match both ports and from. +message NetworkPolicyIngressRule { + // List of ports which should be made accessible on the pods selected for this + // rule. Each item in this list is combined using a logical OR. If this field is + // empty or missing, this rule matches all ports (traffic not restricted by port). + // If this field is present and contains at least one item, then this rule allows + // traffic only if the traffic matches at least one port in the list. + // +optional + repeated NetworkPolicyPort ports = 1; + + // List of sources which should be able to access the pods selected for this rule. + // Items in this list are combined using a logical OR operation. If this field is + // empty or missing, this rule matches all sources (traffic not restricted by + // source). If this field is present and contains at least on item, this rule + // allows traffic only if the traffic matches at least one item in the from list. + // +optional + repeated NetworkPolicyPeer from = 2; +} + +// NetworkPolicyList is a list of NetworkPolicy objects. +message NetworkPolicyList { + // Standard list metadata. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + // +optional + optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; + + // Items is a list of schema objects. + repeated NetworkPolicy items = 2; +} + +// NetworkPolicyPeer describes a peer to allow traffic from. Exactly one of its fields +// must be specified. +message NetworkPolicyPeer { + // This is a label selector which selects Pods in this namespace. This field + // follows standard label selector semantics. If present but empty, this selector + // selects all pods in this namespace. + // +optional + optional k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector podSelector = 1; + + // Selects Namespaces using cluster scoped-labels. This matches all pods in all + // namespaces selected by this label selector. This field follows standard label + // selector semantics. If present but empty, this selector selects all namespaces. + // +optional + optional k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector namespaceSelector = 2; +} + +// NetworkPolicyPort describes a port to allow traffic on +message NetworkPolicyPort { + // The protocol (TCP or UDP) which traffic must match. If not specified, this + // field defaults to TCP. + // +optional + optional string protocol = 1; + + // The port on the given protocol. This can either be a numerical or named port on + // a pod. If this field is not provided, this matches all port names and numbers. + // +optional + optional k8s.io.apimachinery.pkg.util.intstr.IntOrString port = 2; +} + +// NetworkPolicySpec provides the specification of a NetworkPolicy +message NetworkPolicySpec { + // Selects the pods to which this NetworkPolicy object applies. The array of + // ingress rules is applied to any pods selected by this field. Multiple network + // policies can select the same set of pods. In this case, the ingress rules for + // each are combined additively. This field is NOT optional and follows standard + // label selector semantics. An empty podSelector matches all pods in this + // namespace. + optional k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector podSelector = 1; + + // List of ingress rules to be applied to the selected pods. Traffic is allowed to + // a pod if there are no NetworkPolicies selecting the pod + // (and cluster policy otherwise allows the traffic), OR if the traffic source is + // the pod's local node, OR if the traffic matches at least one ingress rule + // across all of the NetworkPolicy objects whose podSelector matches the pod. If + // this field is empty then this NetworkPolicy does not allow any traffic (and serves + // solely to ensure that the pods it selects are isolated by default) + // +optional + repeated NetworkPolicyIngressRule ingress = 2; +} + diff --git a/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/register.go b/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/register.go new file mode 100644 index 00000000..c8d3c83b --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/register.go @@ -0,0 +1,50 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +import ( + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/apimachinery/pkg/runtime/schema" +) + +// GroupName is the group name use in this package +const GroupName = "networking.k8s.io" + +// SchemeGroupVersion is group version used to register these objects +var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1"} + +// Resource takes an unqualified resource and returns a Group qualified GroupResource +func Resource(resource string) schema.GroupResource { + return SchemeGroupVersion.WithResource(resource).GroupResource() +} + +var ( + SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes, addDefaultingFuncs, addConversionFuncs) + AddToScheme = SchemeBuilder.AddToScheme +) + +// Adds the list of known types to api.Scheme. +func addKnownTypes(scheme *runtime.Scheme) error { + scheme.AddKnownTypes(SchemeGroupVersion, + &NetworkPolicy{}, + &NetworkPolicyList{}, + ) + + metav1.AddToGroupVersion(scheme, SchemeGroupVersion) + return nil +} diff --git a/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/types.generated.go b/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/types.generated.go new file mode 100644 index 00000000..38d6af90 --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/types.generated.go @@ -0,0 +1,2322 @@ +/* +Copyright 2016 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// ************************************************************ +// DO NOT EDIT. +// THIS FILE IS AUTO-GENERATED BY codecgen. +// ************************************************************ + +package v1 + +import ( + "errors" + "fmt" + codec1978 "github.com/ugorji/go/codec" + pkg1_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + pkg2_types "k8s.io/apimachinery/pkg/types" + pkg4_intstr "k8s.io/apimachinery/pkg/util/intstr" + pkg3_v1 "k8s.io/kubernetes/pkg/api/v1" + "reflect" + "runtime" + time "time" +) + +const ( + // ----- content types ---- + codecSelferC_UTF81234 = 1 + codecSelferC_RAW1234 = 0 + // ----- value types used ---- + codecSelferValueTypeArray1234 = 10 + codecSelferValueTypeMap1234 = 9 + // ----- containerStateValues ---- + codecSelfer_containerMapKey1234 = 2 + codecSelfer_containerMapValue1234 = 3 + codecSelfer_containerMapEnd1234 = 4 + codecSelfer_containerArrayElem1234 = 6 + codecSelfer_containerArrayEnd1234 = 7 +) + +var ( + codecSelferBitsize1234 = uint8(reflect.TypeOf(uint(0)).Bits()) + codecSelferOnlyMapOrArrayEncodeToStructErr1234 = errors.New(`only encoded map or array can be decoded into a struct`) +) + +type codecSelfer1234 struct{} + +func init() { + if codec1978.GenVersion != 5 { + _, file, _, _ := runtime.Caller(0) + err := fmt.Errorf("codecgen version mismatch: current: %v, need %v. Re-generate file: %v", + 5, codec1978.GenVersion, file) + panic(err) + } + if false { // reference the types, but skip this branch at build/run time + var v0 pkg1_v1.TypeMeta + var v1 pkg2_types.UID + var v2 pkg4_intstr.IntOrString + var v3 pkg3_v1.Protocol + var v4 time.Time + _, _, _, _, _ = v0, v1, v2, v3, v4 + } +} + +func (x *NetworkPolicy) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [4]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.Kind != "" + yyq2[1] = x.APIVersion != "" + yyq2[2] = true + yyq2[3] = true + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(4) + } else { + yynn2 = 0 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("kind")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("apiVersion")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yy10 := &x.ObjectMeta + yym11 := z.EncBinary() + _ = yym11 + if false { + } else if z.HasExtensions() && z.EncExt(yy10) { + } else { + z.EncFallback(yy10) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("metadata")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy12 := &x.ObjectMeta + yym13 := z.EncBinary() + _ = yym13 + if false { + } else if z.HasExtensions() && z.EncExt(yy12) { + } else { + z.EncFallback(yy12) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[3] { + yy15 := &x.Spec + yy15.CodecEncodeSelf(e) + } else { + r.EncodeNil() + } + } else { + if yyq2[3] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("spec")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy17 := &x.Spec + yy17.CodecEncodeSelf(e) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *NetworkPolicy) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *NetworkPolicy) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "kind": + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv4 := &x.Kind + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "apiVersion": + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv6 := &x.APIVersion + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + case "metadata": + if r.TryDecodeAsNil() { + x.ObjectMeta = pkg1_v1.ObjectMeta{} + } else { + yyv8 := &x.ObjectMeta + yym9 := z.DecBinary() + _ = yym9 + if false { + } else if z.HasExtensions() && z.DecExt(yyv8) { + } else { + z.DecFallback(yyv8, false) + } + } + case "spec": + if r.TryDecodeAsNil() { + x.Spec = NetworkPolicySpec{} + } else { + yyv10 := &x.Spec + yyv10.CodecDecodeSelf(d) + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *NetworkPolicy) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj11 int + var yyb11 bool + var yyhl11 bool = l >= 0 + yyj11++ + if yyhl11 { + yyb11 = yyj11 > l + } else { + yyb11 = r.CheckBreak() + } + if yyb11 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv12 := &x.Kind + yym13 := z.DecBinary() + _ = yym13 + if false { + } else { + *((*string)(yyv12)) = r.DecodeString() + } + } + yyj11++ + if yyhl11 { + yyb11 = yyj11 > l + } else { + yyb11 = r.CheckBreak() + } + if yyb11 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv14 := &x.APIVersion + yym15 := z.DecBinary() + _ = yym15 + if false { + } else { + *((*string)(yyv14)) = r.DecodeString() + } + } + yyj11++ + if yyhl11 { + yyb11 = yyj11 > l + } else { + yyb11 = r.CheckBreak() + } + if yyb11 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ObjectMeta = pkg1_v1.ObjectMeta{} + } else { + yyv16 := &x.ObjectMeta + yym17 := z.DecBinary() + _ = yym17 + if false { + } else if z.HasExtensions() && z.DecExt(yyv16) { + } else { + z.DecFallback(yyv16, false) + } + } + yyj11++ + if yyhl11 { + yyb11 = yyj11 > l + } else { + yyb11 = r.CheckBreak() + } + if yyb11 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Spec = NetworkPolicySpec{} + } else { + yyv18 := &x.Spec + yyv18.CodecDecodeSelf(d) + } + for { + yyj11++ + if yyhl11 { + yyb11 = yyj11 > l + } else { + yyb11 = r.CheckBreak() + } + if yyb11 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj11-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *NetworkPolicySpec) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [2]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[1] = len(x.Ingress) != 0 + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(2) + } else { + yynn2 = 1 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy4 := &x.PodSelector + yym5 := z.EncBinary() + _ = yym5 + if false { + } else if z.HasExtensions() && z.EncExt(yy4) { + } else { + z.EncFallback(yy4) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("podSelector")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy6 := &x.PodSelector + yym7 := z.EncBinary() + _ = yym7 + if false { + } else if z.HasExtensions() && z.EncExt(yy6) { + } else { + z.EncFallback(yy6) + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + if x.Ingress == nil { + r.EncodeNil() + } else { + yym9 := z.EncBinary() + _ = yym9 + if false { + } else { + h.encSliceNetworkPolicyIngressRule(([]NetworkPolicyIngressRule)(x.Ingress), e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("ingress")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Ingress == nil { + r.EncodeNil() + } else { + yym10 := z.EncBinary() + _ = yym10 + if false { + } else { + h.encSliceNetworkPolicyIngressRule(([]NetworkPolicyIngressRule)(x.Ingress), e) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *NetworkPolicySpec) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *NetworkPolicySpec) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "podSelector": + if r.TryDecodeAsNil() { + x.PodSelector = pkg1_v1.LabelSelector{} + } else { + yyv4 := &x.PodSelector + yym5 := z.DecBinary() + _ = yym5 + if false { + } else if z.HasExtensions() && z.DecExt(yyv4) { + } else { + z.DecFallback(yyv4, false) + } + } + case "ingress": + if r.TryDecodeAsNil() { + x.Ingress = nil + } else { + yyv6 := &x.Ingress + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + h.decSliceNetworkPolicyIngressRule((*[]NetworkPolicyIngressRule)(yyv6), d) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *NetworkPolicySpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj8 int + var yyb8 bool + var yyhl8 bool = l >= 0 + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.PodSelector = pkg1_v1.LabelSelector{} + } else { + yyv9 := &x.PodSelector + yym10 := z.DecBinary() + _ = yym10 + if false { + } else if z.HasExtensions() && z.DecExt(yyv9) { + } else { + z.DecFallback(yyv9, false) + } + } + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Ingress = nil + } else { + yyv11 := &x.Ingress + yym12 := z.DecBinary() + _ = yym12 + if false { + } else { + h.decSliceNetworkPolicyIngressRule((*[]NetworkPolicyIngressRule)(yyv11), d) + } + } + for { + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj8-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *NetworkPolicyIngressRule) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [2]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = len(x.Ports) != 0 + yyq2[1] = len(x.From) != 0 + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(2) + } else { + yynn2 = 0 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + if x.Ports == nil { + r.EncodeNil() + } else { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + h.encSliceNetworkPolicyPort(([]NetworkPolicyPort)(x.Ports), e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("ports")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Ports == nil { + r.EncodeNil() + } else { + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + h.encSliceNetworkPolicyPort(([]NetworkPolicyPort)(x.Ports), e) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + if x.From == nil { + r.EncodeNil() + } else { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + h.encSliceNetworkPolicyPeer(([]NetworkPolicyPeer)(x.From), e) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("from")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.From == nil { + r.EncodeNil() + } else { + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + h.encSliceNetworkPolicyPeer(([]NetworkPolicyPeer)(x.From), e) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *NetworkPolicyIngressRule) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *NetworkPolicyIngressRule) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "ports": + if r.TryDecodeAsNil() { + x.Ports = nil + } else { + yyv4 := &x.Ports + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + h.decSliceNetworkPolicyPort((*[]NetworkPolicyPort)(yyv4), d) + } + } + case "from": + if r.TryDecodeAsNil() { + x.From = nil + } else { + yyv6 := &x.From + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + h.decSliceNetworkPolicyPeer((*[]NetworkPolicyPeer)(yyv6), d) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *NetworkPolicyIngressRule) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj8 int + var yyb8 bool + var yyhl8 bool = l >= 0 + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Ports = nil + } else { + yyv9 := &x.Ports + yym10 := z.DecBinary() + _ = yym10 + if false { + } else { + h.decSliceNetworkPolicyPort((*[]NetworkPolicyPort)(yyv9), d) + } + } + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.From = nil + } else { + yyv11 := &x.From + yym12 := z.DecBinary() + _ = yym12 + if false { + } else { + h.decSliceNetworkPolicyPeer((*[]NetworkPolicyPeer)(yyv11), d) + } + } + for { + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj8-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *NetworkPolicyPort) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [2]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.Protocol != nil + yyq2[1] = x.Port != nil + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(2) + } else { + yynn2 = 0 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + if x.Protocol == nil { + r.EncodeNil() + } else { + yy4 := *x.Protocol + yysf5 := &yy4 + yysf5.CodecEncodeSelf(e) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("protocol")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Protocol == nil { + r.EncodeNil() + } else { + yy6 := *x.Protocol + yysf7 := &yy6 + yysf7.CodecEncodeSelf(e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + if x.Port == nil { + r.EncodeNil() + } else { + yym9 := z.EncBinary() + _ = yym9 + if false { + } else if z.HasExtensions() && z.EncExt(x.Port) { + } else if !yym9 && z.IsJSONHandle() { + z.EncJSONMarshal(x.Port) + } else { + z.EncFallback(x.Port) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("port")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Port == nil { + r.EncodeNil() + } else { + yym10 := z.EncBinary() + _ = yym10 + if false { + } else if z.HasExtensions() && z.EncExt(x.Port) { + } else if !yym10 && z.IsJSONHandle() { + z.EncJSONMarshal(x.Port) + } else { + z.EncFallback(x.Port) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *NetworkPolicyPort) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *NetworkPolicyPort) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "protocol": + if r.TryDecodeAsNil() { + if x.Protocol != nil { + x.Protocol = nil + } + } else { + if x.Protocol == nil { + x.Protocol = new(pkg3_v1.Protocol) + } + x.Protocol.CodecDecodeSelf(d) + } + case "port": + if r.TryDecodeAsNil() { + if x.Port != nil { + x.Port = nil + } + } else { + if x.Port == nil { + x.Port = new(pkg4_intstr.IntOrString) + } + yym6 := z.DecBinary() + _ = yym6 + if false { + } else if z.HasExtensions() && z.DecExt(x.Port) { + } else if !yym6 && z.IsJSONHandle() { + z.DecJSONUnmarshal(x.Port) + } else { + z.DecFallback(x.Port, false) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *NetworkPolicyPort) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj7 int + var yyb7 bool + var yyhl7 bool = l >= 0 + yyj7++ + if yyhl7 { + yyb7 = yyj7 > l + } else { + yyb7 = r.CheckBreak() + } + if yyb7 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.Protocol != nil { + x.Protocol = nil + } + } else { + if x.Protocol == nil { + x.Protocol = new(pkg3_v1.Protocol) + } + x.Protocol.CodecDecodeSelf(d) + } + yyj7++ + if yyhl7 { + yyb7 = yyj7 > l + } else { + yyb7 = r.CheckBreak() + } + if yyb7 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.Port != nil { + x.Port = nil + } + } else { + if x.Port == nil { + x.Port = new(pkg4_intstr.IntOrString) + } + yym10 := z.DecBinary() + _ = yym10 + if false { + } else if z.HasExtensions() && z.DecExt(x.Port) { + } else if !yym10 && z.IsJSONHandle() { + z.DecJSONUnmarshal(x.Port) + } else { + z.DecFallback(x.Port, false) + } + } + for { + yyj7++ + if yyhl7 { + yyb7 = yyj7 > l + } else { + yyb7 = r.CheckBreak() + } + if yyb7 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj7-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *NetworkPolicyPeer) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [2]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.PodSelector != nil + yyq2[1] = x.NamespaceSelector != nil + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(2) + } else { + yynn2 = 0 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + if x.PodSelector == nil { + r.EncodeNil() + } else { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else if z.HasExtensions() && z.EncExt(x.PodSelector) { + } else { + z.EncFallback(x.PodSelector) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("podSelector")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.PodSelector == nil { + r.EncodeNil() + } else { + yym5 := z.EncBinary() + _ = yym5 + if false { + } else if z.HasExtensions() && z.EncExt(x.PodSelector) { + } else { + z.EncFallback(x.PodSelector) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + if x.NamespaceSelector == nil { + r.EncodeNil() + } else { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else if z.HasExtensions() && z.EncExt(x.NamespaceSelector) { + } else { + z.EncFallback(x.NamespaceSelector) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("namespaceSelector")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.NamespaceSelector == nil { + r.EncodeNil() + } else { + yym8 := z.EncBinary() + _ = yym8 + if false { + } else if z.HasExtensions() && z.EncExt(x.NamespaceSelector) { + } else { + z.EncFallback(x.NamespaceSelector) + } + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *NetworkPolicyPeer) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *NetworkPolicyPeer) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "podSelector": + if r.TryDecodeAsNil() { + if x.PodSelector != nil { + x.PodSelector = nil + } + } else { + if x.PodSelector == nil { + x.PodSelector = new(pkg1_v1.LabelSelector) + } + yym5 := z.DecBinary() + _ = yym5 + if false { + } else if z.HasExtensions() && z.DecExt(x.PodSelector) { + } else { + z.DecFallback(x.PodSelector, false) + } + } + case "namespaceSelector": + if r.TryDecodeAsNil() { + if x.NamespaceSelector != nil { + x.NamespaceSelector = nil + } + } else { + if x.NamespaceSelector == nil { + x.NamespaceSelector = new(pkg1_v1.LabelSelector) + } + yym7 := z.DecBinary() + _ = yym7 + if false { + } else if z.HasExtensions() && z.DecExt(x.NamespaceSelector) { + } else { + z.DecFallback(x.NamespaceSelector, false) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *NetworkPolicyPeer) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj8 int + var yyb8 bool + var yyhl8 bool = l >= 0 + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.PodSelector != nil { + x.PodSelector = nil + } + } else { + if x.PodSelector == nil { + x.PodSelector = new(pkg1_v1.LabelSelector) + } + yym10 := z.DecBinary() + _ = yym10 + if false { + } else if z.HasExtensions() && z.DecExt(x.PodSelector) { + } else { + z.DecFallback(x.PodSelector, false) + } + } + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.NamespaceSelector != nil { + x.NamespaceSelector = nil + } + } else { + if x.NamespaceSelector == nil { + x.NamespaceSelector = new(pkg1_v1.LabelSelector) + } + yym12 := z.DecBinary() + _ = yym12 + if false { + } else if z.HasExtensions() && z.DecExt(x.NamespaceSelector) { + } else { + z.DecFallback(x.NamespaceSelector, false) + } + } + for { + yyj8++ + if yyhl8 { + yyb8 = yyj8 > l + } else { + yyb8 = r.CheckBreak() + } + if yyb8 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj8-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x *NetworkPolicyList) CodecEncodeSelf(e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + if x == nil { + r.EncodeNil() + } else { + yym1 := z.EncBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.EncExt(x) { + } else { + yysep2 := !z.EncBinary() + yy2arr2 := z.EncBasicHandle().StructToArray + var yyq2 [4]bool + _, _, _ = yysep2, yyq2, yy2arr2 + const yyr2 bool = false + yyq2[0] = x.Kind != "" + yyq2[1] = x.APIVersion != "" + yyq2[2] = true + var yynn2 int + if yyr2 || yy2arr2 { + r.EncodeArrayStart(4) + } else { + yynn2 = 1 + for _, b := range yyq2 { + if b { + yynn2++ + } + } + r.EncodeMapStart(yynn2) + yynn2 = 0 + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[0] { + yym4 := z.EncBinary() + _ = yym4 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[0] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("kind")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.Kind)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[1] { + yym7 := z.EncBinary() + _ = yym7 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } else { + r.EncodeString(codecSelferC_UTF81234, "") + } + } else { + if yyq2[1] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("apiVersion")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym8 := z.EncBinary() + _ = yym8 + if false { + } else { + r.EncodeString(codecSelferC_UTF81234, string(x.APIVersion)) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + yy10 := &x.ListMeta + yym11 := z.EncBinary() + _ = yym11 + if false { + } else if z.HasExtensions() && z.EncExt(yy10) { + } else { + z.EncFallback(yy10) + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("metadata")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy12 := &x.ListMeta + yym13 := z.EncBinary() + _ = yym13 + if false { + } else if z.HasExtensions() && z.EncExt(yy12) { + } else { + z.EncFallback(yy12) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if x.Items == nil { + r.EncodeNil() + } else { + yym15 := z.EncBinary() + _ = yym15 + if false { + } else { + h.encSliceNetworkPolicy(([]NetworkPolicy)(x.Items), e) + } + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("items")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.Items == nil { + r.EncodeNil() + } else { + yym16 := z.EncBinary() + _ = yym16 + if false { + } else { + h.encSliceNetworkPolicy(([]NetworkPolicy)(x.Items), e) + } + } + } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + z.EncSendContainerState(codecSelfer_containerMapEnd1234) + } + } + } +} + +func (x *NetworkPolicyList) CodecDecodeSelf(d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + yym1 := z.DecBinary() + _ = yym1 + if false { + } else if z.HasExtensions() && z.DecExt(x) { + } else { + yyct2 := r.ContainerType() + if yyct2 == codecSelferValueTypeMap1234 { + yyl2 := r.ReadMapStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerMapEnd1234) + } else { + x.codecDecodeSelfFromMap(yyl2, d) + } + } else if yyct2 == codecSelferValueTypeArray1234 { + yyl2 := r.ReadArrayStart() + if yyl2 == 0 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + } else { + x.codecDecodeSelfFromArray(yyl2, d) + } + } else { + panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) + } + } +} + +func (x *NetworkPolicyList) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yys3Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys3Slc + var yyhl3 bool = l >= 0 + for yyj3 := 0; ; yyj3++ { + if yyhl3 { + if yyj3 >= l { + break + } + } else { + if r.CheckBreak() { + break + } + } + z.DecSendContainerState(codecSelfer_containerMapKey1234) + yys3Slc = r.DecodeBytes(yys3Slc, true, true) + yys3 := string(yys3Slc) + z.DecSendContainerState(codecSelfer_containerMapValue1234) + switch yys3 { + case "kind": + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv4 := &x.Kind + yym5 := z.DecBinary() + _ = yym5 + if false { + } else { + *((*string)(yyv4)) = r.DecodeString() + } + } + case "apiVersion": + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv6 := &x.APIVersion + yym7 := z.DecBinary() + _ = yym7 + if false { + } else { + *((*string)(yyv6)) = r.DecodeString() + } + } + case "metadata": + if r.TryDecodeAsNil() { + x.ListMeta = pkg1_v1.ListMeta{} + } else { + yyv8 := &x.ListMeta + yym9 := z.DecBinary() + _ = yym9 + if false { + } else if z.HasExtensions() && z.DecExt(yyv8) { + } else { + z.DecFallback(yyv8, false) + } + } + case "items": + if r.TryDecodeAsNil() { + x.Items = nil + } else { + yyv10 := &x.Items + yym11 := z.DecBinary() + _ = yym11 + if false { + } else { + h.decSliceNetworkPolicy((*[]NetworkPolicy)(yyv10), d) + } + } + default: + z.DecStructFieldNotFound(-1, yys3) + } // end switch yys3 + } // end for yyj3 + z.DecSendContainerState(codecSelfer_containerMapEnd1234) +} + +func (x *NetworkPolicyList) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + var yyj12 int + var yyb12 bool + var yyhl12 bool = l >= 0 + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Kind = "" + } else { + yyv13 := &x.Kind + yym14 := z.DecBinary() + _ = yym14 + if false { + } else { + *((*string)(yyv13)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.APIVersion = "" + } else { + yyv15 := &x.APIVersion + yym16 := z.DecBinary() + _ = yym16 + if false { + } else { + *((*string)(yyv15)) = r.DecodeString() + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ListMeta = pkg1_v1.ListMeta{} + } else { + yyv17 := &x.ListMeta + yym18 := z.DecBinary() + _ = yym18 + if false { + } else if z.HasExtensions() && z.DecExt(yyv17) { + } else { + z.DecFallback(yyv17, false) + } + } + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.Items = nil + } else { + yyv19 := &x.Items + yym20 := z.DecBinary() + _ = yym20 + if false { + } else { + h.decSliceNetworkPolicy((*[]NetworkPolicy)(yyv19), d) + } + } + for { + yyj12++ + if yyhl12 { + yyb12 = yyj12 > l + } else { + yyb12 = r.CheckBreak() + } + if yyb12 { + break + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + z.DecStructFieldNotFound(yyj12-1, "") + } + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) encSliceNetworkPolicyIngressRule(v []NetworkPolicyIngressRule, e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + r.EncodeArrayStart(len(v)) + for _, yyv1 := range v { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy2 := &yyv1 + yy2.CodecEncodeSelf(e) + } + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) decSliceNetworkPolicyIngressRule(v *[]NetworkPolicyIngressRule, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + + yyv1 := *v + yyh1, yyl1 := z.DecSliceHelperStart() + var yyc1 bool + _ = yyc1 + if yyl1 == 0 { + if yyv1 == nil { + yyv1 = []NetworkPolicyIngressRule{} + yyc1 = true + } else if len(yyv1) != 0 { + yyv1 = yyv1[:0] + yyc1 = true + } + } else if yyl1 > 0 { + var yyrr1, yyrl1 int + var yyrt1 bool + _, _ = yyrl1, yyrt1 + yyrr1 = yyl1 // len(yyv1) + if yyl1 > cap(yyv1) { + + yyrg1 := len(yyv1) > 0 + yyv21 := yyv1 + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 48) + if yyrt1 { + if yyrl1 <= cap(yyv1) { + yyv1 = yyv1[:yyrl1] + } else { + yyv1 = make([]NetworkPolicyIngressRule, yyrl1) + } + } else { + yyv1 = make([]NetworkPolicyIngressRule, yyrl1) + } + yyc1 = true + yyrr1 = len(yyv1) + if yyrg1 { + copy(yyv1, yyv21) + } + } else if yyl1 != len(yyv1) { + yyv1 = yyv1[:yyl1] + yyc1 = true + } + yyj1 := 0 + for ; yyj1 < yyrr1; yyj1++ { + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = NetworkPolicyIngressRule{} + } else { + yyv2 := &yyv1[yyj1] + yyv2.CodecDecodeSelf(d) + } + + } + if yyrt1 { + for ; yyj1 < yyl1; yyj1++ { + yyv1 = append(yyv1, NetworkPolicyIngressRule{}) + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = NetworkPolicyIngressRule{} + } else { + yyv3 := &yyv1[yyj1] + yyv3.CodecDecodeSelf(d) + } + + } + } + + } else { + yyj1 := 0 + for ; !r.CheckBreak(); yyj1++ { + + if yyj1 >= len(yyv1) { + yyv1 = append(yyv1, NetworkPolicyIngressRule{}) // var yyz1 NetworkPolicyIngressRule + yyc1 = true + } + yyh1.ElemContainerState(yyj1) + if yyj1 < len(yyv1) { + if r.TryDecodeAsNil() { + yyv1[yyj1] = NetworkPolicyIngressRule{} + } else { + yyv4 := &yyv1[yyj1] + yyv4.CodecDecodeSelf(d) + } + + } else { + z.DecSwallow() + } + + } + if yyj1 < len(yyv1) { + yyv1 = yyv1[:yyj1] + yyc1 = true + } else if yyj1 == 0 && yyv1 == nil { + yyv1 = []NetworkPolicyIngressRule{} + yyc1 = true + } + } + yyh1.End() + if yyc1 { + *v = yyv1 + } +} + +func (x codecSelfer1234) encSliceNetworkPolicyPort(v []NetworkPolicyPort, e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + r.EncodeArrayStart(len(v)) + for _, yyv1 := range v { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy2 := &yyv1 + yy2.CodecEncodeSelf(e) + } + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) decSliceNetworkPolicyPort(v *[]NetworkPolicyPort, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + + yyv1 := *v + yyh1, yyl1 := z.DecSliceHelperStart() + var yyc1 bool + _ = yyc1 + if yyl1 == 0 { + if yyv1 == nil { + yyv1 = []NetworkPolicyPort{} + yyc1 = true + } else if len(yyv1) != 0 { + yyv1 = yyv1[:0] + yyc1 = true + } + } else if yyl1 > 0 { + var yyrr1, yyrl1 int + var yyrt1 bool + _, _ = yyrl1, yyrt1 + yyrr1 = yyl1 // len(yyv1) + if yyl1 > cap(yyv1) { + + yyrg1 := len(yyv1) > 0 + yyv21 := yyv1 + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 16) + if yyrt1 { + if yyrl1 <= cap(yyv1) { + yyv1 = yyv1[:yyrl1] + } else { + yyv1 = make([]NetworkPolicyPort, yyrl1) + } + } else { + yyv1 = make([]NetworkPolicyPort, yyrl1) + } + yyc1 = true + yyrr1 = len(yyv1) + if yyrg1 { + copy(yyv1, yyv21) + } + } else if yyl1 != len(yyv1) { + yyv1 = yyv1[:yyl1] + yyc1 = true + } + yyj1 := 0 + for ; yyj1 < yyrr1; yyj1++ { + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = NetworkPolicyPort{} + } else { + yyv2 := &yyv1[yyj1] + yyv2.CodecDecodeSelf(d) + } + + } + if yyrt1 { + for ; yyj1 < yyl1; yyj1++ { + yyv1 = append(yyv1, NetworkPolicyPort{}) + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = NetworkPolicyPort{} + } else { + yyv3 := &yyv1[yyj1] + yyv3.CodecDecodeSelf(d) + } + + } + } + + } else { + yyj1 := 0 + for ; !r.CheckBreak(); yyj1++ { + + if yyj1 >= len(yyv1) { + yyv1 = append(yyv1, NetworkPolicyPort{}) // var yyz1 NetworkPolicyPort + yyc1 = true + } + yyh1.ElemContainerState(yyj1) + if yyj1 < len(yyv1) { + if r.TryDecodeAsNil() { + yyv1[yyj1] = NetworkPolicyPort{} + } else { + yyv4 := &yyv1[yyj1] + yyv4.CodecDecodeSelf(d) + } + + } else { + z.DecSwallow() + } + + } + if yyj1 < len(yyv1) { + yyv1 = yyv1[:yyj1] + yyc1 = true + } else if yyj1 == 0 && yyv1 == nil { + yyv1 = []NetworkPolicyPort{} + yyc1 = true + } + } + yyh1.End() + if yyc1 { + *v = yyv1 + } +} + +func (x codecSelfer1234) encSliceNetworkPolicyPeer(v []NetworkPolicyPeer, e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + r.EncodeArrayStart(len(v)) + for _, yyv1 := range v { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy2 := &yyv1 + yy2.CodecEncodeSelf(e) + } + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) decSliceNetworkPolicyPeer(v *[]NetworkPolicyPeer, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + + yyv1 := *v + yyh1, yyl1 := z.DecSliceHelperStart() + var yyc1 bool + _ = yyc1 + if yyl1 == 0 { + if yyv1 == nil { + yyv1 = []NetworkPolicyPeer{} + yyc1 = true + } else if len(yyv1) != 0 { + yyv1 = yyv1[:0] + yyc1 = true + } + } else if yyl1 > 0 { + var yyrr1, yyrl1 int + var yyrt1 bool + _, _ = yyrl1, yyrt1 + yyrr1 = yyl1 // len(yyv1) + if yyl1 > cap(yyv1) { + + yyrg1 := len(yyv1) > 0 + yyv21 := yyv1 + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 16) + if yyrt1 { + if yyrl1 <= cap(yyv1) { + yyv1 = yyv1[:yyrl1] + } else { + yyv1 = make([]NetworkPolicyPeer, yyrl1) + } + } else { + yyv1 = make([]NetworkPolicyPeer, yyrl1) + } + yyc1 = true + yyrr1 = len(yyv1) + if yyrg1 { + copy(yyv1, yyv21) + } + } else if yyl1 != len(yyv1) { + yyv1 = yyv1[:yyl1] + yyc1 = true + } + yyj1 := 0 + for ; yyj1 < yyrr1; yyj1++ { + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = NetworkPolicyPeer{} + } else { + yyv2 := &yyv1[yyj1] + yyv2.CodecDecodeSelf(d) + } + + } + if yyrt1 { + for ; yyj1 < yyl1; yyj1++ { + yyv1 = append(yyv1, NetworkPolicyPeer{}) + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = NetworkPolicyPeer{} + } else { + yyv3 := &yyv1[yyj1] + yyv3.CodecDecodeSelf(d) + } + + } + } + + } else { + yyj1 := 0 + for ; !r.CheckBreak(); yyj1++ { + + if yyj1 >= len(yyv1) { + yyv1 = append(yyv1, NetworkPolicyPeer{}) // var yyz1 NetworkPolicyPeer + yyc1 = true + } + yyh1.ElemContainerState(yyj1) + if yyj1 < len(yyv1) { + if r.TryDecodeAsNil() { + yyv1[yyj1] = NetworkPolicyPeer{} + } else { + yyv4 := &yyv1[yyj1] + yyv4.CodecDecodeSelf(d) + } + + } else { + z.DecSwallow() + } + + } + if yyj1 < len(yyv1) { + yyv1 = yyv1[:yyj1] + yyc1 = true + } else if yyj1 == 0 && yyv1 == nil { + yyv1 = []NetworkPolicyPeer{} + yyc1 = true + } + } + yyh1.End() + if yyc1 { + *v = yyv1 + } +} + +func (x codecSelfer1234) encSliceNetworkPolicy(v []NetworkPolicy, e *codec1978.Encoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperEncoder(e) + _, _, _ = h, z, r + r.EncodeArrayStart(len(v)) + for _, yyv1 := range v { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy2 := &yyv1 + yy2.CodecEncodeSelf(e) + } + z.EncSendContainerState(codecSelfer_containerArrayEnd1234) +} + +func (x codecSelfer1234) decSliceNetworkPolicy(v *[]NetworkPolicy, d *codec1978.Decoder) { + var h codecSelfer1234 + z, r := codec1978.GenHelperDecoder(d) + _, _, _ = h, z, r + + yyv1 := *v + yyh1, yyl1 := z.DecSliceHelperStart() + var yyc1 bool + _ = yyc1 + if yyl1 == 0 { + if yyv1 == nil { + yyv1 = []NetworkPolicy{} + yyc1 = true + } else if len(yyv1) != 0 { + yyv1 = yyv1[:0] + yyc1 = true + } + } else if yyl1 > 0 { + var yyrr1, yyrl1 int + var yyrt1 bool + _, _ = yyrl1, yyrt1 + yyrr1 = yyl1 // len(yyv1) + if yyl1 > cap(yyv1) { + + yyrg1 := len(yyv1) > 0 + yyv21 := yyv1 + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 320) + if yyrt1 { + if yyrl1 <= cap(yyv1) { + yyv1 = yyv1[:yyrl1] + } else { + yyv1 = make([]NetworkPolicy, yyrl1) + } + } else { + yyv1 = make([]NetworkPolicy, yyrl1) + } + yyc1 = true + yyrr1 = len(yyv1) + if yyrg1 { + copy(yyv1, yyv21) + } + } else if yyl1 != len(yyv1) { + yyv1 = yyv1[:yyl1] + yyc1 = true + } + yyj1 := 0 + for ; yyj1 < yyrr1; yyj1++ { + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = NetworkPolicy{} + } else { + yyv2 := &yyv1[yyj1] + yyv2.CodecDecodeSelf(d) + } + + } + if yyrt1 { + for ; yyj1 < yyl1; yyj1++ { + yyv1 = append(yyv1, NetworkPolicy{}) + yyh1.ElemContainerState(yyj1) + if r.TryDecodeAsNil() { + yyv1[yyj1] = NetworkPolicy{} + } else { + yyv3 := &yyv1[yyj1] + yyv3.CodecDecodeSelf(d) + } + + } + } + + } else { + yyj1 := 0 + for ; !r.CheckBreak(); yyj1++ { + + if yyj1 >= len(yyv1) { + yyv1 = append(yyv1, NetworkPolicy{}) // var yyz1 NetworkPolicy + yyc1 = true + } + yyh1.ElemContainerState(yyj1) + if yyj1 < len(yyv1) { + if r.TryDecodeAsNil() { + yyv1[yyj1] = NetworkPolicy{} + } else { + yyv4 := &yyv1[yyj1] + yyv4.CodecDecodeSelf(d) + } + + } else { + z.DecSwallow() + } + + } + if yyj1 < len(yyv1) { + yyv1 = yyv1[:yyj1] + yyc1 = true + } else if yyj1 == 0 && yyv1 == nil { + yyv1 = []NetworkPolicy{} + yyc1 = true + } + } + yyh1.End() + if yyc1 { + *v = yyv1 + } +} diff --git a/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/types.go b/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/types.go new file mode 100644 index 00000000..b02593f9 --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/types.go @@ -0,0 +1,120 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +import ( + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/util/intstr" + "k8s.io/kubernetes/pkg/api/v1" +) + +// +genclient=true + +// NetworkPolicy describes what network traffic is allowed for a set of Pods +type NetworkPolicy struct { + metav1.TypeMeta `json:",inline"` + // Standard object's metadata. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + // +optional + metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` + + // Specification of the desired behavior for this NetworkPolicy. + // +optional + Spec NetworkPolicySpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` +} + +// NetworkPolicySpec provides the specification of a NetworkPolicy +type NetworkPolicySpec struct { + // Selects the pods to which this NetworkPolicy object applies. The array of + // ingress rules is applied to any pods selected by this field. Multiple network + // policies can select the same set of pods. In this case, the ingress rules for + // each are combined additively. This field is NOT optional and follows standard + // label selector semantics. An empty podSelector matches all pods in this + // namespace. + PodSelector metav1.LabelSelector `json:"podSelector" protobuf:"bytes,1,opt,name=podSelector"` + + // List of ingress rules to be applied to the selected pods. Traffic is allowed to + // a pod if there are no NetworkPolicies selecting the pod + // (and cluster policy otherwise allows the traffic), OR if the traffic source is + // the pod's local node, OR if the traffic matches at least one ingress rule + // across all of the NetworkPolicy objects whose podSelector matches the pod. If + // this field is empty then this NetworkPolicy does not allow any traffic (and serves + // solely to ensure that the pods it selects are isolated by default) + // +optional + Ingress []NetworkPolicyIngressRule `json:"ingress,omitempty" protobuf:"bytes,2,rep,name=ingress"` +} + +// NetworkPolicyIngressRule describes a particular set of traffic that is allowed to the pods +// matched by a NetworkPolicySpec's podSelector. The traffic must match both ports and from. +type NetworkPolicyIngressRule struct { + // List of ports which should be made accessible on the pods selected for this + // rule. Each item in this list is combined using a logical OR. If this field is + // empty or missing, this rule matches all ports (traffic not restricted by port). + // If this field is present and contains at least one item, then this rule allows + // traffic only if the traffic matches at least one port in the list. + // +optional + Ports []NetworkPolicyPort `json:"ports,omitempty" protobuf:"bytes,1,rep,name=ports"` + + // List of sources which should be able to access the pods selected for this rule. + // Items in this list are combined using a logical OR operation. If this field is + // empty or missing, this rule matches all sources (traffic not restricted by + // source). If this field is present and contains at least on item, this rule + // allows traffic only if the traffic matches at least one item in the from list. + // +optional + From []NetworkPolicyPeer `json:"from,omitempty" protobuf:"bytes,2,rep,name=from"` +} + +// NetworkPolicyPort describes a port to allow traffic on +type NetworkPolicyPort struct { + // The protocol (TCP or UDP) which traffic must match. If not specified, this + // field defaults to TCP. + // +optional + Protocol *v1.Protocol `json:"protocol,omitempty" protobuf:"bytes,1,opt,name=protocol,casttype=k8s.io/kubernetes/pkg/api/v1.Protocol"` + + // The port on the given protocol. This can either be a numerical or named port on + // a pod. If this field is not provided, this matches all port names and numbers. + // +optional + Port *intstr.IntOrString `json:"port,omitempty" protobuf:"bytes,2,opt,name=port"` +} + +// NetworkPolicyPeer describes a peer to allow traffic from. Exactly one of its fields +// must be specified. +type NetworkPolicyPeer struct { + // This is a label selector which selects Pods in this namespace. This field + // follows standard label selector semantics. If present but empty, this selector + // selects all pods in this namespace. + // +optional + PodSelector *metav1.LabelSelector `json:"podSelector,omitempty" protobuf:"bytes,1,opt,name=podSelector"` + + // Selects Namespaces using cluster scoped-labels. This matches all pods in all + // namespaces selected by this label selector. This field follows standard label + // selector semantics. If present but empty, this selector selects all namespaces. + // +optional + NamespaceSelector *metav1.LabelSelector `json:"namespaceSelector,omitempty" protobuf:"bytes,2,opt,name=namespaceSelector"` +} + +// NetworkPolicyList is a list of NetworkPolicy objects. +type NetworkPolicyList struct { + metav1.TypeMeta `json:",inline"` + // Standard list metadata. + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + // +optional + metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` + + // Items is a list of schema objects. + Items []NetworkPolicy `json:"items" protobuf:"bytes,2,rep,name=items"` +} diff --git a/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/types_swagger_doc_generated.go b/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/types_swagger_doc_generated.go new file mode 100644 index 00000000..c3c91163 --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/types_swagger_doc_generated.go @@ -0,0 +1,90 @@ +/* +Copyright 2016 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +// This file contains a collection of methods that can be used from go-restful to +// generate Swagger API documentation for its models. Please read this PR for more +// information on the implementation: https://github.com/emicklei/go-restful/pull/215 +// +// TODOs are ignored from the parser (e.g. TODO(andronat):... || TODO:...) if and only if +// they are on one line! For multiple line or blocks that you want to ignore use ---. +// Any context after a --- is ignored. +// +// Those methods can be generated by using hack/update-generated-swagger-docs.sh + +// AUTO-GENERATED FUNCTIONS START HERE +var map_NetworkPolicy = map[string]string{ + "": "NetworkPolicy describes what network traffic is allowed for a set of Pods", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "spec": "Specification of the desired behavior for this NetworkPolicy.", +} + +func (NetworkPolicy) SwaggerDoc() map[string]string { + return map_NetworkPolicy +} + +var map_NetworkPolicyIngressRule = map[string]string{ + "": "NetworkPolicyIngressRule describes a particular set of traffic that is allowed to the pods matched by a NetworkPolicySpec's podSelector. The traffic must match both ports and from.", + "ports": "List of ports which should be made accessible on the pods selected for this rule. Each item in this list is combined using a logical OR. If this field is empty or missing, this rule matches all ports (traffic not restricted by port). If this field is present and contains at least one item, then this rule allows traffic only if the traffic matches at least one port in the list.", + "from": "List of sources which should be able to access the pods selected for this rule. Items in this list are combined using a logical OR operation. If this field is empty or missing, this rule matches all sources (traffic not restricted by source). If this field is present and contains at least on item, this rule allows traffic only if the traffic matches at least one item in the from list.", +} + +func (NetworkPolicyIngressRule) SwaggerDoc() map[string]string { + return map_NetworkPolicyIngressRule +} + +var map_NetworkPolicyList = map[string]string{ + "": "NetworkPolicyList is a list of NetworkPolicy objects.", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", + "items": "Items is a list of schema objects.", +} + +func (NetworkPolicyList) SwaggerDoc() map[string]string { + return map_NetworkPolicyList +} + +var map_NetworkPolicyPeer = map[string]string{ + "": "NetworkPolicyPeer describes a peer to allow traffic from. Exactly one of its fields must be specified.", + "podSelector": "This is a label selector which selects Pods in this namespace. This field follows standard label selector semantics. If present but empty, this selector selects all pods in this namespace.", + "namespaceSelector": "Selects Namespaces using cluster scoped-labels. This matches all pods in all namespaces selected by this label selector. This field follows standard label selector semantics. If present but empty, this selector selects all namespaces.", +} + +func (NetworkPolicyPeer) SwaggerDoc() map[string]string { + return map_NetworkPolicyPeer +} + +var map_NetworkPolicyPort = map[string]string{ + "": "NetworkPolicyPort describes a port to allow traffic on", + "protocol": "The protocol (TCP or UDP) which traffic must match. If not specified, this field defaults to TCP.", + "port": "The port on the given protocol. This can either be a numerical or named port on a pod. If this field is not provided, this matches all port names and numbers.", +} + +func (NetworkPolicyPort) SwaggerDoc() map[string]string { + return map_NetworkPolicyPort +} + +var map_NetworkPolicySpec = map[string]string{ + "": "NetworkPolicySpec provides the specification of a NetworkPolicy", + "podSelector": "Selects the pods to which this NetworkPolicy object applies. The array of ingress rules is applied to any pods selected by this field. Multiple network policies can select the same set of pods. In this case, the ingress rules for each are combined additively. This field is NOT optional and follows standard label selector semantics. An empty podSelector matches all pods in this namespace.", + "ingress": "List of ingress rules to be applied to the selected pods. Traffic is allowed to a pod if there are no NetworkPolicies selecting the pod (and cluster policy otherwise allows the traffic), OR if the traffic source is the pod's local node, OR if the traffic matches at least one ingress rule across all of the NetworkPolicy objects whose podSelector matches the pod. If this field is empty then this NetworkPolicy does not allow any traffic (and serves solely to ensure that the pods it selects are isolated by default)", +} + +func (NetworkPolicySpec) SwaggerDoc() map[string]string { + return map_NetworkPolicySpec +} + +// AUTO-GENERATED FUNCTIONS END HERE diff --git a/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/zz_generated.conversion.go b/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/zz_generated.conversion.go new file mode 100644 index 00000000..b011eb90 --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/zz_generated.conversion.go @@ -0,0 +1,195 @@ +// +build !ignore_autogenerated + +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This file was autogenerated by conversion-gen. Do not edit it manually! + +package v1 + +import ( + meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + conversion "k8s.io/apimachinery/pkg/conversion" + runtime "k8s.io/apimachinery/pkg/runtime" + intstr "k8s.io/apimachinery/pkg/util/intstr" + api "k8s.io/kubernetes/pkg/api" + api_v1 "k8s.io/kubernetes/pkg/api/v1" + networking "k8s.io/kubernetes/pkg/apis/networking" + unsafe "unsafe" +) + +func init() { + SchemeBuilder.Register(RegisterConversions) +} + +// RegisterConversions adds conversion functions to the given scheme. +// Public to allow building arbitrary schemes. +func RegisterConversions(scheme *runtime.Scheme) error { + return scheme.AddGeneratedConversionFuncs( + Convert_v1_NetworkPolicy_To_networking_NetworkPolicy, + Convert_networking_NetworkPolicy_To_v1_NetworkPolicy, + Convert_v1_NetworkPolicyIngressRule_To_networking_NetworkPolicyIngressRule, + Convert_networking_NetworkPolicyIngressRule_To_v1_NetworkPolicyIngressRule, + Convert_v1_NetworkPolicyList_To_networking_NetworkPolicyList, + Convert_networking_NetworkPolicyList_To_v1_NetworkPolicyList, + Convert_v1_NetworkPolicyPeer_To_networking_NetworkPolicyPeer, + Convert_networking_NetworkPolicyPeer_To_v1_NetworkPolicyPeer, + Convert_v1_NetworkPolicyPort_To_networking_NetworkPolicyPort, + Convert_networking_NetworkPolicyPort_To_v1_NetworkPolicyPort, + Convert_v1_NetworkPolicySpec_To_networking_NetworkPolicySpec, + Convert_networking_NetworkPolicySpec_To_v1_NetworkPolicySpec, + ) +} + +func autoConvert_v1_NetworkPolicy_To_networking_NetworkPolicy(in *NetworkPolicy, out *networking.NetworkPolicy, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + if err := Convert_v1_NetworkPolicySpec_To_networking_NetworkPolicySpec(&in.Spec, &out.Spec, s); err != nil { + return err + } + return nil +} + +// Convert_v1_NetworkPolicy_To_networking_NetworkPolicy is an autogenerated conversion function. +func Convert_v1_NetworkPolicy_To_networking_NetworkPolicy(in *NetworkPolicy, out *networking.NetworkPolicy, s conversion.Scope) error { + return autoConvert_v1_NetworkPolicy_To_networking_NetworkPolicy(in, out, s) +} + +func autoConvert_networking_NetworkPolicy_To_v1_NetworkPolicy(in *networking.NetworkPolicy, out *NetworkPolicy, s conversion.Scope) error { + out.ObjectMeta = in.ObjectMeta + if err := Convert_networking_NetworkPolicySpec_To_v1_NetworkPolicySpec(&in.Spec, &out.Spec, s); err != nil { + return err + } + return nil +} + +// Convert_networking_NetworkPolicy_To_v1_NetworkPolicy is an autogenerated conversion function. +func Convert_networking_NetworkPolicy_To_v1_NetworkPolicy(in *networking.NetworkPolicy, out *NetworkPolicy, s conversion.Scope) error { + return autoConvert_networking_NetworkPolicy_To_v1_NetworkPolicy(in, out, s) +} + +func autoConvert_v1_NetworkPolicyIngressRule_To_networking_NetworkPolicyIngressRule(in *NetworkPolicyIngressRule, out *networking.NetworkPolicyIngressRule, s conversion.Scope) error { + out.Ports = *(*[]networking.NetworkPolicyPort)(unsafe.Pointer(&in.Ports)) + out.From = *(*[]networking.NetworkPolicyPeer)(unsafe.Pointer(&in.From)) + return nil +} + +// Convert_v1_NetworkPolicyIngressRule_To_networking_NetworkPolicyIngressRule is an autogenerated conversion function. +func Convert_v1_NetworkPolicyIngressRule_To_networking_NetworkPolicyIngressRule(in *NetworkPolicyIngressRule, out *networking.NetworkPolicyIngressRule, s conversion.Scope) error { + return autoConvert_v1_NetworkPolicyIngressRule_To_networking_NetworkPolicyIngressRule(in, out, s) +} + +func autoConvert_networking_NetworkPolicyIngressRule_To_v1_NetworkPolicyIngressRule(in *networking.NetworkPolicyIngressRule, out *NetworkPolicyIngressRule, s conversion.Scope) error { + out.Ports = *(*[]NetworkPolicyPort)(unsafe.Pointer(&in.Ports)) + out.From = *(*[]NetworkPolicyPeer)(unsafe.Pointer(&in.From)) + return nil +} + +// Convert_networking_NetworkPolicyIngressRule_To_v1_NetworkPolicyIngressRule is an autogenerated conversion function. +func Convert_networking_NetworkPolicyIngressRule_To_v1_NetworkPolicyIngressRule(in *networking.NetworkPolicyIngressRule, out *NetworkPolicyIngressRule, s conversion.Scope) error { + return autoConvert_networking_NetworkPolicyIngressRule_To_v1_NetworkPolicyIngressRule(in, out, s) +} + +func autoConvert_v1_NetworkPolicyList_To_networking_NetworkPolicyList(in *NetworkPolicyList, out *networking.NetworkPolicyList, s conversion.Scope) error { + out.ListMeta = in.ListMeta + out.Items = *(*[]networking.NetworkPolicy)(unsafe.Pointer(&in.Items)) + return nil +} + +// Convert_v1_NetworkPolicyList_To_networking_NetworkPolicyList is an autogenerated conversion function. +func Convert_v1_NetworkPolicyList_To_networking_NetworkPolicyList(in *NetworkPolicyList, out *networking.NetworkPolicyList, s conversion.Scope) error { + return autoConvert_v1_NetworkPolicyList_To_networking_NetworkPolicyList(in, out, s) +} + +func autoConvert_networking_NetworkPolicyList_To_v1_NetworkPolicyList(in *networking.NetworkPolicyList, out *NetworkPolicyList, s conversion.Scope) error { + out.ListMeta = in.ListMeta + if in.Items == nil { + out.Items = make([]NetworkPolicy, 0) + } else { + out.Items = *(*[]NetworkPolicy)(unsafe.Pointer(&in.Items)) + } + return nil +} + +// Convert_networking_NetworkPolicyList_To_v1_NetworkPolicyList is an autogenerated conversion function. +func Convert_networking_NetworkPolicyList_To_v1_NetworkPolicyList(in *networking.NetworkPolicyList, out *NetworkPolicyList, s conversion.Scope) error { + return autoConvert_networking_NetworkPolicyList_To_v1_NetworkPolicyList(in, out, s) +} + +func autoConvert_v1_NetworkPolicyPeer_To_networking_NetworkPolicyPeer(in *NetworkPolicyPeer, out *networking.NetworkPolicyPeer, s conversion.Scope) error { + out.PodSelector = (*meta_v1.LabelSelector)(unsafe.Pointer(in.PodSelector)) + out.NamespaceSelector = (*meta_v1.LabelSelector)(unsafe.Pointer(in.NamespaceSelector)) + return nil +} + +// Convert_v1_NetworkPolicyPeer_To_networking_NetworkPolicyPeer is an autogenerated conversion function. +func Convert_v1_NetworkPolicyPeer_To_networking_NetworkPolicyPeer(in *NetworkPolicyPeer, out *networking.NetworkPolicyPeer, s conversion.Scope) error { + return autoConvert_v1_NetworkPolicyPeer_To_networking_NetworkPolicyPeer(in, out, s) +} + +func autoConvert_networking_NetworkPolicyPeer_To_v1_NetworkPolicyPeer(in *networking.NetworkPolicyPeer, out *NetworkPolicyPeer, s conversion.Scope) error { + out.PodSelector = (*meta_v1.LabelSelector)(unsafe.Pointer(in.PodSelector)) + out.NamespaceSelector = (*meta_v1.LabelSelector)(unsafe.Pointer(in.NamespaceSelector)) + return nil +} + +// Convert_networking_NetworkPolicyPeer_To_v1_NetworkPolicyPeer is an autogenerated conversion function. +func Convert_networking_NetworkPolicyPeer_To_v1_NetworkPolicyPeer(in *networking.NetworkPolicyPeer, out *NetworkPolicyPeer, s conversion.Scope) error { + return autoConvert_networking_NetworkPolicyPeer_To_v1_NetworkPolicyPeer(in, out, s) +} + +func autoConvert_v1_NetworkPolicyPort_To_networking_NetworkPolicyPort(in *NetworkPolicyPort, out *networking.NetworkPolicyPort, s conversion.Scope) error { + out.Protocol = (*api.Protocol)(unsafe.Pointer(in.Protocol)) + out.Port = (*intstr.IntOrString)(unsafe.Pointer(in.Port)) + return nil +} + +// Convert_v1_NetworkPolicyPort_To_networking_NetworkPolicyPort is an autogenerated conversion function. +func Convert_v1_NetworkPolicyPort_To_networking_NetworkPolicyPort(in *NetworkPolicyPort, out *networking.NetworkPolicyPort, s conversion.Scope) error { + return autoConvert_v1_NetworkPolicyPort_To_networking_NetworkPolicyPort(in, out, s) +} + +func autoConvert_networking_NetworkPolicyPort_To_v1_NetworkPolicyPort(in *networking.NetworkPolicyPort, out *NetworkPolicyPort, s conversion.Scope) error { + out.Protocol = (*api_v1.Protocol)(unsafe.Pointer(in.Protocol)) + out.Port = (*intstr.IntOrString)(unsafe.Pointer(in.Port)) + return nil +} + +// Convert_networking_NetworkPolicyPort_To_v1_NetworkPolicyPort is an autogenerated conversion function. +func Convert_networking_NetworkPolicyPort_To_v1_NetworkPolicyPort(in *networking.NetworkPolicyPort, out *NetworkPolicyPort, s conversion.Scope) error { + return autoConvert_networking_NetworkPolicyPort_To_v1_NetworkPolicyPort(in, out, s) +} + +func autoConvert_v1_NetworkPolicySpec_To_networking_NetworkPolicySpec(in *NetworkPolicySpec, out *networking.NetworkPolicySpec, s conversion.Scope) error { + out.PodSelector = in.PodSelector + out.Ingress = *(*[]networking.NetworkPolicyIngressRule)(unsafe.Pointer(&in.Ingress)) + return nil +} + +// Convert_v1_NetworkPolicySpec_To_networking_NetworkPolicySpec is an autogenerated conversion function. +func Convert_v1_NetworkPolicySpec_To_networking_NetworkPolicySpec(in *NetworkPolicySpec, out *networking.NetworkPolicySpec, s conversion.Scope) error { + return autoConvert_v1_NetworkPolicySpec_To_networking_NetworkPolicySpec(in, out, s) +} + +func autoConvert_networking_NetworkPolicySpec_To_v1_NetworkPolicySpec(in *networking.NetworkPolicySpec, out *NetworkPolicySpec, s conversion.Scope) error { + out.PodSelector = in.PodSelector + out.Ingress = *(*[]NetworkPolicyIngressRule)(unsafe.Pointer(&in.Ingress)) + return nil +} + +// Convert_networking_NetworkPolicySpec_To_v1_NetworkPolicySpec is an autogenerated conversion function. +func Convert_networking_NetworkPolicySpec_To_v1_NetworkPolicySpec(in *networking.NetworkPolicySpec, out *NetworkPolicySpec, s conversion.Scope) error { + return autoConvert_networking_NetworkPolicySpec_To_v1_NetworkPolicySpec(in, out, s) +} diff --git a/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/zz_generated.deepcopy.go new file mode 100644 index 00000000..38ef8834 --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/zz_generated.deepcopy.go @@ -0,0 +1,182 @@ +// +build !ignore_autogenerated + +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This file was autogenerated by deepcopy-gen. Do not edit it manually! + +package v1 + +import ( + meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + conversion "k8s.io/apimachinery/pkg/conversion" + runtime "k8s.io/apimachinery/pkg/runtime" + intstr "k8s.io/apimachinery/pkg/util/intstr" + api_v1 "k8s.io/kubernetes/pkg/api/v1" + reflect "reflect" +) + +func init() { + SchemeBuilder.Register(RegisterDeepCopies) +} + +// RegisterDeepCopies adds deep-copy functions to the given scheme. Public +// to allow building arbitrary schemes. +func RegisterDeepCopies(scheme *runtime.Scheme) error { + return scheme.AddGeneratedDeepCopyFuncs( + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_NetworkPolicy, InType: reflect.TypeOf(&NetworkPolicy{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_NetworkPolicyIngressRule, InType: reflect.TypeOf(&NetworkPolicyIngressRule{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_NetworkPolicyList, InType: reflect.TypeOf(&NetworkPolicyList{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_NetworkPolicyPeer, InType: reflect.TypeOf(&NetworkPolicyPeer{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_NetworkPolicyPort, InType: reflect.TypeOf(&NetworkPolicyPort{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_NetworkPolicySpec, InType: reflect.TypeOf(&NetworkPolicySpec{})}, + ) +} + +// DeepCopy_v1_NetworkPolicy is an autogenerated deepcopy function. +func DeepCopy_v1_NetworkPolicy(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*NetworkPolicy) + out := out.(*NetworkPolicy) + *out = *in + if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { + return err + } else { + out.ObjectMeta = *newVal.(*meta_v1.ObjectMeta) + } + if err := DeepCopy_v1_NetworkPolicySpec(&in.Spec, &out.Spec, c); err != nil { + return err + } + return nil + } +} + +// DeepCopy_v1_NetworkPolicyIngressRule is an autogenerated deepcopy function. +func DeepCopy_v1_NetworkPolicyIngressRule(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*NetworkPolicyIngressRule) + out := out.(*NetworkPolicyIngressRule) + *out = *in + if in.Ports != nil { + in, out := &in.Ports, &out.Ports + *out = make([]NetworkPolicyPort, len(*in)) + for i := range *in { + if err := DeepCopy_v1_NetworkPolicyPort(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + if in.From != nil { + in, out := &in.From, &out.From + *out = make([]NetworkPolicyPeer, len(*in)) + for i := range *in { + if err := DeepCopy_v1_NetworkPolicyPeer(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} + +// DeepCopy_v1_NetworkPolicyList is an autogenerated deepcopy function. +func DeepCopy_v1_NetworkPolicyList(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*NetworkPolicyList) + out := out.(*NetworkPolicyList) + *out = *in + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]NetworkPolicy, len(*in)) + for i := range *in { + if err := DeepCopy_v1_NetworkPolicy(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} + +// DeepCopy_v1_NetworkPolicyPeer is an autogenerated deepcopy function. +func DeepCopy_v1_NetworkPolicyPeer(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*NetworkPolicyPeer) + out := out.(*NetworkPolicyPeer) + *out = *in + if in.PodSelector != nil { + in, out := &in.PodSelector, &out.PodSelector + if newVal, err := c.DeepCopy(*in); err != nil { + return err + } else { + *out = newVal.(*meta_v1.LabelSelector) + } + } + if in.NamespaceSelector != nil { + in, out := &in.NamespaceSelector, &out.NamespaceSelector + if newVal, err := c.DeepCopy(*in); err != nil { + return err + } else { + *out = newVal.(*meta_v1.LabelSelector) + } + } + return nil + } +} + +// DeepCopy_v1_NetworkPolicyPort is an autogenerated deepcopy function. +func DeepCopy_v1_NetworkPolicyPort(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*NetworkPolicyPort) + out := out.(*NetworkPolicyPort) + *out = *in + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(api_v1.Protocol) + **out = **in + } + if in.Port != nil { + in, out := &in.Port, &out.Port + *out = new(intstr.IntOrString) + **out = **in + } + return nil + } +} + +// DeepCopy_v1_NetworkPolicySpec is an autogenerated deepcopy function. +func DeepCopy_v1_NetworkPolicySpec(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*NetworkPolicySpec) + out := out.(*NetworkPolicySpec) + *out = *in + if newVal, err := c.DeepCopy(&in.PodSelector); err != nil { + return err + } else { + out.PodSelector = *newVal.(*meta_v1.LabelSelector) + } + if in.Ingress != nil { + in, out := &in.Ingress, &out.Ingress + *out = make([]NetworkPolicyIngressRule, len(*in)) + for i := range *in { + if err := DeepCopy_v1_NetworkPolicyIngressRule(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} diff --git a/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/zz_generated.defaults.go b/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/zz_generated.defaults.go new file mode 100644 index 00000000..0319c88a --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/apis/networking/v1/zz_generated.defaults.go @@ -0,0 +1,51 @@ +// +build !ignore_autogenerated + +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This file was autogenerated by defaulter-gen. Do not edit it manually! + +package v1 + +import ( + runtime "k8s.io/apimachinery/pkg/runtime" +) + +// RegisterDefaults adds defaulters functions to the given scheme. +// Public to allow building arbitrary schemes. +// All generated defaulters are covering - they call all nested defaulters. +func RegisterDefaults(scheme *runtime.Scheme) error { + scheme.AddTypeDefaultingFunc(&NetworkPolicy{}, func(obj interface{}) { SetObjectDefaults_NetworkPolicy(obj.(*NetworkPolicy)) }) + scheme.AddTypeDefaultingFunc(&NetworkPolicyList{}, func(obj interface{}) { SetObjectDefaults_NetworkPolicyList(obj.(*NetworkPolicyList)) }) + return nil +} + +func SetObjectDefaults_NetworkPolicy(in *NetworkPolicy) { + for i := range in.Spec.Ingress { + a := &in.Spec.Ingress[i] + for j := range a.Ports { + b := &a.Ports[j] + SetDefaults_NetworkPolicyPort(b) + } + } +} + +func SetObjectDefaults_NetworkPolicyList(in *NetworkPolicyList) { + for i := range in.Items { + a := &in.Items[i] + SetObjectDefaults_NetworkPolicy(a) + } +} diff --git a/vendor/k8s.io/kubernetes/pkg/apis/networking/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/networking/zz_generated.deepcopy.go new file mode 100644 index 00000000..0cec2622 --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/apis/networking/zz_generated.deepcopy.go @@ -0,0 +1,182 @@ +// +build !ignore_autogenerated + +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This file was autogenerated by deepcopy-gen. Do not edit it manually! + +package networking + +import ( + v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + conversion "k8s.io/apimachinery/pkg/conversion" + runtime "k8s.io/apimachinery/pkg/runtime" + intstr "k8s.io/apimachinery/pkg/util/intstr" + api "k8s.io/kubernetes/pkg/api" + reflect "reflect" +) + +func init() { + SchemeBuilder.Register(RegisterDeepCopies) +} + +// RegisterDeepCopies adds deep-copy functions to the given scheme. Public +// to allow building arbitrary schemes. +func RegisterDeepCopies(scheme *runtime.Scheme) error { + return scheme.AddGeneratedDeepCopyFuncs( + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_networking_NetworkPolicy, InType: reflect.TypeOf(&NetworkPolicy{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_networking_NetworkPolicyIngressRule, InType: reflect.TypeOf(&NetworkPolicyIngressRule{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_networking_NetworkPolicyList, InType: reflect.TypeOf(&NetworkPolicyList{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_networking_NetworkPolicyPeer, InType: reflect.TypeOf(&NetworkPolicyPeer{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_networking_NetworkPolicyPort, InType: reflect.TypeOf(&NetworkPolicyPort{})}, + conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_networking_NetworkPolicySpec, InType: reflect.TypeOf(&NetworkPolicySpec{})}, + ) +} + +// DeepCopy_networking_NetworkPolicy is an autogenerated deepcopy function. +func DeepCopy_networking_NetworkPolicy(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*NetworkPolicy) + out := out.(*NetworkPolicy) + *out = *in + if newVal, err := c.DeepCopy(&in.ObjectMeta); err != nil { + return err + } else { + out.ObjectMeta = *newVal.(*v1.ObjectMeta) + } + if err := DeepCopy_networking_NetworkPolicySpec(&in.Spec, &out.Spec, c); err != nil { + return err + } + return nil + } +} + +// DeepCopy_networking_NetworkPolicyIngressRule is an autogenerated deepcopy function. +func DeepCopy_networking_NetworkPolicyIngressRule(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*NetworkPolicyIngressRule) + out := out.(*NetworkPolicyIngressRule) + *out = *in + if in.Ports != nil { + in, out := &in.Ports, &out.Ports + *out = make([]NetworkPolicyPort, len(*in)) + for i := range *in { + if err := DeepCopy_networking_NetworkPolicyPort(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + if in.From != nil { + in, out := &in.From, &out.From + *out = make([]NetworkPolicyPeer, len(*in)) + for i := range *in { + if err := DeepCopy_networking_NetworkPolicyPeer(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} + +// DeepCopy_networking_NetworkPolicyList is an autogenerated deepcopy function. +func DeepCopy_networking_NetworkPolicyList(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*NetworkPolicyList) + out := out.(*NetworkPolicyList) + *out = *in + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]NetworkPolicy, len(*in)) + for i := range *in { + if err := DeepCopy_networking_NetworkPolicy(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} + +// DeepCopy_networking_NetworkPolicyPeer is an autogenerated deepcopy function. +func DeepCopy_networking_NetworkPolicyPeer(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*NetworkPolicyPeer) + out := out.(*NetworkPolicyPeer) + *out = *in + if in.PodSelector != nil { + in, out := &in.PodSelector, &out.PodSelector + if newVal, err := c.DeepCopy(*in); err != nil { + return err + } else { + *out = newVal.(*v1.LabelSelector) + } + } + if in.NamespaceSelector != nil { + in, out := &in.NamespaceSelector, &out.NamespaceSelector + if newVal, err := c.DeepCopy(*in); err != nil { + return err + } else { + *out = newVal.(*v1.LabelSelector) + } + } + return nil + } +} + +// DeepCopy_networking_NetworkPolicyPort is an autogenerated deepcopy function. +func DeepCopy_networking_NetworkPolicyPort(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*NetworkPolicyPort) + out := out.(*NetworkPolicyPort) + *out = *in + if in.Protocol != nil { + in, out := &in.Protocol, &out.Protocol + *out = new(api.Protocol) + **out = **in + } + if in.Port != nil { + in, out := &in.Port, &out.Port + *out = new(intstr.IntOrString) + **out = **in + } + return nil + } +} + +// DeepCopy_networking_NetworkPolicySpec is an autogenerated deepcopy function. +func DeepCopy_networking_NetworkPolicySpec(in interface{}, out interface{}, c *conversion.Cloner) error { + { + in := in.(*NetworkPolicySpec) + out := out.(*NetworkPolicySpec) + *out = *in + if newVal, err := c.DeepCopy(&in.PodSelector); err != nil { + return err + } else { + out.PodSelector = *newVal.(*v1.LabelSelector) + } + if in.Ingress != nil { + in, out := &in.Ingress, &out.Ingress + *out = make([]NetworkPolicyIngressRule, len(*in)) + for i := range *in { + if err := DeepCopy_networking_NetworkPolicyIngressRule(&(*in)[i], &(*out)[i], c); err != nil { + return err + } + } + } + return nil + } +} diff --git a/vendor/k8s.io/kubernetes/pkg/apis/policy/types.go b/vendor/k8s.io/kubernetes/pkg/apis/policy/types.go index ef2ff713..4d49da17 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/policy/types.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/policy/types.go @@ -28,12 +28,19 @@ type PodDisruptionBudgetSpec struct { // absence of the evicted pod. So for example you can prevent all voluntary // evictions by specifying "100%". // +optional - MinAvailable intstr.IntOrString + MinAvailable *intstr.IntOrString // Label query over pods whose evictions are managed by the disruption // budget. // +optional Selector *metav1.LabelSelector + + // An eviction is allowed if at most "maxUnavailable" pods selected by + // "selector" are unavailable after the eviction, i.e. even in absence of + // the evicted pod. For example, one can prevent all voluntary evictions + // by specifying 0. This is a mutually exclusive setting with "minAvailable". + // +optional + MaxUnavailable *intstr.IntOrString } // PodDisruptionBudgetStatus represents information about the status of a diff --git a/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/generated.pb.go index ba66b4cf..eef0c8ed 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/generated.pb.go @@ -39,9 +39,12 @@ import math "math" import k8s_io_apimachinery_pkg_apis_meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" +import k8s_io_apimachinery_pkg_util_intstr "k8s.io/apimachinery/pkg/util/intstr" + +import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + import strings "strings" import reflect "reflect" -import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" import io "io" @@ -216,14 +219,16 @@ func (m *PodDisruptionBudgetSpec) MarshalTo(dAtA []byte) (int, error) { _ = i var l int _ = l - dAtA[i] = 0xa - i++ - i = encodeVarintGenerated(dAtA, i, uint64(m.MinAvailable.Size())) - n7, err := m.MinAvailable.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err + if m.MinAvailable != nil { + dAtA[i] = 0xa + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.MinAvailable.Size())) + n7, err := m.MinAvailable.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n7 } - i += n7 if m.Selector != nil { dAtA[i] = 0x12 i++ @@ -234,6 +239,16 @@ func (m *PodDisruptionBudgetSpec) MarshalTo(dAtA []byte) (int, error) { } i += n8 } + if m.MaxUnavailable != nil { + dAtA[i] = 0x1a + i++ + i = encodeVarintGenerated(dAtA, i, uint64(m.MaxUnavailable.Size())) + n9, err := m.MaxUnavailable.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n9 + } return i, nil } @@ -256,10 +271,15 @@ func (m *PodDisruptionBudgetStatus) MarshalTo(dAtA []byte) (int, error) { i++ i = encodeVarintGenerated(dAtA, i, uint64(m.ObservedGeneration)) if len(m.DisruptedPods) > 0 { + keysForDisruptedPods := make([]string, 0, len(m.DisruptedPods)) for k := range m.DisruptedPods { + keysForDisruptedPods = append(keysForDisruptedPods, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForDisruptedPods) + for _, k := range keysForDisruptedPods { dAtA[i] = 0x12 i++ - v := m.DisruptedPods[k] + v := m.DisruptedPods[string(k)] msgSize := 0 if (&v) != nil { msgSize = (&v).Size() @@ -274,11 +294,11 @@ func (m *PodDisruptionBudgetStatus) MarshalTo(dAtA []byte) (int, error) { dAtA[i] = 0x12 i++ i = encodeVarintGenerated(dAtA, i, uint64((&v).Size())) - n9, err := (&v).MarshalTo(dAtA[i:]) + n10, err := (&v).MarshalTo(dAtA[i:]) if err != nil { return 0, err } - i += n9 + i += n10 } } dAtA[i] = 0x18 @@ -364,12 +384,18 @@ func (m *PodDisruptionBudgetList) Size() (n int) { func (m *PodDisruptionBudgetSpec) Size() (n int) { var l int _ = l - l = m.MinAvailable.Size() - n += 1 + l + sovGenerated(uint64(l)) + if m.MinAvailable != nil { + l = m.MinAvailable.Size() + n += 1 + l + sovGenerated(uint64(l)) + } if m.Selector != nil { l = m.Selector.Size() n += 1 + l + sovGenerated(uint64(l)) } + if m.MaxUnavailable != nil { + l = m.MaxUnavailable.Size() + n += 1 + l + sovGenerated(uint64(l)) + } return n } @@ -445,8 +471,9 @@ func (this *PodDisruptionBudgetSpec) String() string { return "nil" } s := strings.Join([]string{`&PodDisruptionBudgetSpec{`, - `MinAvailable:` + strings.Replace(strings.Replace(this.MinAvailable.String(), "IntOrString", "k8s_io_apimachinery_pkg_util_intstr.IntOrString", 1), `&`, ``, 1) + `,`, + `MinAvailable:` + strings.Replace(fmt.Sprintf("%v", this.MinAvailable), "IntOrString", "k8s_io_apimachinery_pkg_util_intstr.IntOrString", 1) + `,`, `Selector:` + strings.Replace(fmt.Sprintf("%v", this.Selector), "LabelSelector", "k8s_io_apimachinery_pkg_apis_meta_v1.LabelSelector", 1) + `,`, + `MaxUnavailable:` + strings.Replace(fmt.Sprintf("%v", this.MaxUnavailable), "IntOrString", "k8s_io_apimachinery_pkg_util_intstr.IntOrString", 1) + `,`, `}`, }, "") return s @@ -903,6 +930,9 @@ func (m *PodDisruptionBudgetSpec) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } + if m.MinAvailable == nil { + m.MinAvailable = &k8s_io_apimachinery_pkg_util_intstr.IntOrString{} + } if err := m.MinAvailable.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } @@ -940,6 +970,39 @@ func (m *PodDisruptionBudgetSpec) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field MaxUnavailable", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.MaxUnavailable == nil { + m.MaxUnavailable = &k8s_io_apimachinery_pkg_util_intstr.IntOrString{} + } + if err := m.MaxUnavailable.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipGenerated(dAtA[iNdEx:]) @@ -1337,54 +1400,55 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 773 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x94, 0xcb, 0x6e, 0xf3, 0x44, - 0x18, 0x86, 0xe3, 0x26, 0x29, 0x61, 0x9a, 0x54, 0x65, 0xa0, 0x10, 0x22, 0xe1, 0xa2, 0xac, 0x5a, - 0x04, 0x63, 0xda, 0x22, 0x54, 0x58, 0x54, 0xd4, 0xa4, 0x82, 0xa2, 0x56, 0xa9, 0x5c, 0x24, 0x24, - 0x04, 0x12, 0x63, 0xfb, 0xc3, 0x99, 0xc6, 0x27, 0x8d, 0xc7, 0xa1, 0xd9, 0x71, 0x09, 0x2c, 0xb8, - 0xa8, 0x4a, 0x6c, 0xba, 0x44, 0x08, 0x55, 0x34, 0x70, 0x0b, 0xec, 0x91, 0xc7, 0x93, 0x83, 0x9b, - 0x44, 0x0d, 0xea, 0xaf, 0x7f, 0xe7, 0x39, 0x3c, 0xef, 0xfb, 0x9d, 0xc6, 0xe8, 0x93, 0xfe, 0x51, - 0x42, 0x58, 0x64, 0xf4, 0x53, 0x1b, 0x78, 0x08, 0x02, 0x12, 0x23, 0xee, 0x7b, 0x06, 0x8d, 0x59, - 0x62, 0xc4, 0x91, 0xcf, 0x9c, 0xa1, 0x31, 0xd8, 0xb7, 0x41, 0xd0, 0x7d, 0xc3, 0x83, 0x10, 0x38, - 0x15, 0xe0, 0x92, 0x98, 0x47, 0x22, 0xc2, 0x7b, 0x39, 0x4a, 0xa6, 0x28, 0x89, 0xfb, 0x1e, 0xc9, - 0x50, 0x92, 0xa3, 0x44, 0xa1, 0xad, 0x0f, 0x3c, 0x26, 0x7a, 0xa9, 0x4d, 0x9c, 0x28, 0x30, 0xbc, - 0xc8, 0x8b, 0x0c, 0xa9, 0x60, 0xa7, 0x3f, 0xca, 0x95, 0x5c, 0xc8, 0xaf, 0x5c, 0xb9, 0xf5, 0x91, - 0x0a, 0x8a, 0xc6, 0x2c, 0xa0, 0x4e, 0x8f, 0x85, 0xc0, 0x87, 0xd3, 0xb0, 0x02, 0x10, 0xd4, 0x18, - 0xcc, 0xc5, 0xd3, 0x32, 0x96, 0x51, 0x3c, 0x0d, 0x05, 0x0b, 0x60, 0x0e, 0xf8, 0xf8, 0x29, 0x20, - 0x71, 0x7a, 0x10, 0xd0, 0x39, 0xee, 0x70, 0x19, 0x97, 0x0a, 0xe6, 0x1b, 0x2c, 0x14, 0x89, 0xe0, - 0x73, 0xd0, 0x4c, 0x4e, 0x09, 0xf0, 0x01, 0xf0, 0x69, 0x42, 0x70, 0x43, 0x83, 0xd8, 0x87, 0x45, - 0x39, 0xbd, 0xbf, 0xb4, 0x3d, 0x0b, 0x6e, 0xb7, 0xff, 0xd0, 0x50, 0xed, 0x74, 0xc0, 0x1c, 0xc1, - 0xa2, 0x10, 0xff, 0x80, 0x6a, 0x59, 0xa5, 0x5c, 0x2a, 0x68, 0x53, 0x7b, 0x57, 0xdb, 0xdd, 0x38, - 0xf8, 0x90, 0xa8, 0x8e, 0xcd, 0x06, 0x3e, 0xed, 0x59, 0x76, 0x9b, 0x0c, 0xf6, 0x49, 0xd7, 0xbe, - 0x06, 0x47, 0x5c, 0x80, 0xa0, 0x26, 0xbe, 0xbd, 0xdf, 0x29, 0x8d, 0xee, 0x77, 0xd0, 0x74, 0xcf, - 0x9a, 0xa8, 0x62, 0x1f, 0x35, 0x5c, 0xf0, 0x41, 0x40, 0x37, 0xce, 0x1c, 0x93, 0xe6, 0x9a, 0xb4, - 0x39, 0x5c, 0xcd, 0xa6, 0x33, 0x8b, 0x9a, 0xaf, 0x8d, 0xee, 0x77, 0x1a, 0x85, 0x2d, 0xab, 0x28, - 0xde, 0xfe, 0x6d, 0x0d, 0xbd, 0x7e, 0x19, 0xb9, 0x1d, 0x96, 0xf0, 0x54, 0x6e, 0x99, 0xa9, 0xeb, - 0x81, 0x78, 0x09, 0x79, 0xba, 0xa8, 0x92, 0xc4, 0xe0, 0xa8, 0xf4, 0x4c, 0xb2, 0xf2, 0xdc, 0x93, - 0x05, 0xf1, 0x5e, 0xc5, 0xe0, 0x98, 0x75, 0xe5, 0x57, 0xc9, 0x56, 0x96, 0x54, 0xc7, 0x3e, 0x5a, - 0x4f, 0x04, 0x15, 0x69, 0xd2, 0x2c, 0x4b, 0x9f, 0xce, 0x33, 0x7d, 0xa4, 0x96, 0xb9, 0xa9, 0x9c, - 0xd6, 0xf3, 0xb5, 0xa5, 0x3c, 0xda, 0x7f, 0x6a, 0xe8, 0xad, 0x05, 0xd4, 0x39, 0x4b, 0x04, 0xfe, - 0x6e, 0xae, 0xa2, 0x64, 0xb5, 0x8a, 0x66, 0xb4, 0xac, 0xe7, 0x96, 0x72, 0xad, 0x8d, 0x77, 0x66, - 0xaa, 0xe9, 0xa0, 0x2a, 0x13, 0x10, 0x64, 0xd3, 0x52, 0xde, 0xdd, 0x38, 0x38, 0x7e, 0x5e, 0x9a, - 0x66, 0x43, 0x59, 0x55, 0xcf, 0x32, 0x51, 0x2b, 0xd7, 0x6e, 0xff, 0xb3, 0x38, 0xbd, 0xac, 0xdc, - 0xf8, 0x1a, 0xd5, 0x03, 0x16, 0x9e, 0x0c, 0x28, 0xf3, 0xa9, 0xed, 0xc3, 0x93, 0x43, 0x93, 0xbd, - 0x6a, 0x92, 0xbf, 0x6a, 0x72, 0x16, 0x8a, 0x2e, 0xbf, 0x12, 0x9c, 0x85, 0x9e, 0xf9, 0x86, 0x72, - 0xae, 0x5f, 0xcc, 0xa8, 0x59, 0x05, 0x6d, 0xfc, 0x3d, 0xaa, 0x25, 0xe0, 0x83, 0x23, 0x22, 0xfe, - 0xff, 0x5e, 0xc7, 0x39, 0xb5, 0xc1, 0xbf, 0x52, 0xa8, 0x59, 0xcf, 0x6a, 0x39, 0x5e, 0x59, 0x13, - 0xc9, 0xf6, 0xbf, 0x15, 0xf4, 0xf6, 0xd2, 0xde, 0xe3, 0xaf, 0x10, 0x8e, 0x6c, 0xf9, 0xb3, 0x71, - 0xbf, 0xc8, 0xff, 0x14, 0x2c, 0x0a, 0x65, 0xba, 0x65, 0xb3, 0xa5, 0x82, 0xc7, 0xdd, 0xb9, 0x1b, - 0xd6, 0x02, 0x0a, 0xff, 0xaa, 0xa1, 0x86, 0x9b, 0xdb, 0x80, 0x7b, 0x19, 0xb9, 0xe3, 0xf6, 0x7d, - 0xf3, 0x22, 0xa6, 0x94, 0x74, 0x66, 0x95, 0x4f, 0x43, 0xc1, 0x87, 0xe6, 0xb6, 0x0a, 0xb0, 0x51, - 0x38, 0xb3, 0x8a, 0x41, 0xe0, 0x0b, 0x84, 0xdd, 0x89, 0x64, 0x72, 0xe2, 0xfb, 0xd1, 0x4f, 0xe0, - 0xca, 0x07, 0x54, 0x35, 0xdf, 0x51, 0x0a, 0xdb, 0x05, 0xdf, 0xf1, 0x25, 0x6b, 0x01, 0x88, 0x8f, - 0xd1, 0xa6, 0x93, 0x72, 0x0e, 0xa1, 0xf8, 0x12, 0xa8, 0x2f, 0x7a, 0xc3, 0x66, 0x45, 0x4a, 0xbd, - 0xa9, 0xa4, 0x36, 0x3f, 0x2f, 0x9c, 0x5a, 0x8f, 0x6e, 0x67, 0xbc, 0x0b, 0x09, 0xe3, 0xe0, 0x8e, - 0xf9, 0x6a, 0x91, 0xef, 0x14, 0x4e, 0xad, 0x47, 0xb7, 0xf1, 0x11, 0xaa, 0xc3, 0x4d, 0x0c, 0xce, - 0xb8, 0xc6, 0xeb, 0x92, 0x9e, 0x0c, 0xda, 0xe9, 0xcc, 0x99, 0x55, 0xb8, 0xd9, 0xf2, 0x11, 0x9e, - 0x2f, 0x22, 0xde, 0x42, 0xe5, 0x3e, 0x0c, 0x65, 0xcb, 0x5f, 0xb5, 0xb2, 0x4f, 0xfc, 0x19, 0xaa, - 0x0e, 0xa8, 0x9f, 0x82, 0x9a, 0xc6, 0xf7, 0x56, 0x9b, 0xc6, 0xaf, 0x59, 0x00, 0x56, 0x0e, 0x7e, - 0xba, 0x76, 0xa4, 0x99, 0x7b, 0xb7, 0x0f, 0x7a, 0xe9, 0xee, 0x41, 0x2f, 0xfd, 0xfe, 0xa0, 0x97, - 0x7e, 0x1e, 0xe9, 0xda, 0xed, 0x48, 0xd7, 0xee, 0x46, 0xba, 0xf6, 0xd7, 0x48, 0xd7, 0x7e, 0xf9, - 0x5b, 0x2f, 0x7d, 0xfb, 0x8a, 0x6a, 0xfa, 0x7f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x1b, 0xe9, 0x2f, - 0xf1, 0x61, 0x08, 0x00, 0x00, + // 791 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x94, 0x5b, 0x6f, 0xe3, 0x44, + 0x14, 0xc7, 0xe3, 0x5c, 0x4a, 0x98, 0x4d, 0xa2, 0x32, 0xb0, 0x10, 0x22, 0xe1, 0xa0, 0x3c, 0x2d, + 0x88, 0x1d, 0xd3, 0x5d, 0x84, 0x0a, 0x0f, 0x2b, 0xd6, 0xa4, 0x82, 0xa2, 0x46, 0xa9, 0xa6, 0x20, + 0x24, 0x04, 0x12, 0x63, 0xfb, 0xd4, 0x19, 0xe2, 0x9b, 0xec, 0x71, 0x68, 0xde, 0xf8, 0x08, 0x3c, + 0xf0, 0xa1, 0x2a, 0x21, 0xa1, 0x3e, 0x56, 0x08, 0x45, 0xd4, 0x7c, 0x06, 0xde, 0x91, 0xed, 0xc9, + 0xc5, 0x4d, 0xa2, 0x06, 0x8a, 0xf6, 0x2d, 0x73, 0xf9, 0xfd, 0xff, 0xe7, 0xfc, 0x7d, 0x26, 0xe8, + 0xa3, 0xf1, 0x61, 0x44, 0xb8, 0xaf, 0x8d, 0x63, 0x03, 0x42, 0x0f, 0x04, 0x44, 0x5a, 0x30, 0xb6, + 0x35, 0x16, 0xf0, 0x48, 0x0b, 0x7c, 0x87, 0x9b, 0x53, 0x6d, 0x72, 0x60, 0x80, 0x60, 0x07, 0x9a, + 0x0d, 0x1e, 0x84, 0x4c, 0x80, 0x45, 0x82, 0xd0, 0x17, 0x3e, 0x7e, 0x27, 0x47, 0xc9, 0x12, 0x25, + 0xc1, 0xd8, 0x26, 0x29, 0x4a, 0x72, 0x94, 0x48, 0xb4, 0xf3, 0xd8, 0xe6, 0x62, 0x14, 0x1b, 0xc4, + 0xf4, 0x5d, 0xcd, 0xf6, 0x6d, 0x5f, 0xcb, 0x14, 0x8c, 0xf8, 0x3c, 0x5b, 0x65, 0x8b, 0xec, 0x57, + 0xae, 0xdc, 0xf9, 0x40, 0x16, 0xc5, 0x02, 0xee, 0x32, 0x73, 0xc4, 0x3d, 0x08, 0xa7, 0xcb, 0xb2, + 0x5c, 0x10, 0x4c, 0x9b, 0xac, 0xd5, 0xd3, 0xd1, 0xb6, 0x51, 0x61, 0xec, 0x09, 0xee, 0xc2, 0x1a, + 0xf0, 0xe1, 0x5d, 0x40, 0x64, 0x8e, 0xc0, 0x65, 0x6b, 0xdc, 0xd3, 0x6d, 0x5c, 0x2c, 0xb8, 0xa3, + 0x71, 0x4f, 0x44, 0x22, 0x5c, 0x83, 0xde, 0xdb, 0x1a, 0xf4, 0x86, 0x5e, 0x7a, 0xbf, 0x2b, 0xa8, + 0x7e, 0x34, 0xe1, 0xa6, 0xe0, 0xbe, 0x87, 0xbf, 0x47, 0xf5, 0xb4, 0x67, 0x8b, 0x09, 0xd6, 0x56, + 0xde, 0x56, 0x1e, 0x3d, 0x78, 0xf2, 0x3e, 0x91, 0xd9, 0xaf, 0x96, 0xb0, 0x4c, 0x3f, 0xbd, 0x4d, + 0x26, 0x07, 0x64, 0x68, 0xfc, 0x00, 0xa6, 0x18, 0x80, 0x60, 0x3a, 0xbe, 0x9c, 0x75, 0x4b, 0xc9, + 0xac, 0x8b, 0x96, 0x7b, 0x74, 0xa1, 0x8a, 0x1d, 0xd4, 0xb4, 0xc0, 0x01, 0x01, 0xc3, 0x20, 0x75, + 0x8c, 0xda, 0xe5, 0xcc, 0xe6, 0xe9, 0x6e, 0x36, 0xfd, 0x55, 0x54, 0x7f, 0x25, 0x99, 0x75, 0x9b, + 0x85, 0x2d, 0x5a, 0x14, 0xef, 0xfd, 0x5a, 0x46, 0xaf, 0x9e, 0xfa, 0x56, 0x9f, 0x47, 0x61, 0x9c, + 0x6d, 0xe9, 0xb1, 0x65, 0x83, 0x78, 0x01, 0x7d, 0x5a, 0xa8, 0x1a, 0x05, 0x60, 0xca, 0xf6, 0x74, + 0xb2, 0xf3, 0x04, 0x93, 0x0d, 0xf5, 0x9e, 0x05, 0x60, 0xea, 0x0d, 0xe9, 0x57, 0x4d, 0x57, 0x34, + 0x53, 0xc7, 0x0e, 0xda, 0x8b, 0x04, 0x13, 0x71, 0xd4, 0xae, 0x64, 0x3e, 0xfd, 0x7b, 0xfa, 0x64, + 0x5a, 0x7a, 0x4b, 0x3a, 0xed, 0xe5, 0x6b, 0x2a, 0x3d, 0x7a, 0x7f, 0x28, 0xe8, 0x8d, 0x0d, 0xd4, + 0x09, 0x8f, 0x04, 0xfe, 0x76, 0x2d, 0x51, 0xb2, 0x5b, 0xa2, 0x29, 0x9d, 0xe5, 0xb9, 0x2f, 0x5d, + 0xeb, 0xf3, 0x9d, 0x95, 0x34, 0x4d, 0x54, 0xe3, 0x02, 0xdc, 0x74, 0x5a, 0x2a, 0x8f, 0x1e, 0x3c, + 0x79, 0x76, 0xbf, 0x36, 0xf5, 0xa6, 0xb4, 0xaa, 0x1d, 0xa7, 0xa2, 0x34, 0xd7, 0xee, 0xfd, 0x56, + 0xde, 0xd8, 0x5e, 0x1a, 0x37, 0x3e, 0x47, 0x0d, 0x97, 0x7b, 0xcf, 0x27, 0x8c, 0x3b, 0xcc, 0x70, + 0xe0, 0xce, 0xa1, 0x49, 0xdf, 0x27, 0xc9, 0xdf, 0x27, 0x39, 0xf6, 0xc4, 0x30, 0x3c, 0x13, 0x21, + 0xf7, 0x6c, 0x7d, 0x3f, 0x99, 0x75, 0x1b, 0x83, 0x15, 0x25, 0x5a, 0xd0, 0xc5, 0xdf, 0xa1, 0x7a, + 0x04, 0x0e, 0x98, 0xc2, 0x0f, 0xff, 0xdd, 0xcb, 0x38, 0x61, 0x06, 0x38, 0x67, 0x12, 0xd5, 0x1b, + 0x69, 0x8e, 0xf3, 0x15, 0x5d, 0x48, 0x62, 0x07, 0xb5, 0x5c, 0x76, 0xf1, 0x95, 0xc7, 0x16, 0x8d, + 0x54, 0xfe, 0x63, 0x23, 0x38, 0x99, 0x75, 0x5b, 0x83, 0x82, 0x16, 0xbd, 0xa5, 0xdd, 0xfb, 0xbb, + 0x8a, 0xde, 0xdc, 0x3a, 0x65, 0xf8, 0x0b, 0x84, 0x7d, 0x23, 0x82, 0x70, 0x02, 0xd6, 0x67, 0xf9, + 0x7f, 0x12, 0xf7, 0xbd, 0x2c, 0xd8, 0x8a, 0xde, 0x91, 0x1f, 0x08, 0x0f, 0xd7, 0x6e, 0xd0, 0x0d, + 0x14, 0xfe, 0x45, 0x41, 0x4d, 0x2b, 0xb7, 0x01, 0xeb, 0xd4, 0xb7, 0xe6, 0x83, 0xf2, 0xf5, 0xff, + 0xf1, 0x1e, 0x48, 0x7f, 0x55, 0xf9, 0xc8, 0x13, 0xe1, 0x54, 0x7f, 0x28, 0x0b, 0x6c, 0x16, 0xce, + 0x68, 0xb1, 0x08, 0x3c, 0x40, 0xd8, 0x5a, 0x48, 0x46, 0xcf, 0x1d, 0xc7, 0xff, 0x11, 0xac, 0x2c, + 0xf2, 0x9a, 0xfe, 0x96, 0x54, 0x78, 0x58, 0xf0, 0x9d, 0x5f, 0xa2, 0x1b, 0x40, 0xfc, 0x0c, 0xb5, + 0xcc, 0x38, 0x0c, 0xc1, 0x13, 0x9f, 0x03, 0x73, 0xc4, 0x68, 0xda, 0xae, 0x66, 0x52, 0xaf, 0x4b, + 0xa9, 0xd6, 0xa7, 0x85, 0x53, 0x7a, 0xeb, 0x76, 0xca, 0x5b, 0x10, 0xf1, 0x10, 0xac, 0x39, 0x5f, + 0x2b, 0xf2, 0xfd, 0xc2, 0x29, 0xbd, 0x75, 0x1b, 0x1f, 0xa2, 0x06, 0x5c, 0x04, 0x60, 0xce, 0x33, + 0xde, 0xcb, 0xe8, 0xd7, 0x24, 0xdd, 0x38, 0x5a, 0x39, 0xa3, 0x85, 0x9b, 0x1d, 0x07, 0xe1, 0xf5, + 0x10, 0xf1, 0x3e, 0xaa, 0x8c, 0x61, 0x9a, 0x7d, 0xf2, 0x97, 0x69, 0xfa, 0x13, 0x7f, 0x82, 0x6a, + 0x13, 0xe6, 0xc4, 0x20, 0x67, 0xff, 0xdd, 0xdd, 0x66, 0xff, 0x4b, 0xee, 0x02, 0xcd, 0xc1, 0x8f, + 0xcb, 0x87, 0x8a, 0xfe, 0xf8, 0xf2, 0x46, 0x2d, 0x5d, 0xdd, 0xa8, 0xa5, 0xeb, 0x1b, 0xb5, 0xf4, + 0x53, 0xa2, 0x2a, 0x97, 0x89, 0xaa, 0x5c, 0x25, 0xaa, 0x72, 0x9d, 0xa8, 0xca, 0x9f, 0x89, 0xaa, + 0xfc, 0xfc, 0x97, 0x5a, 0xfa, 0xe6, 0x25, 0xf9, 0xe1, 0xff, 0x09, 0x00, 0x00, 0xff, 0xff, 0x58, + 0xfb, 0xa1, 0x14, 0x99, 0x08, 0x00, 0x00, } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/generated.proto b/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/generated.proto index d14d5de3..be840713 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/generated.proto @@ -25,7 +25,6 @@ import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; import "k8s.io/kubernetes/pkg/api/v1/generated.proto"; // Package-wide variables from generator "generated". @@ -71,6 +70,12 @@ message PodDisruptionBudgetSpec { // Label query over pods whose evictions are managed by the disruption // budget. optional k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector selector = 2; + + // An eviction is allowed if at most "maxUnavailable" pods selected by + // "selector" are unavailable after the eviction, i.e. even in absence of + // the evicted pod. For example, one can prevent all voluntary evictions + // by specifying 0. This is a mutually exclusive setting with "minAvailable". + optional k8s.io.apimachinery.pkg.util.intstr.IntOrString maxUnavailable = 3; } // PodDisruptionBudgetStatus represents information about the status of a diff --git a/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/types.generated.go b/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/types.generated.go index 38b3afeb..a4636a80 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/types.generated.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/types.generated.go @@ -85,14 +85,15 @@ func (x *PodDisruptionBudgetSpec) CodecEncodeSelf(e *codec1978.Encoder) { } else { yysep2 := !z.EncBinary() yy2arr2 := z.EncBasicHandle().StructToArray - var yyq2 [2]bool + var yyq2 [3]bool _, _, _ = yysep2, yyq2, yy2arr2 const yyr2 bool = false - yyq2[0] = true + yyq2[0] = x.MinAvailable != nil yyq2[1] = x.Selector != nil + yyq2[2] = x.MaxUnavailable != nil var yynn2 int if yyr2 || yy2arr2 { - r.EncodeArrayStart(2) + r.EncodeArrayStart(3) } else { yynn2 = 0 for _, b := range yyq2 { @@ -106,15 +107,18 @@ func (x *PodDisruptionBudgetSpec) CodecEncodeSelf(e *codec1978.Encoder) { if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) if yyq2[0] { - yy4 := &x.MinAvailable - yym5 := z.EncBinary() - _ = yym5 - if false { - } else if z.HasExtensions() && z.EncExt(yy4) { - } else if !yym5 && z.IsJSONHandle() { - z.EncJSONMarshal(yy4) + if x.MinAvailable == nil { + r.EncodeNil() } else { - z.EncFallback(yy4) + yym4 := z.EncBinary() + _ = yym4 + if false { + } else if z.HasExtensions() && z.EncExt(x.MinAvailable) { + } else if !yym4 && z.IsJSONHandle() { + z.EncJSONMarshal(x.MinAvailable) + } else { + z.EncFallback(x.MinAvailable) + } } } else { r.EncodeNil() @@ -124,15 +128,18 @@ func (x *PodDisruptionBudgetSpec) CodecEncodeSelf(e *codec1978.Encoder) { z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("minAvailable")) z.EncSendContainerState(codecSelfer_containerMapValue1234) - yy6 := &x.MinAvailable - yym7 := z.EncBinary() - _ = yym7 - if false { - } else if z.HasExtensions() && z.EncExt(yy6) { - } else if !yym7 && z.IsJSONHandle() { - z.EncJSONMarshal(yy6) + if x.MinAvailable == nil { + r.EncodeNil() } else { - z.EncFallback(yy6) + yym5 := z.EncBinary() + _ = yym5 + if false { + } else if z.HasExtensions() && z.EncExt(x.MinAvailable) { + } else if !yym5 && z.IsJSONHandle() { + z.EncJSONMarshal(x.MinAvailable) + } else { + z.EncFallback(x.MinAvailable) + } } } } @@ -142,8 +149,8 @@ func (x *PodDisruptionBudgetSpec) CodecEncodeSelf(e *codec1978.Encoder) { if x.Selector == nil { r.EncodeNil() } else { - yym9 := z.EncBinary() - _ = yym9 + yym7 := z.EncBinary() + _ = yym7 if false { } else if z.HasExtensions() && z.EncExt(x.Selector) { } else { @@ -161,8 +168,8 @@ func (x *PodDisruptionBudgetSpec) CodecEncodeSelf(e *codec1978.Encoder) { if x.Selector == nil { r.EncodeNil() } else { - yym10 := z.EncBinary() - _ = yym10 + yym8 := z.EncBinary() + _ = yym8 if false { } else if z.HasExtensions() && z.EncExt(x.Selector) { } else { @@ -171,6 +178,45 @@ func (x *PodDisruptionBudgetSpec) CodecEncodeSelf(e *codec1978.Encoder) { } } } + if yyr2 || yy2arr2 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + if yyq2[2] { + if x.MaxUnavailable == nil { + r.EncodeNil() + } else { + yym10 := z.EncBinary() + _ = yym10 + if false { + } else if z.HasExtensions() && z.EncExt(x.MaxUnavailable) { + } else if !yym10 && z.IsJSONHandle() { + z.EncJSONMarshal(x.MaxUnavailable) + } else { + z.EncFallback(x.MaxUnavailable) + } + } + } else { + r.EncodeNil() + } + } else { + if yyq2[2] { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("maxUnavailable")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + if x.MaxUnavailable == nil { + r.EncodeNil() + } else { + yym11 := z.EncBinary() + _ = yym11 + if false { + } else if z.HasExtensions() && z.EncExt(x.MaxUnavailable) { + } else if !yym11 && z.IsJSONHandle() { + z.EncJSONMarshal(x.MaxUnavailable) + } else { + z.EncFallback(x.MaxUnavailable) + } + } + } + } if yyr2 || yy2arr2 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -234,17 +280,21 @@ func (x *PodDisruptionBudgetSpec) codecDecodeSelfFromMap(l int, d *codec1978.Dec switch yys3 { case "minAvailable": if r.TryDecodeAsNil() { - x.MinAvailable = pkg1_intstr.IntOrString{} + if x.MinAvailable != nil { + x.MinAvailable = nil + } } else { - yyv4 := &x.MinAvailable + if x.MinAvailable == nil { + x.MinAvailable = new(pkg1_intstr.IntOrString) + } yym5 := z.DecBinary() _ = yym5 if false { - } else if z.HasExtensions() && z.DecExt(yyv4) { + } else if z.HasExtensions() && z.DecExt(x.MinAvailable) { } else if !yym5 && z.IsJSONHandle() { - z.DecJSONUnmarshal(yyv4) + z.DecJSONUnmarshal(x.MinAvailable) } else { - z.DecFallback(yyv4, false) + z.DecFallback(x.MinAvailable, false) } } case "selector": @@ -264,6 +314,25 @@ func (x *PodDisruptionBudgetSpec) codecDecodeSelfFromMap(l int, d *codec1978.Dec z.DecFallback(x.Selector, false) } } + case "maxUnavailable": + if r.TryDecodeAsNil() { + if x.MaxUnavailable != nil { + x.MaxUnavailable = nil + } + } else { + if x.MaxUnavailable == nil { + x.MaxUnavailable = new(pkg1_intstr.IntOrString) + } + yym9 := z.DecBinary() + _ = yym9 + if false { + } else if z.HasExtensions() && z.DecExt(x.MaxUnavailable) { + } else if !yym9 && z.IsJSONHandle() { + z.DecJSONUnmarshal(x.MaxUnavailable) + } else { + z.DecFallback(x.MaxUnavailable, false) + } + } default: z.DecStructFieldNotFound(-1, yys3) } // end switch yys3 @@ -275,41 +344,45 @@ func (x *PodDisruptionBudgetSpec) codecDecodeSelfFromArray(l int, d *codec1978.D var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj8 int - var yyb8 bool - var yyhl8 bool = l >= 0 - yyj8++ - if yyhl8 { - yyb8 = yyj8 > l + var yyj10 int + var yyb10 bool + var yyhl10 bool = l >= 0 + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l } else { - yyb8 = r.CheckBreak() + yyb10 = r.CheckBreak() } - if yyb8 { + if yyb10 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } z.DecSendContainerState(codecSelfer_containerArrayElem1234) if r.TryDecodeAsNil() { - x.MinAvailable = pkg1_intstr.IntOrString{} + if x.MinAvailable != nil { + x.MinAvailable = nil + } } else { - yyv9 := &x.MinAvailable - yym10 := z.DecBinary() - _ = yym10 + if x.MinAvailable == nil { + x.MinAvailable = new(pkg1_intstr.IntOrString) + } + yym12 := z.DecBinary() + _ = yym12 if false { - } else if z.HasExtensions() && z.DecExt(yyv9) { - } else if !yym10 && z.IsJSONHandle() { - z.DecJSONUnmarshal(yyv9) + } else if z.HasExtensions() && z.DecExt(x.MinAvailable) { + } else if !yym12 && z.IsJSONHandle() { + z.DecJSONUnmarshal(x.MinAvailable) } else { - z.DecFallback(yyv9, false) + z.DecFallback(x.MinAvailable, false) } } - yyj8++ - if yyhl8 { - yyb8 = yyj8 > l + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l } else { - yyb8 = r.CheckBreak() + yyb10 = r.CheckBreak() } - if yyb8 { + if yyb10 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -322,26 +395,55 @@ func (x *PodDisruptionBudgetSpec) codecDecodeSelfFromArray(l int, d *codec1978.D if x.Selector == nil { x.Selector = new(pkg2_v1.LabelSelector) } - yym12 := z.DecBinary() - _ = yym12 + yym14 := z.DecBinary() + _ = yym14 if false { } else if z.HasExtensions() && z.DecExt(x.Selector) { } else { z.DecFallback(x.Selector, false) } } - for { - yyj8++ - if yyhl8 { - yyb8 = yyj8 > l - } else { - yyb8 = r.CheckBreak() + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l + } else { + yyb10 = r.CheckBreak() + } + if yyb10 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + if x.MaxUnavailable != nil { + x.MaxUnavailable = nil } - if yyb8 { + } else { + if x.MaxUnavailable == nil { + x.MaxUnavailable = new(pkg1_intstr.IntOrString) + } + yym16 := z.DecBinary() + _ = yym16 + if false { + } else if z.HasExtensions() && z.DecExt(x.MaxUnavailable) { + } else if !yym16 && z.IsJSONHandle() { + z.DecJSONUnmarshal(x.MaxUnavailable) + } else { + z.DecFallback(x.MaxUnavailable, false) + } + } + for { + yyj10++ + if yyhl10 { + yyb10 = yyj10 > l + } else { + yyb10 = r.CheckBreak() + } + if yyb10 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj8-1, "") + z.DecStructFieldNotFound(yyj10-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -2122,7 +2224,7 @@ func (x codecSelfer1234) decSlicePodDisruptionBudget(v *[]PodDisruptionBudget, d yyrg1 := len(yyv1) > 0 yyv21 := yyv1 - yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 336) + yyrl1, yyrt1 = z.DecInferLen(yyl1, z.DecBasicHandle().MaxInitLen, 320) if yyrt1 { if yyrl1 <= cap(yyv1) { yyv1 = yyv1[:yyrl1] diff --git a/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/types.go b/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/types.go index ca5ea373..6cc56256 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/types.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/types.go @@ -27,11 +27,17 @@ type PodDisruptionBudgetSpec struct { // "selector" will still be available after the eviction, i.e. even in the // absence of the evicted pod. So for example you can prevent all voluntary // evictions by specifying "100%". - MinAvailable intstr.IntOrString `json:"minAvailable,omitempty" protobuf:"bytes,1,opt,name=minAvailable"` + MinAvailable *intstr.IntOrString `json:"minAvailable,omitempty" protobuf:"bytes,1,opt,name=minAvailable"` // Label query over pods whose evictions are managed by the disruption // budget. Selector *metav1.LabelSelector `json:"selector,omitempty" protobuf:"bytes,2,opt,name=selector"` + + // An eviction is allowed if at most "maxUnavailable" pods selected by + // "selector" are unavailable after the eviction, i.e. even in absence of + // the evicted pod. For example, one can prevent all voluntary evictions + // by specifying 0. This is a mutually exclusive setting with "minAvailable". + MaxUnavailable *intstr.IntOrString `json:"maxUnavailable,omitempty" protobuf:"bytes,3,opt,name=maxUnavailable"` } // PodDisruptionBudgetStatus represents information about the status of a diff --git a/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/types_swagger_doc_generated.go b/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/types_swagger_doc_generated.go index d919856b..29432506 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/types_swagger_doc_generated.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/types_swagger_doc_generated.go @@ -56,9 +56,10 @@ func (PodDisruptionBudgetList) SwaggerDoc() map[string]string { } var map_PodDisruptionBudgetSpec = map[string]string{ - "": "PodDisruptionBudgetSpec is a description of a PodDisruptionBudget.", - "minAvailable": "An eviction is allowed if at least \"minAvailable\" pods selected by \"selector\" will still be available after the eviction, i.e. even in the absence of the evicted pod. So for example you can prevent all voluntary evictions by specifying \"100%\".", - "selector": "Label query over pods whose evictions are managed by the disruption budget.", + "": "PodDisruptionBudgetSpec is a description of a PodDisruptionBudget.", + "minAvailable": "An eviction is allowed if at least \"minAvailable\" pods selected by \"selector\" will still be available after the eviction, i.e. even in the absence of the evicted pod. So for example you can prevent all voluntary evictions by specifying \"100%\".", + "selector": "Label query over pods whose evictions are managed by the disruption budget.", + "maxUnavailable": "An eviction is allowed if at most \"maxUnavailable\" pods selected by \"selector\" are unavailable after the eviction, i.e. even in absence of the evicted pod. For example, one can prevent all voluntary evictions by specifying 0. This is a mutually exclusive setting with \"minAvailable\".", } func (PodDisruptionBudgetSpec) SwaggerDoc() map[string]string { diff --git a/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/zz_generated.conversion.go b/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/zz_generated.conversion.go index cc108e55..8f3210d0 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/zz_generated.conversion.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/zz_generated.conversion.go @@ -24,6 +24,7 @@ import ( v1 "k8s.io/apimachinery/pkg/apis/meta/v1" conversion "k8s.io/apimachinery/pkg/conversion" runtime "k8s.io/apimachinery/pkg/runtime" + intstr "k8s.io/apimachinery/pkg/util/intstr" policy "k8s.io/kubernetes/pkg/apis/policy" unsafe "unsafe" ) @@ -130,8 +131,9 @@ func Convert_policy_PodDisruptionBudgetList_To_v1beta1_PodDisruptionBudgetList(i } func autoConvert_v1beta1_PodDisruptionBudgetSpec_To_policy_PodDisruptionBudgetSpec(in *PodDisruptionBudgetSpec, out *policy.PodDisruptionBudgetSpec, s conversion.Scope) error { - out.MinAvailable = in.MinAvailable + out.MinAvailable = (*intstr.IntOrString)(unsafe.Pointer(in.MinAvailable)) out.Selector = (*v1.LabelSelector)(unsafe.Pointer(in.Selector)) + out.MaxUnavailable = (*intstr.IntOrString)(unsafe.Pointer(in.MaxUnavailable)) return nil } @@ -141,8 +143,9 @@ func Convert_v1beta1_PodDisruptionBudgetSpec_To_policy_PodDisruptionBudgetSpec(i } func autoConvert_policy_PodDisruptionBudgetSpec_To_v1beta1_PodDisruptionBudgetSpec(in *policy.PodDisruptionBudgetSpec, out *PodDisruptionBudgetSpec, s conversion.Scope) error { - out.MinAvailable = in.MinAvailable + out.MinAvailable = (*intstr.IntOrString)(unsafe.Pointer(in.MinAvailable)) out.Selector = (*v1.LabelSelector)(unsafe.Pointer(in.Selector)) + out.MaxUnavailable = (*intstr.IntOrString)(unsafe.Pointer(in.MaxUnavailable)) return nil } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/zz_generated.deepcopy.go index abd2cea2..cf8ddbd6 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/zz_generated.deepcopy.go @@ -24,6 +24,7 @@ import ( v1 "k8s.io/apimachinery/pkg/apis/meta/v1" conversion "k8s.io/apimachinery/pkg/conversion" runtime "k8s.io/apimachinery/pkg/runtime" + intstr "k8s.io/apimachinery/pkg/util/intstr" reflect "reflect" ) @@ -112,6 +113,11 @@ func DeepCopy_v1beta1_PodDisruptionBudgetSpec(in interface{}, out interface{}, c in := in.(*PodDisruptionBudgetSpec) out := out.(*PodDisruptionBudgetSpec) *out = *in + if in.MinAvailable != nil { + in, out := &in.MinAvailable, &out.MinAvailable + *out = new(intstr.IntOrString) + **out = **in + } if in.Selector != nil { in, out := &in.Selector, &out.Selector if newVal, err := c.DeepCopy(*in); err != nil { @@ -120,6 +126,11 @@ func DeepCopy_v1beta1_PodDisruptionBudgetSpec(in interface{}, out interface{}, c *out = newVal.(*v1.LabelSelector) } } + if in.MaxUnavailable != nil { + in, out := &in.MaxUnavailable, &out.MaxUnavailable + *out = new(intstr.IntOrString) + **out = **in + } return nil } } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/policy/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/policy/zz_generated.deepcopy.go index 9edd2a1e..ba27f907 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/policy/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/policy/zz_generated.deepcopy.go @@ -24,6 +24,7 @@ import ( v1 "k8s.io/apimachinery/pkg/apis/meta/v1" conversion "k8s.io/apimachinery/pkg/conversion" runtime "k8s.io/apimachinery/pkg/runtime" + intstr "k8s.io/apimachinery/pkg/util/intstr" reflect "reflect" ) @@ -112,6 +113,11 @@ func DeepCopy_policy_PodDisruptionBudgetSpec(in interface{}, out interface{}, c in := in.(*PodDisruptionBudgetSpec) out := out.(*PodDisruptionBudgetSpec) *out = *in + if in.MinAvailable != nil { + in, out := &in.MinAvailable, &out.MinAvailable + *out = new(intstr.IntOrString) + **out = **in + } if in.Selector != nil { in, out := &in.Selector, &out.Selector if newVal, err := c.DeepCopy(*in); err != nil { @@ -120,6 +126,11 @@ func DeepCopy_policy_PodDisruptionBudgetSpec(in interface{}, out interface{}, c *out = newVal.(*v1.LabelSelector) } } + if in.MaxUnavailable != nil { + in, out := &in.MaxUnavailable, &out.MaxUnavailable + *out = new(intstr.IntOrString) + **out = **in + } return nil } } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/rbac/helpers.go b/vendor/k8s.io/kubernetes/pkg/apis/rbac/helpers.go index 830e227f..5a246ab4 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/rbac/helpers.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/rbac/helpers.go @@ -124,6 +124,38 @@ func SubjectsStrings(subjects []Subject) ([]string, []string, []string, []string return users, groups, sas, others } +func (r PolicyRule) String() string { + return "PolicyRule" + r.CompactString() +} + +// CompactString exposes a compact string representation for use in escalation error messages +func (r PolicyRule) CompactString() string { + formatStringParts := []string{} + formatArgs := []interface{}{} + if len(r.Resources) > 0 { + formatStringParts = append(formatStringParts, "Resources:%q") + formatArgs = append(formatArgs, r.Resources) + } + if len(r.NonResourceURLs) > 0 { + formatStringParts = append(formatStringParts, "NonResourceURLs:%q") + formatArgs = append(formatArgs, r.NonResourceURLs) + } + if len(r.ResourceNames) > 0 { + formatStringParts = append(formatStringParts, "ResourceNames:%q") + formatArgs = append(formatArgs, r.ResourceNames) + } + if len(r.APIGroups) > 0 { + formatStringParts = append(formatStringParts, "APIGroups:%q") + formatArgs = append(formatArgs, r.APIGroups) + } + if len(r.Verbs) > 0 { + formatStringParts = append(formatStringParts, "Verbs:%q") + formatArgs = append(formatArgs, r.Verbs) + } + formatString := "{" + strings.Join(formatStringParts, ", ") + "}" + return fmt.Sprintf(formatString, formatArgs...) +} + // +k8s:deepcopy-gen=false // PolicyRuleBuilder let's us attach methods. A no-no for API types. // We use it to construct rules in code. It's more compact than trying to write them @@ -190,6 +222,22 @@ func (r *PolicyRuleBuilder) Rule() (PolicyRule, error) { // this a common bug return PolicyRule{}, fmt.Errorf("resource rule must have apiGroups: %#v", r.PolicyRule) } + // if resource names are set, then the verb must not be list, watch, create, or deletecollection + // since verbs are largely opaque, we don't want to accidentally prevent things like "impersonate", so + // we will backlist common mistakes, not whitelist acceptable options. + if len(r.PolicyRule.ResourceNames) != 0 { + illegalVerbs := []string{} + for _, verb := range r.PolicyRule.Verbs { + switch verb { + case "list", "watch", "create", "deletecollection": + illegalVerbs = append(illegalVerbs, verb) + } + } + if len(illegalVerbs) > 0 { + return PolicyRule{}, fmt.Errorf("verbs %v do not have names available: %#v", illegalVerbs, r.PolicyRule) + } + } + default: return PolicyRule{}, fmt.Errorf("a rule must have either nonResourceURLs or resources: %#v", r.PolicyRule) } @@ -341,3 +389,11 @@ func (r *RoleBindingBuilder) Binding() (RoleBinding, error) { return r.RoleBinding, nil } + +type SortableRuleSlice []PolicyRule + +func (s SortableRuleSlice) Len() int { return len(s) } +func (s SortableRuleSlice) Swap(i, j int) { s[i], s[j] = s[j], s[i] } +func (s SortableRuleSlice) Less(i, j int) bool { + return strings.Compare(s[i].String(), s[j].String()) < 0 +} diff --git a/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1alpha1/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1alpha1/generated.pb.go index d79580ee..488e5440 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1alpha1/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1alpha1/generated.pb.go @@ -2766,58 +2766,57 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 841 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x54, 0x4d, 0x6f, 0xe3, 0x44, - 0x18, 0xce, 0xb4, 0x09, 0x4d, 0xde, 0x52, 0x95, 0x0e, 0x12, 0x32, 0x3d, 0x38, 0x95, 0x4f, 0x15, - 0x1f, 0x36, 0x2d, 0x0b, 0xec, 0x01, 0x0e, 0x6b, 0x0e, 0xa8, 0x62, 0x29, 0xd5, 0xac, 0x58, 0x89, - 0xd5, 0x4a, 0x30, 0x71, 0x66, 0x93, 0x21, 0xfe, 0xd2, 0x8c, 0x1d, 0xb1, 0x42, 0x48, 0x1c, 0x39, - 0xf2, 0x2b, 0x38, 0x72, 0x40, 0xe2, 0xc8, 0x89, 0x4b, 0x05, 0x97, 0x1e, 0xe1, 0x12, 0x51, 0xf3, - 0x43, 0x40, 0x1e, 0x8f, 0x3f, 0x8a, 0x53, 0xf5, 0x03, 0x29, 0x12, 0xd2, 0x9e, 0x12, 0xbf, 0xef, - 0xf3, 0x3c, 0xf3, 0x3e, 0xf3, 0xda, 0x0f, 0xdc, 0x9d, 0xdd, 0x95, 0x36, 0x8f, 0x9c, 0x59, 0x3a, - 0x62, 0x22, 0x64, 0x09, 0x93, 0x4e, 0x3c, 0x9b, 0x38, 0x34, 0xe6, 0xd2, 0x11, 0x23, 0xea, 0x39, - 0xf3, 0x03, 0xea, 0xc7, 0x53, 0x7a, 0xe0, 0x4c, 0x58, 0xc8, 0x04, 0x4d, 0xd8, 0xd8, 0x8e, 0x45, - 0x94, 0x44, 0x78, 0xbf, 0x60, 0xda, 0x35, 0xd3, 0x8e, 0x67, 0x13, 0x3b, 0x67, 0xda, 0x39, 0xd3, - 0x2e, 0x99, 0xbb, 0xaf, 0x4f, 0x78, 0x32, 0x4d, 0x47, 0xb6, 0x17, 0x05, 0xce, 0x24, 0x9a, 0x44, - 0x8e, 0x12, 0x18, 0xa5, 0x4f, 0xd4, 0x93, 0x7a, 0x50, 0xff, 0x0a, 0xe1, 0xdd, 0x3b, 0x7a, 0x24, - 0x1a, 0xf3, 0x80, 0x7a, 0x53, 0x1e, 0x32, 0xf1, 0xb4, 0x1e, 0x2a, 0x60, 0x09, 0x75, 0xe6, 0xad, - 0x71, 0x76, 0x9d, 0xcb, 0x58, 0x22, 0x0d, 0x13, 0x1e, 0xb0, 0x16, 0xe1, 0xed, 0xab, 0x08, 0xd2, - 0x9b, 0xb2, 0x80, 0xb6, 0x78, 0x6f, 0x5e, 0xc6, 0x4b, 0x13, 0xee, 0x3b, 0x3c, 0x4c, 0x64, 0x22, - 0x5a, 0xa4, 0x86, 0x27, 0xc9, 0xc4, 0x9c, 0x89, 0xda, 0x10, 0xfb, 0x92, 0x06, 0xb1, 0xcf, 0x96, - 0x78, 0xb2, 0x7e, 0x45, 0xb0, 0xf9, 0xbe, 0x9f, 0xca, 0x84, 0x09, 0x12, 0xf9, 0x0c, 0x7f, 0x0e, - 0xfd, 0xdc, 0xfe, 0x98, 0x26, 0xd4, 0x40, 0x7b, 0x68, 0x7f, 0xf3, 0xf0, 0x0d, 0x5b, 0x6f, 0xa1, - 0x39, 0x4d, 0xbd, 0x87, 0x1c, 0x6d, 0xcf, 0x0f, 0xec, 0x8f, 0x47, 0x5f, 0x30, 0x2f, 0xf9, 0x88, - 0x25, 0xd4, 0xc5, 0xa7, 0x8b, 0x61, 0x27, 0x5b, 0x0c, 0xa1, 0xae, 0x91, 0x4a, 0x15, 0x7f, 0x0a, - 0x3d, 0x91, 0xfa, 0x4c, 0x1a, 0x6b, 0x7b, 0xeb, 0xfb, 0x9b, 0x87, 0x77, 0xec, 0xeb, 0x2e, 0xd9, - 0x3e, 0x89, 0x7c, 0xee, 0x3d, 0x25, 0xa9, 0xcf, 0xdc, 0x2d, 0x7d, 0x44, 0x2f, 0x7f, 0x92, 0xa4, - 0x50, 0xb4, 0x7e, 0x5a, 0x03, 0xdc, 0x30, 0xe3, 0xf2, 0x70, 0xcc, 0xc3, 0xc9, 0x0a, 0x3c, 0x7d, - 0x06, 0x7d, 0x99, 0xaa, 0x46, 0x69, 0xeb, 0xe0, 0xfa, 0xb6, 0x1e, 0x14, 0x4c, 0xf7, 0x05, 0x7d, - 0x44, 0x5f, 0x17, 0x24, 0xa9, 0x44, 0xf1, 0x63, 0xd8, 0x10, 0x91, 0xcf, 0x08, 0x7b, 0x62, 0xac, - 0x2b, 0x07, 0x37, 0xd0, 0x27, 0x05, 0xd1, 0xdd, 0xd6, 0xfa, 0x1b, 0xba, 0x40, 0x4a, 0x49, 0xeb, - 0x7b, 0x04, 0x2f, 0xb7, 0xef, 0xcd, 0x4d, 0xb9, 0x3f, 0x66, 0x02, 0x7f, 0x8b, 0x00, 0x7b, 0xad, - 0xae, 0xbe, 0xc9, 0x77, 0xaf, 0x3f, 0xc7, 0x92, 0x13, 0x76, 0xf5, 0x48, 0x4b, 0xb6, 0x46, 0x96, - 0x9c, 0x69, 0xfd, 0x81, 0xe0, 0xa5, 0x36, 0xf4, 0x3e, 0x97, 0x09, 0x7e, 0xdc, 0x5a, 0xb2, 0x7d, - 0xbd, 0x25, 0xe7, 0x6c, 0xb5, 0xe2, 0xea, 0xfe, 0xcb, 0x4a, 0x63, 0xc1, 0x14, 0x7a, 0x3c, 0x61, - 0x41, 0xb9, 0xdd, 0xff, 0xe6, 0xba, 0x7a, 0x79, 0x8f, 0x72, 0x49, 0x52, 0x28, 0x5b, 0xbf, 0x21, - 0xd8, 0x6e, 0x80, 0x57, 0x60, 0xea, 0xd1, 0x45, 0x53, 0x6f, 0xdd, 0xce, 0xd4, 0x72, 0x37, 0x7f, - 0x23, 0x80, 0xfa, 0x7b, 0xc5, 0x43, 0xe8, 0xcd, 0x99, 0x18, 0x49, 0x03, 0xed, 0xad, 0xef, 0x0f, - 0xdc, 0x41, 0x8e, 0x7f, 0x98, 0x17, 0x48, 0x51, 0xc7, 0xaf, 0xc2, 0x80, 0xc6, 0xfc, 0x03, 0x11, - 0xa5, 0xb1, 0x34, 0xd6, 0x15, 0x68, 0x2b, 0x5b, 0x0c, 0x07, 0xf7, 0x4e, 0x8e, 0x8a, 0x22, 0xa9, - 0xfb, 0x39, 0x58, 0x30, 0x19, 0xa5, 0xc2, 0x63, 0xd2, 0xe8, 0xd6, 0x60, 0x52, 0x16, 0x49, 0xdd, - 0xc7, 0xef, 0xc0, 0x56, 0xf9, 0x70, 0x4c, 0x03, 0x26, 0x8d, 0x9e, 0x22, 0xec, 0x64, 0x8b, 0xe1, - 0x16, 0x69, 0x36, 0xc8, 0x45, 0x1c, 0x7e, 0x0f, 0xb6, 0xc3, 0x28, 0x2c, 0x21, 0x9f, 0x90, 0xfb, - 0xd2, 0x78, 0x4e, 0x51, 0x5f, 0xcc, 0x16, 0xc3, 0xed, 0xe3, 0x8b, 0x2d, 0xf2, 0x6f, 0xac, 0xf5, - 0x35, 0xec, 0x34, 0x02, 0x4b, 0x7f, 0x4b, 0x53, 0x80, 0xb8, 0x2a, 0xea, 0x95, 0xde, 0x2e, 0x01, - 0xab, 0x40, 0xaa, 0x6b, 0xa4, 0xa1, 0x6d, 0xfd, 0x82, 0xa0, 0xfb, 0xff, 0x4f, 0xf4, 0x1f, 0xd6, - 0x60, 0xf3, 0x59, 0x94, 0xdf, 0x20, 0xca, 0xf3, 0x14, 0x59, 0x6d, 0x34, 0xde, 0x3e, 0x45, 0xae, - 0xce, 0xc4, 0x9f, 0x11, 0xf4, 0x57, 0x14, 0x86, 0x0f, 0x2e, 0xda, 0xb0, 0x6f, 0x68, 0x63, 0xf9, - 0xfc, 0x5f, 0x41, 0xb9, 0x21, 0xfc, 0x1a, 0xf4, 0xcb, 0x00, 0x53, 0xd3, 0x0f, 0xea, 0x69, 0xca, - 0x8c, 0x23, 0x15, 0x02, 0xef, 0x41, 0x77, 0xc6, 0xc3, 0xb1, 0xb1, 0xa6, 0x90, 0xcf, 0x6b, 0x64, - 0xf7, 0x43, 0x1e, 0x8e, 0x89, 0xea, 0xe4, 0x88, 0x90, 0x06, 0x4c, 0xbd, 0x43, 0x0d, 0x44, 0x1e, - 0x5d, 0x44, 0x75, 0xac, 0x1f, 0x11, 0x6c, 0xe8, 0xf7, 0xaf, 0xd2, 0x43, 0x97, 0xea, 0x1d, 0x02, - 0xd0, 0x98, 0x3f, 0x64, 0x42, 0xf2, 0x28, 0xd4, 0xe7, 0x56, 0x5f, 0xca, 0xbd, 0x93, 0x23, 0xdd, - 0x21, 0x0d, 0xd4, 0xd5, 0x33, 0x60, 0x07, 0x06, 0xf9, 0xaf, 0x8c, 0xa9, 0xc7, 0x8c, 0xae, 0x82, - 0xed, 0x68, 0xd8, 0xe0, 0xb8, 0x6c, 0x90, 0x1a, 0xe3, 0xbe, 0x72, 0x7a, 0x6e, 0x76, 0xce, 0xce, - 0xcd, 0xce, 0xef, 0xe7, 0x66, 0xe7, 0x9b, 0xcc, 0x44, 0xa7, 0x99, 0x89, 0xce, 0x32, 0x13, 0xfd, - 0x99, 0x99, 0xe8, 0xbb, 0xbf, 0xcc, 0xce, 0xa3, 0x7e, 0x79, 0xf1, 0xff, 0x04, 0x00, 0x00, 0xff, - 0xff, 0x22, 0x38, 0x96, 0xd3, 0x59, 0x0c, 0x00, 0x00, + // 829 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x54, 0xcf, 0x6b, 0x24, 0x45, + 0x14, 0x9e, 0x4a, 0x66, 0xcc, 0xcc, 0x8b, 0x21, 0xa6, 0x04, 0x69, 0x73, 0xe8, 0x09, 0x7d, 0x0a, + 0xa8, 0xd5, 0x26, 0xae, 0xba, 0x07, 0x3d, 0x6c, 0x7b, 0x90, 0xe0, 0x1a, 0x43, 0x2d, 0x2e, 0xb8, + 0x2c, 0x68, 0x4d, 0x4f, 0xed, 0x4c, 0x39, 0xfd, 0x8b, 0xaa, 0xee, 0xc0, 0x22, 0x82, 0x47, 0x8f, + 0xfe, 0x15, 0x1e, 0x3d, 0x08, 0x1e, 0x3d, 0x79, 0x09, 0x7a, 0xd9, 0xe3, 0x7a, 0x19, 0x4c, 0xfb, + 0x87, 0x28, 0x5d, 0x5d, 0xfd, 0x23, 0x99, 0x09, 0xf9, 0x21, 0x04, 0x84, 0x3d, 0xcd, 0xf4, 0x7b, + 0xdf, 0xf7, 0xd5, 0xfb, 0xea, 0x75, 0x7f, 0x70, 0x77, 0x76, 0x57, 0x11, 0x11, 0xbb, 0xb3, 0x6c, + 0xc4, 0x65, 0xc4, 0x53, 0xae, 0xdc, 0x64, 0x36, 0x71, 0x59, 0x22, 0x94, 0x2b, 0x47, 0xcc, 0x77, + 0x8f, 0xf7, 0x58, 0x90, 0x4c, 0xd9, 0x9e, 0x3b, 0xe1, 0x11, 0x97, 0x2c, 0xe5, 0x63, 0x92, 0xc8, + 0x38, 0x8d, 0xf1, 0x6e, 0xc9, 0x24, 0x0d, 0x93, 0x24, 0xb3, 0x09, 0x29, 0x98, 0xa4, 0x60, 0x92, + 0x8a, 0xb9, 0xfd, 0xd6, 0x44, 0xa4, 0xd3, 0x6c, 0x44, 0xfc, 0x38, 0x74, 0x27, 0xf1, 0x24, 0x76, + 0xb5, 0xc0, 0x28, 0x7b, 0xa2, 0x9f, 0xf4, 0x83, 0xfe, 0x57, 0x0a, 0x6f, 0xdf, 0x31, 0x23, 0xb1, + 0x44, 0x84, 0xcc, 0x9f, 0x8a, 0x88, 0xcb, 0xa7, 0xcd, 0x50, 0x21, 0x4f, 0x99, 0x7b, 0xbc, 0x30, + 0xce, 0xb6, 0x7b, 0x11, 0x4b, 0x66, 0x51, 0x2a, 0x42, 0xbe, 0x40, 0x78, 0xef, 0x32, 0x82, 0xf2, + 0xa7, 0x3c, 0x64, 0x0b, 0xbc, 0x77, 0x2e, 0xe2, 0x65, 0xa9, 0x08, 0x5c, 0x11, 0xa5, 0x2a, 0x95, + 0xe7, 0x49, 0xce, 0xef, 0x08, 0xd6, 0x3f, 0x0a, 0x32, 0x95, 0x72, 0x49, 0xe3, 0x80, 0xe3, 0xaf, + 0xa0, 0x5f, 0x18, 0x19, 0xb3, 0x94, 0x59, 0x68, 0x07, 0xed, 0xae, 0xef, 0xbf, 0x4d, 0xcc, 0x7d, + 0xb6, 0x75, 0x9b, 0x1b, 0x2d, 0xd0, 0xe4, 0x78, 0x8f, 0x7c, 0x36, 0xfa, 0x9a, 0xfb, 0xe9, 0xa7, + 0x3c, 0x65, 0x1e, 0x3e, 0x99, 0x0f, 0x3b, 0xf9, 0x7c, 0x08, 0x4d, 0x8d, 0xd6, 0xaa, 0xf8, 0x0b, + 0xe8, 0xc9, 0x2c, 0xe0, 0xca, 0x5a, 0xd9, 0x59, 0xdd, 0x5d, 0xdf, 0xbf, 0x43, 0xae, 0xba, 0x2e, + 0x72, 0x14, 0x07, 0xc2, 0x7f, 0x4a, 0xb3, 0x80, 0x7b, 0x1b, 0xe6, 0x88, 0x5e, 0xf1, 0xa4, 0x68, + 0xa9, 0xe8, 0xfc, 0xb2, 0x02, 0xb8, 0x65, 0xc6, 0x13, 0xd1, 0x58, 0x44, 0x93, 0x5b, 0xf0, 0xf4, + 0x25, 0xf4, 0x55, 0xa6, 0x1b, 0x95, 0xad, 0xbd, 0xab, 0xdb, 0x7a, 0x50, 0x32, 0xbd, 0x57, 0xcc, + 0x11, 0x7d, 0x53, 0x50, 0xb4, 0x16, 0xc5, 0x8f, 0x61, 0x4d, 0xc6, 0x01, 0xa7, 0xfc, 0x89, 0xb5, + 0xaa, 0x1d, 0x5c, 0x43, 0x9f, 0x96, 0x44, 0x6f, 0xd3, 0xe8, 0xaf, 0x99, 0x02, 0xad, 0x24, 0x9d, + 0x1f, 0x11, 0xbc, 0xbe, 0x78, 0x6f, 0x5e, 0x26, 0x82, 0x31, 0x97, 0xf8, 0x7b, 0x04, 0xd8, 0x5f, + 0xe8, 0x9a, 0x9b, 0xfc, 0xe0, 0xea, 0x73, 0x2c, 0x39, 0x61, 0xdb, 0x8c, 0xb4, 0x64, 0x6b, 0x74, + 0xc9, 0x99, 0xce, 0x9f, 0x08, 0x5e, 0x5b, 0x84, 0xde, 0x17, 0x2a, 0xc5, 0x8f, 0x17, 0x96, 0x4c, + 0xae, 0xb6, 0xe4, 0x82, 0xad, 0x57, 0x5c, 0xdf, 0x7f, 0x55, 0x69, 0x2d, 0x98, 0x41, 0x4f, 0xa4, + 0x3c, 0xac, 0xb6, 0xfb, 0xdf, 0x5c, 0xd7, 0x2f, 0xef, 0x41, 0x21, 0x49, 0x4b, 0x65, 0xe7, 0x0f, + 0x04, 0x9b, 0x2d, 0xf0, 0x2d, 0x98, 0x7a, 0x74, 0xd6, 0xd4, 0xbb, 0x37, 0x33, 0xb5, 0xdc, 0xcd, + 0x3f, 0x08, 0xa0, 0xf9, 0x5e, 0xf1, 0x10, 0x7a, 0xc7, 0x5c, 0x8e, 0x94, 0x85, 0x76, 0x56, 0x77, + 0x07, 0xde, 0xa0, 0xc0, 0x3f, 0x2c, 0x0a, 0xb4, 0xac, 0xe3, 0x37, 0x60, 0xc0, 0x12, 0xf1, 0xb1, + 0x8c, 0xb3, 0x44, 0x59, 0xab, 0x1a, 0xb4, 0x91, 0xcf, 0x87, 0x83, 0x7b, 0x47, 0x07, 0x65, 0x91, + 0x36, 0xfd, 0x02, 0x2c, 0xb9, 0x8a, 0x33, 0xe9, 0x73, 0x65, 0x75, 0x1b, 0x30, 0xad, 0x8a, 0xb4, + 0xe9, 0xe3, 0xf7, 0x61, 0xa3, 0x7a, 0x38, 0x64, 0x21, 0x57, 0x56, 0x4f, 0x13, 0xb6, 0xf2, 0xf9, + 0x70, 0x83, 0xb6, 0x1b, 0xf4, 0x2c, 0x0e, 0x7f, 0x08, 0x9b, 0x51, 0x1c, 0x55, 0x90, 0xcf, 0xe9, + 0x7d, 0x65, 0xbd, 0xa4, 0xa9, 0xaf, 0xe6, 0xf3, 0xe1, 0xe6, 0xe1, 0xd9, 0x16, 0x3d, 0x8f, 0x75, + 0xbe, 0x85, 0xad, 0x56, 0x60, 0x99, 0x6f, 0x69, 0x0a, 0x90, 0xd4, 0x45, 0xb3, 0xd2, 0x9b, 0x25, + 0x60, 0x1d, 0x48, 0x4d, 0x8d, 0xb6, 0xb4, 0x9d, 0xdf, 0x10, 0x74, 0xff, 0xff, 0x89, 0xfe, 0xd3, + 0x0a, 0xac, 0xbf, 0x88, 0xf2, 0x6b, 0x44, 0x79, 0x91, 0x22, 0xb7, 0x1b, 0x8d, 0x37, 0x4f, 0x91, + 0xcb, 0x33, 0xf1, 0x57, 0x04, 0xfd, 0x5b, 0x0a, 0xc3, 0x07, 0x67, 0x6d, 0x90, 0x6b, 0xda, 0x58, + 0x3e, 0xff, 0x37, 0x50, 0x6d, 0x08, 0xbf, 0x09, 0xfd, 0x2a, 0xc0, 0xf4, 0xf4, 0x83, 0x66, 0x9a, + 0x2a, 0xe3, 0x68, 0x8d, 0xc0, 0x3b, 0xd0, 0x9d, 0x89, 0x68, 0x6c, 0xad, 0x68, 0xe4, 0xcb, 0x06, + 0xd9, 0xfd, 0x44, 0x44, 0x63, 0xaa, 0x3b, 0x05, 0x22, 0x62, 0x21, 0xd7, 0xef, 0x50, 0x0b, 0x51, + 0x44, 0x17, 0xd5, 0x1d, 0xe7, 0x67, 0x04, 0x6b, 0xe6, 0xfd, 0xab, 0xf5, 0xd0, 0x85, 0x7a, 0xfb, + 0x00, 0x2c, 0x11, 0x0f, 0xb9, 0x54, 0x22, 0x8e, 0xcc, 0xb9, 0xf5, 0x97, 0x72, 0xef, 0xe8, 0xc0, + 0x74, 0x68, 0x0b, 0x75, 0xf9, 0x0c, 0xd8, 0x85, 0x41, 0xf1, 0xab, 0x12, 0xe6, 0x73, 0xab, 0xab, + 0x61, 0x5b, 0x06, 0x36, 0x38, 0xac, 0x1a, 0xb4, 0xc1, 0x78, 0xe4, 0xe4, 0xd4, 0xee, 0x3c, 0x3b, + 0xb5, 0x3b, 0xcf, 0x4f, 0xed, 0xce, 0x77, 0xb9, 0x8d, 0x4e, 0x72, 0x1b, 0x3d, 0xcb, 0x6d, 0xf4, + 0x3c, 0xb7, 0xd1, 0x5f, 0xb9, 0x8d, 0x7e, 0xf8, 0xdb, 0xee, 0x3c, 0xea, 0x57, 0x97, 0xff, 0x6f, + 0x00, 0x00, 0x00, 0xff, 0xff, 0x20, 0x76, 0x05, 0x2e, 0x27, 0x0c, 0x00, 0x00, } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1alpha1/generated.proto b/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1alpha1/generated.proto index 75302176..3832ef3d 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1alpha1/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1alpha1/generated.proto @@ -25,7 +25,6 @@ import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; // Package-wide variables from generator "generated". option go_package = "v1alpha1"; diff --git a/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1beta1/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1beta1/generated.pb.go index 83bea96e..9ae32e77 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1beta1/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1beta1/generated.pb.go @@ -2766,57 +2766,56 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 824 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x54, 0xbf, 0x8f, 0xe3, 0x44, - 0x18, 0xcd, 0x64, 0x13, 0x6d, 0x3c, 0x4b, 0x14, 0x76, 0x90, 0x90, 0x49, 0xe1, 0x44, 0x6e, 0x58, - 0x04, 0x67, 0xdf, 0xde, 0x9d, 0x38, 0x24, 0x44, 0x81, 0x29, 0xd0, 0x89, 0x63, 0x39, 0x0d, 0x02, - 0xf1, 0x4b, 0xe8, 0x26, 0xce, 0x9c, 0x77, 0x88, 0x7f, 0x69, 0x66, 0x1c, 0x71, 0x82, 0x82, 0x8e, - 0x96, 0x7f, 0x82, 0xee, 0x3a, 0x5a, 0x2a, 0xaa, 0x85, 0xea, 0xca, 0xad, 0x22, 0xd6, 0xfc, 0x21, - 0x20, 0xdb, 0xe3, 0x1f, 0xc1, 0x59, 0x36, 0x2c, 0x52, 0x24, 0xa4, 0xab, 0x76, 0xe7, 0xfb, 0xde, - 0xfb, 0xe6, 0xbd, 0xf9, 0x9c, 0x07, 0xef, 0x2e, 0xde, 0x10, 0x16, 0x8b, 0xec, 0x45, 0x32, 0xa3, - 0x3c, 0xa4, 0x92, 0x0a, 0x3b, 0x5e, 0x78, 0x36, 0x89, 0x99, 0xb0, 0xf9, 0x8c, 0xb8, 0xf6, 0xf2, - 0x78, 0x46, 0x25, 0x39, 0xb6, 0x3d, 0x1a, 0x52, 0x4e, 0x24, 0x9d, 0x5b, 0x31, 0x8f, 0x64, 0x84, - 0x5e, 0x2e, 0x88, 0x56, 0x4d, 0xb4, 0xe2, 0x85, 0x67, 0x65, 0x44, 0x2b, 0x23, 0x5a, 0x8a, 0x38, - 0xbe, 0xe1, 0x31, 0x79, 0x9a, 0xcc, 0x2c, 0x37, 0x0a, 0x6c, 0x2f, 0xf2, 0x22, 0x3b, 0xe7, 0xcf, - 0x92, 0x47, 0xf9, 0x29, 0x3f, 0xe4, 0xff, 0x15, 0x73, 0xc7, 0x77, 0x94, 0x20, 0x12, 0xb3, 0x80, - 0xb8, 0xa7, 0x2c, 0xa4, 0xfc, 0x71, 0x2d, 0x29, 0xa0, 0x92, 0xd8, 0xcb, 0x96, 0x9a, 0xb1, 0x7d, - 0x19, 0x8b, 0x27, 0xa1, 0x64, 0x01, 0x6d, 0x11, 0x5e, 0xbf, 0x8a, 0x20, 0xdc, 0x53, 0x1a, 0x90, - 0x16, 0xef, 0xf6, 0x65, 0xbc, 0x44, 0x32, 0xdf, 0x66, 0xa1, 0x14, 0x92, 0xb7, 0x48, 0x0d, 0x4f, - 0x82, 0xf2, 0x25, 0xe5, 0xb5, 0x21, 0xfa, 0x35, 0x09, 0x62, 0x9f, 0x6e, 0xf0, 0x64, 0xfe, 0x0a, - 0xe0, 0xc1, 0x3b, 0x7e, 0x22, 0x24, 0xe5, 0x38, 0xf2, 0x29, 0x7a, 0x08, 0x07, 0x99, 0xfd, 0x39, - 0x91, 0x44, 0x07, 0x53, 0x70, 0x74, 0x70, 0xeb, 0xa6, 0xa5, 0x96, 0xd0, 0x54, 0x53, 0xaf, 0x21, - 0x43, 0x5b, 0xcb, 0x63, 0xeb, 0x83, 0xd9, 0x57, 0xd4, 0x95, 0xef, 0x53, 0x49, 0x1c, 0x74, 0xb6, - 0x9a, 0x74, 0xd2, 0xd5, 0x04, 0xd6, 0x35, 0x5c, 0x4d, 0x45, 0x9f, 0xc0, 0x3e, 0x4f, 0x7c, 0x2a, - 0xf4, 0xee, 0x74, 0xef, 0xe8, 0xe0, 0xd6, 0x6d, 0x6b, 0xcb, 0x1d, 0x5b, 0x0f, 0x22, 0x9f, 0xb9, - 0x8f, 0x71, 0xe2, 0x53, 0x67, 0xa8, 0x6e, 0xe8, 0x67, 0x27, 0x81, 0x8b, 0x81, 0xe6, 0x4f, 0x5d, - 0x88, 0x1a, 0x5e, 0x1c, 0x16, 0xce, 0x59, 0xe8, 0xed, 0xc0, 0xd2, 0x97, 0x70, 0x20, 0x92, 0xbc, - 0x51, 0xba, 0xba, 0xb9, 0xb5, 0xab, 0x0f, 0x0b, 0xa2, 0xf3, 0xbc, 0xba, 0x61, 0xa0, 0x0a, 0x02, - 0x57, 0x33, 0xd1, 0xe7, 0x70, 0x9f, 0x47, 0x3e, 0xc5, 0xf4, 0x91, 0xbe, 0xb7, 0x6e, 0xe0, 0xca, - 0xf1, 0xb8, 0xe0, 0x39, 0x23, 0x35, 0x7e, 0x5f, 0x15, 0x70, 0x39, 0xd1, 0xfc, 0x11, 0xc0, 0x97, - 0xda, 0xaf, 0xe6, 0x24, 0xcc, 0x9f, 0x53, 0x8e, 0xbe, 0x07, 0x10, 0xb9, 0xad, 0xae, 0x7a, 0xc7, - 0x37, 0xb7, 0x96, 0xb1, 0xe1, 0x82, 0xb1, 0x52, 0xb4, 0x61, 0x65, 0x78, 0xc3, 0x95, 0xe6, 0x39, - 0x80, 0x2f, 0xb6, 0xa1, 0xf7, 0x99, 0x90, 0xe8, 0x8b, 0xd6, 0x86, 0xad, 0xed, 0x36, 0x9c, 0xb1, - 0xf3, 0xfd, 0x56, 0xaf, 0x5f, 0x56, 0x1a, 0xdb, 0x7d, 0x08, 0xfb, 0x4c, 0xd2, 0xa0, 0x5c, 0xed, - 0x7f, 0x32, 0x5d, 0x7d, 0xb8, 0xf7, 0xb2, 0x89, 0xb8, 0x18, 0x6c, 0xfe, 0x06, 0xe0, 0xa8, 0x01, - 0xde, 0x81, 0xa7, 0x4f, 0xd7, 0x3d, 0xdd, 0xb9, 0x96, 0xa7, 0xcd, 0x66, 0xfe, 0x04, 0x10, 0xd6, - 0x3f, 0x55, 0x34, 0x81, 0xfd, 0x25, 0xe5, 0x33, 0xa1, 0x83, 0xe9, 0xde, 0x91, 0xe6, 0x68, 0x19, - 0xfe, 0xe3, 0xac, 0x80, 0x8b, 0x3a, 0x7a, 0x15, 0x6a, 0x24, 0x66, 0xef, 0xf2, 0x28, 0x89, 0x0b, - 0x39, 0x9a, 0x33, 0x4c, 0x57, 0x13, 0xed, 0xed, 0x07, 0xf7, 0x8a, 0x22, 0xae, 0xfb, 0x19, 0x98, - 0x53, 0x11, 0x25, 0xdc, 0xa5, 0x42, 0xdf, 0xab, 0xc1, 0xb8, 0x2c, 0xe2, 0xba, 0x8f, 0xee, 0xc2, - 0x61, 0x79, 0x38, 0x21, 0x01, 0x15, 0x7a, 0x2f, 0x27, 0x1c, 0xa6, 0xab, 0xc9, 0x10, 0x37, 0x1b, - 0x78, 0x1d, 0x87, 0xde, 0x82, 0xa3, 0x30, 0x0a, 0x4b, 0xc8, 0x47, 0xf8, 0xbe, 0xd0, 0xfb, 0x39, - 0xf5, 0x85, 0x74, 0x35, 0x19, 0x9d, 0xac, 0xb7, 0xf0, 0xdf, 0xb1, 0xe6, 0xb7, 0xf0, 0xb0, 0x91, - 0x55, 0xea, 0x87, 0xe4, 0x41, 0x18, 0x57, 0x45, 0xb5, 0xd1, 0x6b, 0x65, 0x5f, 0x15, 0x45, 0x75, - 0x0d, 0x37, 0x46, 0x9b, 0xbf, 0x00, 0xd8, 0xfb, 0xdf, 0x47, 0xf9, 0x93, 0x2e, 0x3c, 0x78, 0x96, - 0xe1, 0x5b, 0x67, 0x78, 0x16, 0x20, 0xbb, 0x0d, 0xc5, 0x6b, 0x07, 0xc8, 0xd5, 0x69, 0xf8, 0x33, - 0x80, 0x83, 0x1d, 0xc5, 0x20, 0x5e, 0x77, 0x71, 0xe3, 0xdf, 0xb9, 0xd8, 0x2c, 0xff, 0x1b, 0x58, - 0xee, 0x07, 0xbd, 0x06, 0x07, 0x65, 0x74, 0xe5, 0xe2, 0xb5, 0x5a, 0x4c, 0x99, 0x6e, 0xb8, 0x42, - 0xa0, 0x29, 0xec, 0x2d, 0x58, 0x38, 0xd7, 0xbb, 0x39, 0xf2, 0x39, 0x85, 0xec, 0xbd, 0xc7, 0xc2, - 0x39, 0xce, 0x3b, 0x19, 0x22, 0x24, 0x01, 0xcd, 0x3f, 0xa0, 0x06, 0x22, 0x0b, 0x2d, 0x9c, 0x77, - 0xcc, 0x27, 0x00, 0xee, 0xab, 0x8f, 0xaf, 0x9a, 0x07, 0x2e, 0x9d, 0xd7, 0xd4, 0xd7, 0xdd, 0x46, - 0xdf, 0x3f, 0xdf, 0x8e, 0x6c, 0xa8, 0x65, 0x7f, 0x45, 0x4c, 0x5c, 0xaa, 0xf7, 0x72, 0xd8, 0xa1, - 0x82, 0x69, 0x27, 0x65, 0x03, 0xd7, 0x18, 0xe7, 0x95, 0xb3, 0x0b, 0xa3, 0xf3, 0xf4, 0xc2, 0xe8, - 0x9c, 0x5f, 0x18, 0x9d, 0xef, 0x52, 0x03, 0x9c, 0xa5, 0x06, 0x78, 0x9a, 0x1a, 0xe0, 0xf7, 0xd4, - 0x00, 0x3f, 0xfc, 0x61, 0x74, 0x3e, 0xdb, 0x57, 0x2f, 0xfe, 0x57, 0x00, 0x00, 0x00, 0xff, 0xff, - 0x2d, 0xfe, 0x9c, 0x61, 0x44, 0x0c, 0x00, 0x00, + // 806 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x54, 0x3d, 0x6f, 0xc3, 0x44, + 0x18, 0xce, 0xe5, 0x43, 0x89, 0x2f, 0x44, 0xa1, 0x87, 0x84, 0x4c, 0x06, 0x27, 0xf2, 0x42, 0x25, + 0xa8, 0xdd, 0x2f, 0x51, 0x24, 0xc4, 0x80, 0x19, 0x50, 0x45, 0x29, 0xd5, 0x21, 0x10, 0x5f, 0x42, + 0x75, 0x9c, 0xab, 0x7b, 0xc4, 0x5f, 0xf2, 0x9d, 0x23, 0x55, 0x30, 0xb0, 0xb1, 0xf2, 0x27, 0xd8, + 0xba, 0xb1, 0x32, 0x31, 0x15, 0xa6, 0x8e, 0x9d, 0x22, 0x6a, 0x7e, 0x08, 0xc8, 0xf6, 0xf9, 0x23, + 0x4d, 0x4a, 0x43, 0x91, 0x22, 0x21, 0x31, 0xb5, 0xf7, 0xbe, 0xcf, 0xf3, 0xdc, 0xfb, 0xdc, 0xeb, + 0x3c, 0xf0, 0x68, 0xfa, 0x26, 0xd3, 0xa8, 0xaf, 0x4f, 0xa3, 0x31, 0x09, 0x3d, 0xc2, 0x09, 0xd3, + 0x83, 0xa9, 0xad, 0x9b, 0x01, 0x65, 0x7a, 0x38, 0x36, 0x2d, 0x7d, 0xb6, 0x37, 0x26, 0xdc, 0xdc, + 0xd3, 0x6d, 0xe2, 0x91, 0xd0, 0xe4, 0x64, 0xa2, 0x05, 0xa1, 0xcf, 0x7d, 0xf4, 0x6a, 0x46, 0xd4, + 0x4a, 0xa2, 0x16, 0x4c, 0x6d, 0x2d, 0x21, 0x6a, 0x09, 0x51, 0x13, 0xc4, 0xc1, 0x8e, 0x4d, 0xf9, + 0x65, 0x34, 0xd6, 0x2c, 0xdf, 0xd5, 0x6d, 0xdf, 0xf6, 0xf5, 0x94, 0x3f, 0x8e, 0x2e, 0xd2, 0x53, + 0x7a, 0x48, 0xff, 0xcb, 0x74, 0x07, 0x87, 0x62, 0x20, 0x33, 0xa0, 0xae, 0x69, 0x5d, 0x52, 0x8f, + 0x84, 0x57, 0xe5, 0x48, 0x2e, 0xe1, 0xa6, 0x3e, 0x5b, 0x9a, 0x66, 0xa0, 0x3f, 0xc6, 0x0a, 0x23, + 0x8f, 0x53, 0x97, 0x2c, 0x11, 0xde, 0x78, 0x8a, 0xc0, 0xac, 0x4b, 0xe2, 0x9a, 0x4b, 0xbc, 0x83, + 0xc7, 0x78, 0x11, 0xa7, 0x8e, 0x4e, 0x3d, 0xce, 0x78, 0xf8, 0x90, 0xa4, 0xfe, 0x0a, 0x60, 0xf7, + 0x5d, 0x27, 0x62, 0x9c, 0x84, 0xd8, 0x77, 0x08, 0x3a, 0x87, 0x9d, 0xc4, 0xc8, 0xc4, 0xe4, 0xa6, + 0x0c, 0x46, 0x60, 0xbb, 0xbb, 0xbf, 0xab, 0x89, 0xe7, 0xac, 0xea, 0x96, 0x0f, 0x9a, 0xa0, 0xb5, + 0xd9, 0x9e, 0xf6, 0xe1, 0xf8, 0x6b, 0x62, 0xf1, 0x0f, 0x08, 0x37, 0x0d, 0x74, 0x33, 0x1f, 0xd6, + 0xe2, 0xf9, 0x10, 0x96, 0x35, 0x5c, 0xa8, 0xa2, 0x4f, 0x61, 0x2b, 0x8c, 0x1c, 0xc2, 0xe4, 0xfa, + 0xa8, 0xb1, 0xdd, 0xdd, 0x3f, 0xd0, 0xd6, 0xdc, 0x96, 0x76, 0xe6, 0x3b, 0xd4, 0xba, 0xc2, 0x91, + 0x43, 0x8c, 0x9e, 0xb8, 0xa1, 0x95, 0x9c, 0x18, 0xce, 0x04, 0xd5, 0x9f, 0xea, 0x10, 0x55, 0xbc, + 0x18, 0xd4, 0x9b, 0x50, 0xcf, 0xde, 0x80, 0xa5, 0xaf, 0x60, 0x87, 0x45, 0x69, 0x23, 0x77, 0xb5, + 0xbb, 0xb6, 0xab, 0x8f, 0x32, 0xa2, 0xf1, 0xa2, 0xb8, 0xa1, 0x23, 0x0a, 0x0c, 0x17, 0x9a, 0xe8, + 0x0b, 0xd8, 0x0e, 0x7d, 0x87, 0x60, 0x72, 0x21, 0x37, 0x16, 0x0d, 0x3c, 0x29, 0x8f, 0x33, 0x9e, + 0xd1, 0x17, 0xf2, 0x6d, 0x51, 0xc0, 0xb9, 0xa2, 0xfa, 0x23, 0x80, 0xaf, 0x2c, 0xbf, 0x9a, 0x11, + 0x51, 0x67, 0x42, 0x42, 0xf4, 0x3d, 0x80, 0xc8, 0x5a, 0xea, 0x8a, 0x77, 0x7c, 0x6b, 0xed, 0x31, + 0x56, 0x5c, 0x30, 0x10, 0x13, 0xad, 0x58, 0x19, 0x5e, 0x71, 0xa5, 0x7a, 0x07, 0xe0, 0xcb, 0xcb, + 0xd0, 0x13, 0xca, 0x38, 0xfa, 0x72, 0x69, 0xc3, 0xda, 0x7a, 0x1b, 0x4e, 0xd8, 0xe9, 0x7e, 0x8b, + 0xd7, 0xcf, 0x2b, 0x95, 0xed, 0x9e, 0xc3, 0x16, 0xe5, 0xc4, 0xcd, 0x57, 0xfb, 0xaf, 0x4c, 0x17, + 0x1f, 0xee, 0x71, 0xa2, 0x88, 0x33, 0x61, 0xf5, 0x37, 0x00, 0xfb, 0x15, 0xf0, 0x06, 0x3c, 0x7d, + 0xb6, 0xe8, 0xe9, 0xf0, 0x59, 0x9e, 0x56, 0x9b, 0xf9, 0x13, 0x40, 0x58, 0xfe, 0x54, 0xd1, 0x10, + 0xb6, 0x66, 0x24, 0x1c, 0x33, 0x19, 0x8c, 0x1a, 0xdb, 0x92, 0x21, 0x25, 0xf8, 0x4f, 0x92, 0x02, + 0xce, 0xea, 0xe8, 0x35, 0x28, 0x99, 0x01, 0x7d, 0x2f, 0xf4, 0xa3, 0x20, 0x1b, 0x47, 0x32, 0x7a, + 0xf1, 0x7c, 0x28, 0xbd, 0x73, 0x76, 0x9c, 0x15, 0x71, 0xd9, 0x4f, 0xc0, 0x21, 0x61, 0x7e, 0x14, + 0x5a, 0x84, 0xc9, 0x8d, 0x12, 0x8c, 0xf3, 0x22, 0x2e, 0xfb, 0xe8, 0x08, 0xf6, 0xf2, 0xc3, 0xa9, + 0xe9, 0x12, 0x26, 0x37, 0x53, 0xc2, 0x56, 0x3c, 0x1f, 0xf6, 0x70, 0xb5, 0x81, 0x17, 0x71, 0xe8, + 0x6d, 0xd8, 0xf7, 0x7c, 0x2f, 0x87, 0x7c, 0x8c, 0x4f, 0x98, 0xdc, 0x4a, 0xa9, 0x2f, 0xc5, 0xf3, + 0x61, 0xff, 0x74, 0xb1, 0x85, 0x1f, 0x62, 0xd5, 0x6f, 0xe1, 0x56, 0x25, 0xab, 0xc4, 0x0f, 0xc9, + 0x86, 0x30, 0x28, 0x8a, 0x62, 0xa3, 0xcf, 0xca, 0xbe, 0x22, 0x8a, 0xca, 0x1a, 0xae, 0x48, 0xab, + 0xbf, 0x00, 0xd8, 0xfc, 0xcf, 0x47, 0xf9, 0x75, 0x1d, 0x76, 0xff, 0xcf, 0xf0, 0xb5, 0x33, 0x3c, + 0x09, 0x90, 0xcd, 0x86, 0xe2, 0xb3, 0x03, 0xe4, 0xe9, 0x34, 0xfc, 0x19, 0xc0, 0xce, 0x86, 0x62, + 0x10, 0x2f, 0xba, 0xd8, 0xf9, 0x67, 0x2e, 0x56, 0x8f, 0xff, 0x0d, 0xcc, 0xf7, 0x83, 0x5e, 0x87, + 0x9d, 0x3c, 0xba, 0xd2, 0xe1, 0xa5, 0x72, 0x98, 0x3c, 0xdd, 0x70, 0x81, 0x40, 0x23, 0xd8, 0x9c, + 0x52, 0x6f, 0x22, 0xd7, 0x53, 0xe4, 0x0b, 0x02, 0xd9, 0x7c, 0x9f, 0x7a, 0x13, 0x9c, 0x76, 0x12, + 0x84, 0x67, 0xba, 0x24, 0xfd, 0x80, 0x2a, 0x88, 0x24, 0xb4, 0x70, 0xda, 0x51, 0xaf, 0x01, 0x6c, + 0x8b, 0x8f, 0xaf, 0xd0, 0x03, 0x8f, 0xea, 0x55, 0xe7, 0xab, 0xaf, 0x33, 0xdf, 0xdf, 0xdf, 0x8e, + 0x74, 0x28, 0x25, 0x7f, 0x59, 0x60, 0x5a, 0x44, 0x6e, 0xa6, 0xb0, 0x2d, 0x01, 0x93, 0x4e, 0xf3, + 0x06, 0x2e, 0x31, 0xc6, 0xce, 0xcd, 0xbd, 0x52, 0xbb, 0xbd, 0x57, 0x6a, 0x77, 0xf7, 0x4a, 0xed, + 0xbb, 0x58, 0x01, 0x37, 0xb1, 0x02, 0x6e, 0x63, 0x05, 0xdc, 0xc5, 0x0a, 0xf8, 0x3d, 0x56, 0xc0, + 0x0f, 0x7f, 0x28, 0xb5, 0xcf, 0xdb, 0xe2, 0xd5, 0xff, 0x0a, 0x00, 0x00, 0xff, 0xff, 0x6d, 0x2c, + 0xb9, 0x90, 0x12, 0x0c, 0x00, 0x00, } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1beta1/generated.proto b/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1beta1/generated.proto index b18fc0fd..39f99487 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1beta1/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1beta1/generated.proto @@ -25,7 +25,6 @@ import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; // Package-wide variables from generator "generated". option go_package = "v1beta1"; diff --git a/vendor/k8s.io/kubernetes/pkg/apis/settings/v1alpha1/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/apis/settings/v1alpha1/generated.pb.go index 62cf8935..1bcec657 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/settings/v1alpha1/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/settings/v1alpha1/generated.pb.go @@ -891,40 +891,39 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 550 bytes of a gzipped FileDescriptorProto + // 538 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x92, 0x41, 0x8b, 0xd3, 0x40, - 0x14, 0xc7, 0x9b, 0x6d, 0x4b, 0xeb, 0xb4, 0x8b, 0x12, 0x3c, 0x84, 0x1e, 0xb2, 0x4b, 0xf1, 0xb0, - 0xea, 0x3a, 0xb1, 0xab, 0xa8, 0xa0, 0xa7, 0xc8, 0x0a, 0x82, 0xcb, 0x2e, 0x29, 0xf4, 0x20, 0x2b, - 0x38, 0x4d, 0x9f, 0x69, 0x6c, 0x93, 0x09, 0x33, 0x93, 0xa0, 0x37, 0x3f, 0x82, 0x5f, 0x4a, 0x28, - 0xe8, 0x61, 0x8f, 0x9e, 0x16, 0x5b, 0xbf, 0x88, 0xcc, 0x74, 0xd2, 0x44, 0xba, 0x65, 0xab, 0xb7, - 0x79, 0x8f, 0xf7, 0xff, 0xbd, 0xff, 0x3f, 0x2f, 0xe8, 0xc5, 0xe4, 0x19, 0xc7, 0x21, 0x75, 0x26, - 0xe9, 0x10, 0x58, 0x0c, 0x02, 0xb8, 0x93, 0x4c, 0x02, 0x87, 0x24, 0x21, 0x77, 0x38, 0x08, 0x11, - 0xc6, 0x01, 0x77, 0xb2, 0x1e, 0x99, 0x26, 0x63, 0xd2, 0x73, 0x02, 0x88, 0x81, 0x11, 0x01, 0x23, - 0x9c, 0x30, 0x2a, 0xa8, 0x79, 0xb8, 0x54, 0xe3, 0x42, 0x8d, 0x93, 0x49, 0x80, 0xa5, 0x1a, 0xe7, - 0x6a, 0x9c, 0xab, 0x3b, 0x0f, 0x82, 0x50, 0x8c, 0xd3, 0x21, 0xf6, 0x69, 0xe4, 0x04, 0x34, 0xa0, - 0x8e, 0x82, 0x0c, 0xd3, 0x0f, 0xaa, 0x52, 0x85, 0x7a, 0x2d, 0xe1, 0x9d, 0xc7, 0xda, 0x1a, 0x49, - 0xc2, 0x88, 0xf8, 0xe3, 0x30, 0x06, 0xf6, 0xb9, 0x30, 0x17, 0x81, 0x20, 0x4e, 0xb6, 0x66, 0xa9, - 0xe3, 0x6c, 0x52, 0xb1, 0x34, 0x16, 0x61, 0x04, 0x6b, 0x82, 0x27, 0xd7, 0x09, 0xb8, 0x3f, 0x86, - 0x88, 0xac, 0xe9, 0x4a, 0xf6, 0x38, 0xb0, 0x0c, 0x58, 0xe1, 0x0d, 0x3e, 0x91, 0x28, 0x99, 0xc2, - 0x55, 0xf6, 0x0e, 0x37, 0x7e, 0xef, 0x2b, 0xa6, 0xbb, 0x3f, 0x0c, 0x74, 0xe3, 0x8c, 0x8e, 0xce, - 0x18, 0x70, 0x10, 0xe6, 0x7b, 0xd4, 0x94, 0xa9, 0x47, 0x44, 0x10, 0xcb, 0xd8, 0x37, 0x0e, 0x5a, - 0x47, 0x0f, 0xb1, 0x3e, 0x40, 0xd9, 0x7c, 0x71, 0x02, 0x39, 0x8d, 0xb3, 0x1e, 0x3e, 0x1d, 0x7e, - 0x04, 0x5f, 0x9c, 0x80, 0x20, 0xae, 0x39, 0xbb, 0xdc, 0xab, 0x2c, 0x2e, 0xf7, 0x50, 0xd1, 0xf3, - 0x56, 0x54, 0xf3, 0x1d, 0xaa, 0xf1, 0x04, 0x7c, 0x6b, 0x47, 0xd1, 0x9f, 0xe3, 0x7f, 0x39, 0x2f, - 0x5e, 0x19, 0xed, 0x27, 0xe0, 0xbb, 0x6d, 0xbd, 0xa8, 0x26, 0x2b, 0x4f, 0x61, 0xbb, 0xdf, 0x0d, - 0xb4, 0xbb, 0x9a, 0x7a, 0x13, 0x72, 0x61, 0x9e, 0xaf, 0x45, 0xc2, 0xdb, 0x45, 0x92, 0x6a, 0x15, - 0xe8, 0x96, 0xde, 0xd3, 0xcc, 0x3b, 0xa5, 0x38, 0xe7, 0xa8, 0x1e, 0x0a, 0x88, 0xb8, 0xb5, 0xb3, - 0x5f, 0x3d, 0x68, 0x1d, 0x3d, 0xfd, 0xcf, 0x3c, 0xee, 0xae, 0xde, 0x51, 0x7f, 0x2d, 0x69, 0xde, - 0x12, 0xda, 0xfd, 0x56, 0x2d, 0xa5, 0x91, 0x29, 0x4d, 0x82, 0x9a, 0x1c, 0xa6, 0xe0, 0x0b, 0xca, - 0x74, 0x9a, 0x47, 0x5b, 0xa6, 0x21, 0x43, 0x98, 0xf6, 0xb5, 0xb4, 0x88, 0x94, 0x77, 0xbc, 0x15, - 0xd6, 0x7c, 0x89, 0xaa, 0x10, 0x67, 0x3a, 0xd0, 0x9d, 0xcd, 0x81, 0x24, 0xf5, 0x38, 0xce, 0x06, - 0x84, 0xb9, 0x2d, 0x8d, 0xab, 0x1e, 0xc7, 0x99, 0x27, 0xd5, 0xe6, 0x00, 0x35, 0x20, 0xce, 0x5e, - 0x31, 0x1a, 0x59, 0x55, 0x05, 0xba, 0x7f, 0x2d, 0x48, 0x0e, 0xf7, 0x69, 0xca, 0x7c, 0x70, 0x6f, - 0x6a, 0x5e, 0x43, 0xb7, 0xbd, 0x1c, 0x66, 0x9e, 0xa2, 0x46, 0x46, 0xa7, 0x69, 0x04, 0xdc, 0xaa, - 0x6d, 0x63, 0x70, 0xa0, 0x86, 0x0b, 0xe0, 0xb2, 0xe6, 0x5e, 0x4e, 0x31, 0x7d, 0xd4, 0x5e, 0x3e, - 0x4f, 0x68, 0x1a, 0x0b, 0x6e, 0xd5, 0x15, 0xf5, 0xee, 0x36, 0x54, 0xa5, 0x70, 0x6f, 0x6b, 0x74, - 0xbb, 0xd4, 0xe4, 0xde, 0x5f, 0x50, 0xf7, 0xde, 0x6c, 0x6e, 0x57, 0x2e, 0xe6, 0x76, 0xe5, 0xe7, - 0xdc, 0xae, 0x7c, 0x59, 0xd8, 0xc6, 0x6c, 0x61, 0x1b, 0x17, 0x0b, 0xdb, 0xf8, 0xb5, 0xb0, 0x8d, - 0xaf, 0xbf, 0xed, 0xca, 0xdb, 0x66, 0xfe, 0x4f, 0xfc, 0x09, 0x00, 0x00, 0xff, 0xff, 0x91, 0x84, - 0x03, 0x10, 0x2f, 0x05, 0x00, 0x00, + 0x14, 0xc7, 0x9b, 0xed, 0x96, 0xd6, 0x69, 0x17, 0x25, 0x78, 0x08, 0x3d, 0x64, 0x97, 0xe2, 0x61, + 0xc5, 0x75, 0x62, 0x57, 0x51, 0x41, 0x4f, 0x91, 0x15, 0x04, 0x97, 0x5d, 0x52, 0xe8, 0x41, 0x56, + 0x70, 0x9a, 0x3e, 0xd3, 0xd8, 0x26, 0x13, 0x66, 0x26, 0x01, 0x6f, 0x7e, 0x04, 0xbf, 0x94, 0x50, + 0xd0, 0xc3, 0x1e, 0xf7, 0xb4, 0xd8, 0xf8, 0x45, 0x64, 0x26, 0x93, 0xa6, 0x52, 0xcb, 0x56, 0x6f, + 0xf3, 0x1e, 0xef, 0xff, 0x7b, 0xff, 0xff, 0x4b, 0xd0, 0xcb, 0xe9, 0x73, 0x8e, 0x43, 0xea, 0x4c, + 0xd3, 0x11, 0xb0, 0x18, 0x04, 0x70, 0x27, 0x99, 0x06, 0x0e, 0x49, 0x42, 0xee, 0x70, 0x10, 0x22, + 0x8c, 0x03, 0xee, 0x64, 0x7d, 0x32, 0x4b, 0x26, 0xa4, 0xef, 0x04, 0x10, 0x03, 0x23, 0x02, 0xc6, + 0x38, 0x61, 0x54, 0x50, 0xf3, 0xa8, 0x50, 0xe3, 0x4a, 0x8d, 0x93, 0x69, 0x80, 0xa5, 0x1a, 0x97, + 0x6a, 0x5c, 0xaa, 0xbb, 0x0f, 0x83, 0x50, 0x4c, 0xd2, 0x11, 0xf6, 0x69, 0xe4, 0x04, 0x34, 0xa0, + 0x8e, 0x82, 0x8c, 0xd2, 0x8f, 0xaa, 0x52, 0x85, 0x7a, 0x15, 0xf0, 0xee, 0x13, 0x6d, 0x8d, 0x24, + 0x61, 0x44, 0xfc, 0x49, 0x18, 0x03, 0xfb, 0x5c, 0x99, 0x8b, 0x40, 0x10, 0x27, 0x5b, 0xb3, 0xd4, + 0x75, 0x36, 0xa9, 0x58, 0x1a, 0x8b, 0x30, 0x82, 0x35, 0xc1, 0xd3, 0x9b, 0x04, 0xdc, 0x9f, 0x40, + 0x44, 0xd6, 0x74, 0x47, 0x1b, 0x2f, 0xf7, 0x17, 0x5b, 0xbd, 0x1f, 0x06, 0xba, 0x75, 0x4e, 0xc7, + 0xe7, 0x0c, 0x38, 0x08, 0xf3, 0x03, 0x6a, 0x49, 0xff, 0x63, 0x22, 0x88, 0x65, 0x1c, 0x18, 0x87, + 0xed, 0xe3, 0x47, 0x58, 0x9f, 0x72, 0xd5, 0x46, 0x75, 0x4c, 0x39, 0x8d, 0xb3, 0x3e, 0x3e, 0x1b, + 0x7d, 0x02, 0x5f, 0x9c, 0x82, 0x20, 0xae, 0x39, 0xbf, 0xde, 0xaf, 0xe5, 0xd7, 0xfb, 0xa8, 0xea, + 0x79, 0x4b, 0xaa, 0xf9, 0x1e, 0xed, 0xf2, 0x04, 0x7c, 0x6b, 0x47, 0xd1, 0x5f, 0xe0, 0x7f, 0xf9, + 0x50, 0x78, 0x69, 0x74, 0x90, 0x80, 0xef, 0x76, 0xf4, 0xa2, 0x5d, 0x59, 0x79, 0x0a, 0xdb, 0xfb, + 0x6e, 0xa0, 0xbd, 0xe5, 0xd4, 0xdb, 0x90, 0x0b, 0xf3, 0x62, 0x2d, 0x12, 0xde, 0x2e, 0x92, 0x54, + 0xab, 0x40, 0x77, 0xf4, 0x9e, 0x56, 0xd9, 0x59, 0x89, 0x73, 0x81, 0x1a, 0xa1, 0x80, 0x88, 0x5b, + 0x3b, 0x07, 0xf5, 0xc3, 0xf6, 0xf1, 0xb3, 0xff, 0xcc, 0xe3, 0xee, 0xe9, 0x1d, 0x8d, 0x37, 0x92, + 0xe6, 0x15, 0xd0, 0xde, 0xb7, 0xfa, 0x4a, 0x1a, 0x99, 0xd2, 0x24, 0xa8, 0xc5, 0x61, 0x06, 0xbe, + 0xa0, 0x4c, 0xa7, 0x79, 0xbc, 0x65, 0x1a, 0x32, 0x82, 0xd9, 0x40, 0x4b, 0xab, 0x48, 0x65, 0xc7, + 0x5b, 0x62, 0xcd, 0x57, 0xa8, 0x0e, 0x71, 0xa6, 0x03, 0xdd, 0xdb, 0x1c, 0x48, 0x52, 0x4f, 0xe2, + 0x6c, 0x48, 0x98, 0xdb, 0xd6, 0xb8, 0xfa, 0x49, 0x9c, 0x79, 0x52, 0x6d, 0x0e, 0x51, 0x13, 0xe2, + 0xec, 0x35, 0xa3, 0x91, 0x55, 0x57, 0xa0, 0x07, 0x37, 0x82, 0xe4, 0xf0, 0x80, 0xa6, 0xcc, 0x07, + 0xf7, 0xb6, 0xe6, 0x35, 0x75, 0xdb, 0x2b, 0x61, 0xe6, 0x19, 0x6a, 0x66, 0x74, 0x96, 0x46, 0xc0, + 0xad, 0xdd, 0x6d, 0x0c, 0x0e, 0xd5, 0x70, 0x05, 0x2c, 0x6a, 0xee, 0x95, 0x14, 0xd3, 0x47, 0x9d, + 0xe2, 0x79, 0x4a, 0xd3, 0x58, 0x70, 0xab, 0xa1, 0xa8, 0xf7, 0xb7, 0xa1, 0x2a, 0x85, 0x7b, 0x57, + 0xa3, 0x3b, 0x2b, 0x4d, 0xee, 0xfd, 0x01, 0x75, 0xf1, 0x7c, 0x61, 0xd7, 0x2e, 0x17, 0x76, 0xed, + 0x6a, 0x61, 0xd7, 0xbe, 0xe4, 0xb6, 0x31, 0xcf, 0x6d, 0xe3, 0x32, 0xb7, 0x8d, 0xab, 0xdc, 0x36, + 0x7e, 0xe6, 0xb6, 0xf1, 0xf5, 0x97, 0x5d, 0x7b, 0xd7, 0x2a, 0xff, 0x8b, 0xdf, 0x01, 0x00, 0x00, + 0xff, 0xff, 0x80, 0x75, 0x96, 0xb8, 0xfd, 0x04, 0x00, 0x00, } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/settings/v1alpha1/generated.proto b/vendor/k8s.io/kubernetes/pkg/apis/settings/v1alpha1/generated.proto index c27c921f..0eea07c9 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/settings/v1alpha1/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/apis/settings/v1alpha1/generated.proto @@ -24,7 +24,6 @@ package k8s.io.kubernetes.pkg.apis.settings.v1alpha1; import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; import "k8s.io/kubernetes/pkg/api/v1/generated.proto"; // Package-wide variables from generator "generated". @@ -43,7 +42,7 @@ message PodPreset { // PodPresetList is a list of PodPreset objects. message PodPresetList { // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; diff --git a/vendor/k8s.io/kubernetes/pkg/apis/settings/v1alpha1/types.go b/vendor/k8s.io/kubernetes/pkg/apis/settings/v1alpha1/types.go index ffe38487..6e3cf460 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/settings/v1alpha1/types.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/settings/v1alpha1/types.go @@ -58,7 +58,7 @@ type PodPresetSpec struct { type PodPresetList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` diff --git a/vendor/k8s.io/kubernetes/pkg/apis/settings/v1alpha1/types_swagger_doc_generated.go b/vendor/k8s.io/kubernetes/pkg/apis/settings/v1alpha1/types_swagger_doc_generated.go index 63a7be99..2a89e556 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/settings/v1alpha1/types_swagger_doc_generated.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/settings/v1alpha1/types_swagger_doc_generated.go @@ -37,7 +37,7 @@ func (PodPreset) SwaggerDoc() map[string]string { var map_PodPresetList = map[string]string{ "": "PodPresetList is a list of PodPreset objects.", - "metadata": "Standard list metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "items": "Items is a list of schema objects.", } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/storage/types.go b/vendor/k8s.io/kubernetes/pkg/apis/storage/types.go index e3e4160b..827e7c66 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/storage/types.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/storage/types.go @@ -51,7 +51,7 @@ type StorageClass struct { type StorageClassList struct { metav1.TypeMeta // Standard list metadata - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta diff --git a/vendor/k8s.io/kubernetes/pkg/apis/storage/v1/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/apis/storage/v1/generated.pb.go index 9e90596e..1daa21f8 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/storage/v1/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/storage/v1/generated.pb.go @@ -34,9 +34,10 @@ import proto "github.com/gogo/protobuf/proto" import fmt "fmt" import math "math" +import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + import strings "strings" import reflect "reflect" -import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" import io "io" @@ -91,10 +92,15 @@ func (m *StorageClass) MarshalTo(dAtA []byte) (int, error) { i = encodeVarintGenerated(dAtA, i, uint64(len(m.Provisioner))) i += copy(dAtA[i:], m.Provisioner) if len(m.Parameters) > 0 { + keysForParameters := make([]string, 0, len(m.Parameters)) for k := range m.Parameters { + keysForParameters = append(keysForParameters, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForParameters) + for _, k := range keysForParameters { dAtA[i] = 0x1a i++ - v := m.Parameters[k] + v := m.Parameters[string(k)] mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v))) i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) dAtA[i] = 0xa @@ -707,35 +713,34 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 474 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x92, 0x4f, 0x6f, 0xd3, 0x30, - 0x18, 0xc6, 0xe3, 0x54, 0x95, 0x36, 0x17, 0x44, 0x15, 0x38, 0x54, 0x3d, 0x64, 0xd5, 0x04, 0x52, - 0x2f, 0xd8, 0x74, 0x63, 0x68, 0x42, 0xe2, 0xd2, 0x89, 0x03, 0x12, 0x88, 0x29, 0x5c, 0x10, 0xe2, - 0x80, 0xdb, 0xbd, 0xa4, 0x26, 0x4d, 0x1c, 0xd9, 0x6f, 0x02, 0xbd, 0xf1, 0x11, 0xf8, 0x58, 0x15, - 0xa7, 0x1d, 0x39, 0x0d, 0x1a, 0xbe, 0x08, 0xca, 0x1f, 0x96, 0x88, 0x6c, 0xa2, 0xda, 0x2d, 0xaf, - 0xed, 0xdf, 0xe3, 0xe7, 0x79, 0x1c, 0x7a, 0x14, 0x1c, 0x1b, 0x26, 0x15, 0x0f, 0x92, 0x19, 0xe8, - 0x08, 0x10, 0x0c, 0x8f, 0x03, 0x9f, 0x8b, 0x58, 0x1a, 0x6e, 0x50, 0x69, 0xe1, 0x03, 0x4f, 0x27, - 0xdc, 0x87, 0x08, 0xb4, 0x40, 0x38, 0x63, 0xb1, 0x56, 0xa8, 0x9c, 0x07, 0x25, 0xc6, 0x6a, 0x8c, - 0xc5, 0x81, 0xcf, 0x72, 0x8c, 0x55, 0x18, 0x4b, 0x27, 0xc3, 0x87, 0xbe, 0xc4, 0x45, 0x32, 0x63, - 0x73, 0x15, 0x72, 0x5f, 0xf9, 0x8a, 0x17, 0xf4, 0x2c, 0xf9, 0x58, 0x4c, 0xc5, 0x50, 0x7c, 0x95, - 0xaa, 0xc3, 0xc7, 0x95, 0x19, 0x11, 0xcb, 0x50, 0xcc, 0x17, 0x32, 0x02, 0xbd, 0xaa, 0xed, 0x84, - 0x80, 0xe2, 0x0a, 0x2f, 0x43, 0x7e, 0x1d, 0xa5, 0x93, 0x08, 0x65, 0x08, 0x2d, 0xe0, 0xc9, 0xff, - 0x00, 0x33, 0x5f, 0x40, 0x28, 0x5a, 0xdc, 0xe1, 0x75, 0x5c, 0x82, 0x72, 0xc9, 0x65, 0x84, 0x06, - 0x75, 0x0b, 0x6a, 0x64, 0x32, 0xa0, 0x53, 0xd0, 0x75, 0x20, 0xf8, 0x22, 0xc2, 0x78, 0x79, 0x55, - 0xbf, 0xfb, 0x3f, 0x6d, 0x7a, 0xeb, 0x4d, 0xd9, 0xe3, 0xc9, 0x52, 0x18, 0xe3, 0x7c, 0xa0, 0x3b, - 0x79, 0xfe, 0x33, 0x81, 0x62, 0x40, 0x46, 0x64, 0xdc, 0x3b, 0x78, 0xc4, 0xaa, 0x37, 0x68, 0xda, - 0xa9, 0x5f, 0x21, 0x3f, 0xcd, 0xd2, 0x09, 0x7b, 0x3d, 0xfb, 0x04, 0x73, 0x7c, 0x05, 0x28, 0xa6, - 0xce, 0xfa, 0x62, 0xcf, 0xca, 0x2e, 0xf6, 0x68, 0xbd, 0xe6, 0x5d, 0xaa, 0x3a, 0x47, 0xb4, 0x17, - 0x6b, 0x95, 0x4a, 0x23, 0x55, 0x04, 0x7a, 0x60, 0x8f, 0xc8, 0x78, 0x77, 0x7a, 0xb7, 0x42, 0x7a, - 0xa7, 0xf5, 0x96, 0xd7, 0x3c, 0xe7, 0x7c, 0xa6, 0x34, 0x16, 0x5a, 0x84, 0x80, 0xa0, 0xcd, 0xa0, - 0x33, 0xea, 0x8c, 0x7b, 0x07, 0x27, 0x6c, 0xab, 0xdf, 0x83, 0x35, 0x13, 0xb2, 0xd3, 0x4b, 0x95, - 0xe7, 0x11, 0xea, 0x55, 0xed, 0xb6, 0xde, 0xf0, 0x1a, 0x57, 0x0d, 0x9f, 0xd1, 0x3b, 0xff, 0x20, - 0x4e, 0x9f, 0x76, 0x02, 0x58, 0x15, 0xfd, 0xec, 0x7a, 0xf9, 0xa7, 0x73, 0x8f, 0x76, 0x53, 0xb1, - 0x4c, 0xa0, 0x8c, 0xe3, 0x95, 0xc3, 0x53, 0xfb, 0x98, 0xec, 0x7f, 0x27, 0xb4, 0xdf, 0xbc, 0xff, - 0xa5, 0x34, 0xe8, 0xbc, 0x6f, 0xb5, 0xcc, 0xb6, 0x6b, 0x39, 0xa7, 0x8b, 0x8e, 0xfb, 0x95, 0xeb, - 0x9d, 0xbf, 0x2b, 0x8d, 0x86, 0xdf, 0xd2, 0xae, 0x44, 0x08, 0xcd, 0xc0, 0x2e, 0x5a, 0x3a, 0xbc, - 0x41, 0x4b, 0xd3, 0xdb, 0x95, 0x7e, 0xf7, 0x45, 0xae, 0xe4, 0x95, 0x82, 0xd3, 0xfb, 0xeb, 0x8d, - 0x6b, 0x9d, 0x6f, 0x5c, 0xeb, 0xc7, 0xc6, 0xb5, 0xbe, 0x66, 0x2e, 0x59, 0x67, 0x2e, 0x39, 0xcf, - 0x5c, 0xf2, 0x2b, 0x73, 0xc9, 0xb7, 0xdf, 0xae, 0xf5, 0xce, 0x4e, 0x27, 0x7f, 0x02, 0x00, 0x00, - 0xff, 0xff, 0xe8, 0xe1, 0xb9, 0x93, 0xec, 0x03, 0x00, 0x00, + // 460 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x91, 0xcf, 0x6f, 0xd3, 0x30, + 0x14, 0xc7, 0xe3, 0x54, 0x95, 0x36, 0x17, 0x44, 0x15, 0x38, 0x54, 0x3d, 0x78, 0xd5, 0x24, 0xa4, + 0x5e, 0xb0, 0xe9, 0xc6, 0xd0, 0x84, 0xc4, 0xa5, 0x13, 0x07, 0x24, 0x10, 0x53, 0xb8, 0x20, 0xc4, + 0x01, 0xb7, 0x7b, 0xa4, 0x26, 0x4d, 0x1c, 0xd9, 0x2f, 0x41, 0xbd, 0xf1, 0x27, 0xf0, 0x67, 0x55, + 0x9c, 0x76, 0xdc, 0x69, 0xd0, 0xf0, 0x8f, 0xa0, 0xfc, 0x60, 0x89, 0x56, 0x26, 0x26, 0x6e, 0x7e, + 0xb6, 0x3f, 0x5f, 0xbf, 0xf7, 0x31, 0x3d, 0x0a, 0x8f, 0x2d, 0x57, 0x5a, 0x84, 0xe9, 0x0c, 0x4c, + 0x0c, 0x08, 0x56, 0x24, 0x61, 0x20, 0x64, 0xa2, 0xac, 0xb0, 0xa8, 0x8d, 0x0c, 0x40, 0x64, 0x13, + 0x11, 0x40, 0x0c, 0x46, 0x22, 0x9c, 0xf1, 0xc4, 0x68, 0xd4, 0xde, 0xc3, 0x0a, 0xe3, 0x0d, 0xc6, + 0x93, 0x30, 0xe0, 0x05, 0xc6, 0x6b, 0x8c, 0x67, 0x93, 0xe1, 0xa3, 0x40, 0xe1, 0x22, 0x9d, 0xf1, + 0xb9, 0x8e, 0x44, 0xa0, 0x03, 0x2d, 0x4a, 0x7a, 0x96, 0x7e, 0x2a, 0xab, 0xb2, 0x28, 0x57, 0x55, + 0xea, 0xf0, 0x49, 0xdd, 0x8c, 0x4c, 0x54, 0x24, 0xe7, 0x0b, 0x15, 0x83, 0x59, 0x35, 0xed, 0x44, + 0x80, 0xf2, 0x2f, 0xbd, 0x0c, 0xc5, 0x4d, 0x94, 0x49, 0x63, 0x54, 0x11, 0x6c, 0x01, 0x4f, 0xff, + 0x05, 0xd8, 0xf9, 0x02, 0x22, 0xb9, 0xc5, 0x1d, 0xde, 0xc4, 0xa5, 0xa8, 0x96, 0x42, 0xc5, 0x68, + 0xd1, 0x5c, 0x87, 0xf6, 0x7f, 0xb8, 0xf4, 0xce, 0xdb, 0xca, 0xc8, 0xc9, 0x52, 0x5a, 0xeb, 0x7d, + 0xa4, 0x3b, 0xc5, 0x24, 0x67, 0x12, 0xe5, 0x80, 0x8c, 0xc8, 0xb8, 0x77, 0xf0, 0x98, 0xd7, 0x36, + 0xdb, 0xc1, 0x8d, 0xcf, 0xe2, 0x36, 0xcf, 0x26, 0xfc, 0xcd, 0xec, 0x33, 0xcc, 0xf1, 0x35, 0xa0, + 0x9c, 0x7a, 0xeb, 0xcb, 0x3d, 0x27, 0xbf, 0xdc, 0xa3, 0xcd, 0x9e, 0x7f, 0x95, 0xea, 0x1d, 0xd1, + 0x5e, 0x62, 0x74, 0xa6, 0xac, 0xd2, 0x31, 0x98, 0x81, 0x3b, 0x22, 0xe3, 0xdd, 0xe9, 0xfd, 0x1a, + 0xe9, 0x9d, 0x36, 0x47, 0x7e, 0xfb, 0x9e, 0xf7, 0x85, 0xd2, 0x44, 0x1a, 0x19, 0x01, 0x82, 0xb1, + 0x83, 0xce, 0xa8, 0x33, 0xee, 0x1d, 0x9c, 0xf0, 0x5b, 0x7d, 0x34, 0x6f, 0x4f, 0xc8, 0x4f, 0xaf, + 0x52, 0x5e, 0xc4, 0x68, 0x56, 0x4d, 0xb7, 0xcd, 0x81, 0xdf, 0x7a, 0x6a, 0xf8, 0x9c, 0xde, 0xbb, + 0x86, 0x78, 0x7d, 0xda, 0x09, 0x61, 0x55, 0xfa, 0xd9, 0xf5, 0x8b, 0xa5, 0xf7, 0x80, 0x76, 0x33, + 0xb9, 0x4c, 0xa1, 0x1a, 0xc7, 0xaf, 0x8a, 0x67, 0xee, 0x31, 0xd9, 0xff, 0x4e, 0x68, 0xbf, 0xfd, + 0xfe, 0x2b, 0x65, 0xd1, 0xfb, 0xb0, 0x65, 0x99, 0xdf, 0xce, 0x72, 0x41, 0x97, 0x8e, 0xfb, 0x75, + 0xd7, 0x3b, 0x7f, 0x76, 0x5a, 0x86, 0xdf, 0xd1, 0xae, 0x42, 0x88, 0xec, 0xc0, 0x2d, 0x2d, 0x1d, + 0xfe, 0x87, 0xa5, 0xe9, 0xdd, 0x3a, 0xbf, 0xfb, 0xb2, 0x48, 0xf2, 0xab, 0xc0, 0xe9, 0x78, 0xbd, + 0x61, 0xce, 0xf9, 0x86, 0x39, 0x17, 0x1b, 0xe6, 0x7c, 0xcd, 0x19, 0x59, 0xe7, 0x8c, 0x9c, 0xe7, + 0x8c, 0x5c, 0xe4, 0x8c, 0xfc, 0xcc, 0x19, 0xf9, 0xf6, 0x8b, 0x39, 0xef, 0xdd, 0x6c, 0xf2, 0x3b, + 0x00, 0x00, 0xff, 0xff, 0x0b, 0xb7, 0x00, 0xe1, 0xba, 0x03, 0x00, 0x00, } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/storage/v1/generated.proto b/vendor/k8s.io/kubernetes/pkg/apis/storage/v1/generated.proto index 9457ee7a..8eea744e 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/storage/v1/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/apis/storage/v1/generated.proto @@ -25,7 +25,6 @@ import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; // Package-wide variables from generator "generated". option go_package = "v1"; @@ -37,7 +36,7 @@ option go_package = "v1"; // according to etcd is in ObjectMeta.Name. message StorageClass { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; @@ -53,7 +52,7 @@ message StorageClass { // StorageClassList is a collection of storage classes. message StorageClassList { // Standard list metadata - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; diff --git a/vendor/k8s.io/kubernetes/pkg/apis/storage/v1/types.go b/vendor/k8s.io/kubernetes/pkg/apis/storage/v1/types.go index 26828ceb..971db769 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/storage/v1/types.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/storage/v1/types.go @@ -31,7 +31,7 @@ import ( type StorageClass struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -48,7 +48,7 @@ type StorageClass struct { type StorageClassList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` diff --git a/vendor/k8s.io/kubernetes/pkg/apis/storage/v1/types_swagger_doc_generated.go b/vendor/k8s.io/kubernetes/pkg/apis/storage/v1/types_swagger_doc_generated.go index 767ef607..a13106fa 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/storage/v1/types_swagger_doc_generated.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/storage/v1/types_swagger_doc_generated.go @@ -29,7 +29,7 @@ package v1 // AUTO-GENERATED FUNCTIONS START HERE var map_StorageClass = map[string]string{ "": "StorageClass describes the parameters for a class of storage for which PersistentVolumes can be dynamically provisioned.\n\nStorageClasses are non-namespaced; the name of the storage class according to etcd is in ObjectMeta.Name.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "provisioner": "Provisioner indicates the type of the provisioner.", "parameters": "Parameters holds the parameters for the provisioner that should create volumes of this storage class.", } @@ -40,7 +40,7 @@ func (StorageClass) SwaggerDoc() map[string]string { var map_StorageClassList = map[string]string{ "": "StorageClassList is a collection of storage classes.", - "metadata": "Standard list metadata More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard list metadata More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "items": "Items is the list of StorageClasses", } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/storage/v1beta1/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/apis/storage/v1beta1/generated.pb.go index 9c3e0c57..05350b5c 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/storage/v1beta1/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/storage/v1beta1/generated.pb.go @@ -34,9 +34,10 @@ import proto "github.com/gogo/protobuf/proto" import fmt "fmt" import math "math" +import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" + import strings "strings" import reflect "reflect" -import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys" import io "io" @@ -91,10 +92,15 @@ func (m *StorageClass) MarshalTo(dAtA []byte) (int, error) { i = encodeVarintGenerated(dAtA, i, uint64(len(m.Provisioner))) i += copy(dAtA[i:], m.Provisioner) if len(m.Parameters) > 0 { + keysForParameters := make([]string, 0, len(m.Parameters)) for k := range m.Parameters { + keysForParameters = append(keysForParameters, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForParameters) + for _, k := range keysForParameters { dAtA[i] = 0x1a i++ - v := m.Parameters[k] + v := m.Parameters[string(k)] mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v))) i = encodeVarintGenerated(dAtA, i, uint64(mapSize)) dAtA[i] = 0xa @@ -707,35 +713,35 @@ func init() { } var fileDescriptorGenerated = []byte{ - // 479 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x92, 0x4d, 0x8b, 0xd3, 0x40, - 0x1c, 0xc6, 0x33, 0x2d, 0xc5, 0xdd, 0xa9, 0x62, 0x89, 0x1e, 0x4a, 0x0f, 0xd9, 0xb2, 0xa7, 0x2a, - 0x38, 0x63, 0xd7, 0x17, 0xca, 0x82, 0x97, 0x8a, 0xa0, 0xa0, 0xb8, 0xc4, 0x9b, 0x28, 0x38, 0xe9, - 0xfe, 0x4d, 0xc7, 0x34, 0x99, 0x30, 0xf3, 0x4f, 0xb0, 0xe0, 0xc1, 0x8f, 0xe0, 0xc7, 0xea, 0xcd, - 0x3d, 0x7a, 0x5a, 0x6c, 0xf4, 0x83, 0x48, 0x5e, 0xdc, 0x04, 0xe3, 0x62, 0xf1, 0x96, 0x79, 0xf9, - 0x3d, 0xff, 0xe7, 0x79, 0x26, 0xf4, 0x38, 0x98, 0x19, 0x26, 0x15, 0x0f, 0x12, 0x0f, 0x74, 0x04, - 0x08, 0x86, 0xc7, 0x81, 0xcf, 0x45, 0x2c, 0x0d, 0x37, 0xa8, 0xb4, 0xf0, 0x81, 0xa7, 0x53, 0x0f, - 0x50, 0x4c, 0xb9, 0x0f, 0x11, 0x68, 0x81, 0x70, 0xca, 0x62, 0xad, 0x50, 0xd9, 0xb7, 0x4b, 0x96, - 0xd5, 0x2c, 0x8b, 0x03, 0x9f, 0xe5, 0x2c, 0xab, 0x58, 0x56, 0xb1, 0xa3, 0x3b, 0xbe, 0xc4, 0x65, - 0xe2, 0xb1, 0x85, 0x0a, 0xb9, 0xaf, 0x7c, 0xc5, 0x0b, 0x09, 0x2f, 0x79, 0x5f, 0xac, 0x8a, 0x45, - 0xf1, 0x55, 0x4a, 0x8f, 0xee, 0x57, 0xb6, 0x44, 0x2c, 0x43, 0xb1, 0x58, 0xca, 0x08, 0xf4, 0xba, - 0x36, 0x16, 0x02, 0x0a, 0x9e, 0xb6, 0x0c, 0x8d, 0xf8, 0x65, 0x94, 0x4e, 0x22, 0x94, 0x21, 0xb4, - 0x80, 0x87, 0xff, 0x02, 0xcc, 0x62, 0x09, 0xa1, 0x68, 0x71, 0xf7, 0x2e, 0xe3, 0x12, 0x94, 0x2b, - 0x2e, 0x23, 0x34, 0xa8, 0x5b, 0x50, 0x23, 0x93, 0x01, 0x9d, 0x82, 0xae, 0x03, 0xc1, 0x47, 0x11, - 0xc6, 0x2b, 0xf8, 0x4b, 0xa6, 0xc3, 0x9f, 0x1d, 0x7a, 0xf5, 0x55, 0x59, 0xe6, 0xe3, 0x95, 0x30, - 0xc6, 0x7e, 0x47, 0xf7, 0xf2, 0xfc, 0xa7, 0x02, 0xc5, 0x90, 0x8c, 0xc9, 0xa4, 0x7f, 0x74, 0x97, - 0x55, 0x0f, 0xd1, 0xb4, 0x53, 0x3f, 0x45, 0x7e, 0x9b, 0xa5, 0x53, 0xf6, 0xd2, 0xfb, 0x00, 0x0b, - 0x7c, 0x01, 0x28, 0xe6, 0xf6, 0xe6, 0xfc, 0xc0, 0xca, 0xce, 0x0f, 0x68, 0xbd, 0xe7, 0x5e, 0xa8, - 0xda, 0x0f, 0x68, 0x3f, 0xd6, 0x2a, 0x95, 0x46, 0xaa, 0x08, 0xf4, 0xb0, 0x33, 0x26, 0x93, 0xfd, - 0xf9, 0x8d, 0x0a, 0xe9, 0x9f, 0xd4, 0x47, 0x6e, 0xf3, 0x9e, 0xfd, 0x89, 0xd2, 0x58, 0x68, 0x11, - 0x02, 0x82, 0x36, 0xc3, 0xee, 0xb8, 0x3b, 0xe9, 0x1f, 0x3d, 0x65, 0xbb, 0xff, 0x23, 0xac, 0x19, - 0x93, 0x9d, 0x5c, 0x48, 0x3d, 0x89, 0x50, 0xaf, 0x6b, 0xcb, 0xf5, 0x81, 0xdb, 0x98, 0x37, 0x7a, - 0x44, 0xaf, 0xff, 0x81, 0xd8, 0x03, 0xda, 0x0d, 0x60, 0x5d, 0x94, 0xb4, 0xef, 0xe6, 0x9f, 0xf6, - 0x4d, 0xda, 0x4b, 0xc5, 0x2a, 0x81, 0x32, 0x93, 0x5b, 0x2e, 0x8e, 0x3b, 0x33, 0x72, 0xf8, 0x95, - 0xd0, 0x41, 0x73, 0xfe, 0x73, 0x69, 0xd0, 0x7e, 0xd3, 0xaa, 0x9a, 0xed, 0x56, 0x75, 0x4e, 0x17, - 0x45, 0x0f, 0x2a, 0xd7, 0x7b, 0xbf, 0x77, 0x1a, 0x35, 0xbf, 0xa5, 0x3d, 0x89, 0x10, 0x9a, 0x61, - 0xa7, 0xa8, 0x6a, 0xf6, 0xbf, 0x55, 0xcd, 0xaf, 0x55, 0x43, 0x7a, 0xcf, 0x72, 0x39, 0xb7, 0x54, - 0x9d, 0xdf, 0xda, 0x6c, 0x1d, 0xeb, 0x6c, 0xeb, 0x58, 0xdf, 0xb6, 0x8e, 0xf5, 0x39, 0x73, 0xc8, - 0x26, 0x73, 0xc8, 0x59, 0xe6, 0x90, 0xef, 0x99, 0x43, 0xbe, 0xfc, 0x70, 0xac, 0xd7, 0x57, 0x2a, - 0xb5, 0x5f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x7e, 0xb2, 0x39, 0x2a, 0x05, 0x04, 0x00, 0x00, + // 466 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x91, 0xcf, 0x6b, 0x13, 0x41, + 0x14, 0xc7, 0x77, 0x52, 0x82, 0xed, 0x44, 0x31, 0xac, 0x1e, 0x42, 0x0e, 0xd3, 0xd0, 0x53, 0x10, + 0x3a, 0x63, 0xea, 0x0f, 0x42, 0xc1, 0x4b, 0x44, 0x50, 0x50, 0x2c, 0xeb, 0x4d, 0x14, 0x9c, 0x4d, + 0x9f, 0x9b, 0x71, 0xb3, 0x3b, 0xcb, 0xcc, 0xdb, 0x85, 0x80, 0x07, 0xff, 0x04, 0xff, 0xac, 0xdc, + 0xec, 0xb1, 0xa7, 0x62, 0x56, 0xff, 0x10, 0xd9, 0x1f, 0x76, 0x97, 0x86, 0x62, 0xf1, 0xb6, 0x6f, + 0x66, 0x3e, 0xdf, 0xf7, 0xde, 0x67, 0xe9, 0x71, 0x38, 0xb5, 0x5c, 0x69, 0x11, 0xa6, 0x3e, 0x98, + 0x18, 0x10, 0xac, 0x48, 0xc2, 0x40, 0xc8, 0x44, 0x59, 0x61, 0x51, 0x1b, 0x19, 0x80, 0xc8, 0x26, + 0x3e, 0xa0, 0x9c, 0x88, 0x00, 0x62, 0x30, 0x12, 0xe1, 0x94, 0x27, 0x46, 0xa3, 0x76, 0x1f, 0x54, + 0x2c, 0x6f, 0x58, 0x9e, 0x84, 0x01, 0x2f, 0x58, 0x5e, 0xb3, 0xbc, 0x66, 0x87, 0x87, 0x81, 0xc2, + 0x45, 0xea, 0xf3, 0xb9, 0x8e, 0x44, 0xa0, 0x03, 0x2d, 0xca, 0x08, 0x3f, 0xfd, 0x5c, 0x56, 0x65, + 0x51, 0x7e, 0x55, 0xd1, 0xc3, 0xc7, 0xf5, 0x58, 0x32, 0x51, 0x91, 0x9c, 0x2f, 0x54, 0x0c, 0x66, + 0xd5, 0x0c, 0x16, 0x01, 0x4a, 0x91, 0x6d, 0x0d, 0x34, 0x14, 0xd7, 0x51, 0x26, 0x8d, 0x51, 0x45, + 0xb0, 0x05, 0x3c, 0xfd, 0x17, 0x60, 0xe7, 0x0b, 0x88, 0xe4, 0x16, 0xf7, 0xe8, 0x3a, 0x2e, 0x45, + 0xb5, 0x14, 0x2a, 0x46, 0x8b, 0xe6, 0x2a, 0x74, 0xf0, 0xbb, 0x43, 0x6f, 0xbf, 0xab, 0xb4, 0x3c, + 0x5f, 0x4a, 0x6b, 0xdd, 0x4f, 0x74, 0xb7, 0xd8, 0xe4, 0x54, 0xa2, 0x1c, 0x90, 0x11, 0x19, 0xf7, + 0x8e, 0x1e, 0xf2, 0x5a, 0x69, 0x3b, 0xb8, 0x91, 0x5a, 0xbc, 0xe6, 0xd9, 0x84, 0xbf, 0xf5, 0xbf, + 0xc0, 0x1c, 0xdf, 0x00, 0xca, 0x99, 0xbb, 0xbe, 0xd8, 0x77, 0xf2, 0x8b, 0x7d, 0xda, 0x9c, 0x79, + 0x97, 0xa9, 0xee, 0x13, 0xda, 0x4b, 0x8c, 0xce, 0x94, 0x55, 0x3a, 0x06, 0x33, 0xe8, 0x8c, 0xc8, + 0x78, 0x6f, 0x76, 0xaf, 0x46, 0x7a, 0x27, 0xcd, 0x95, 0xd7, 0x7e, 0xe7, 0x7e, 0xa5, 0x34, 0x91, + 0x46, 0x46, 0x80, 0x60, 0xec, 0x60, 0x67, 0xb4, 0x33, 0xee, 0x1d, 0xbd, 0xe4, 0x37, 0xff, 0xdb, + 0xbc, 0xbd, 0x26, 0x3f, 0xb9, 0x8c, 0x7a, 0x11, 0xa3, 0x59, 0x35, 0x23, 0x37, 0x17, 0x5e, 0xab, + 0xdf, 0xf0, 0x19, 0xbd, 0x7b, 0x05, 0x71, 0xfb, 0x74, 0x27, 0x84, 0x55, 0x29, 0x69, 0xcf, 0x2b, + 0x3e, 0xdd, 0xfb, 0xb4, 0x9b, 0xc9, 0x65, 0x0a, 0xd5, 0x4e, 0x5e, 0x55, 0x1c, 0x77, 0xa6, 0xe4, + 0xe0, 0x07, 0xa1, 0xfd, 0x76, 0xff, 0xd7, 0xca, 0xa2, 0xfb, 0x61, 0x4b, 0x35, 0xbf, 0x99, 0xea, + 0x82, 0x2e, 0x45, 0xf7, 0xeb, 0xa9, 0x77, 0xff, 0x9e, 0xb4, 0x34, 0x7f, 0xa4, 0x5d, 0x85, 0x10, + 0xd9, 0x41, 0xa7, 0x54, 0x35, 0xfd, 0x5f, 0x55, 0xb3, 0x3b, 0x75, 0x93, 0xee, 0xab, 0x22, 0xce, + 0xab, 0x52, 0x67, 0x87, 0xeb, 0x0d, 0x73, 0xce, 0x36, 0xcc, 0x39, 0xdf, 0x30, 0xe7, 0x5b, 0xce, + 0xc8, 0x3a, 0x67, 0xe4, 0x2c, 0x67, 0xe4, 0x3c, 0x67, 0xe4, 0x67, 0xce, 0xc8, 0xf7, 0x5f, 0xcc, + 0x79, 0x7f, 0xab, 0x4e, 0xfc, 0x13, 0x00, 0x00, 0xff, 0xff, 0xaf, 0x85, 0xaa, 0xb3, 0xd3, 0x03, + 0x00, 0x00, } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/storage/v1beta1/generated.proto b/vendor/k8s.io/kubernetes/pkg/apis/storage/v1beta1/generated.proto index 28080dd6..c50f4593 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/storage/v1beta1/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/apis/storage/v1beta1/generated.proto @@ -25,7 +25,6 @@ import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/generated.proto"; import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto"; import "k8s.io/apimachinery/pkg/util/intstr/generated.proto"; -import "k8s.io/apiserver/pkg/apis/example/v1/generated.proto"; // Package-wide variables from generator "generated". option go_package = "v1beta1"; @@ -37,7 +36,7 @@ option go_package = "v1beta1"; // according to etcd is in ObjectMeta.Name. message StorageClass { // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1; @@ -53,7 +52,7 @@ message StorageClass { // StorageClassList is a collection of storage classes. message StorageClassList { // Standard list metadata - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; diff --git a/vendor/k8s.io/kubernetes/pkg/apis/storage/v1beta1/types.go b/vendor/k8s.io/kubernetes/pkg/apis/storage/v1beta1/types.go index 8211f674..8b475678 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/storage/v1beta1/types.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/storage/v1beta1/types.go @@ -31,7 +31,7 @@ import ( type StorageClass struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` @@ -48,7 +48,7 @@ type StorageClass struct { type StorageClassList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata - // More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata + // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` diff --git a/vendor/k8s.io/kubernetes/pkg/apis/storage/v1beta1/types_swagger_doc_generated.go b/vendor/k8s.io/kubernetes/pkg/apis/storage/v1beta1/types_swagger_doc_generated.go index a6e5288c..0d43bb03 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/storage/v1beta1/types_swagger_doc_generated.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/storage/v1beta1/types_swagger_doc_generated.go @@ -29,7 +29,7 @@ package v1beta1 // AUTO-GENERATED FUNCTIONS START HERE var map_StorageClass = map[string]string{ "": "StorageClass describes the parameters for a class of storage for which PersistentVolumes can be dynamically provisioned.\n\nStorageClasses are non-namespaced; the name of the storage class according to etcd is in ObjectMeta.Name.", - "metadata": "Standard object's metadata. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "provisioner": "Provisioner indicates the type of the provisioner.", "parameters": "Parameters holds the parameters for the provisioner that should create volumes of this storage class.", } @@ -40,7 +40,7 @@ func (StorageClass) SwaggerDoc() map[string]string { var map_StorageClassList = map[string]string{ "": "StorageClassList is a collection of storage classes.", - "metadata": "Standard list metadata More info: https://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.md#metadata", + "metadata": "Standard list metadata More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "items": "Items is the list of StorageClasses", } diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/clientset.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/clientset.go index 88df7ab7..f477de36 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/clientset.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/clientset.go @@ -21,6 +21,7 @@ import ( discovery "k8s.io/client-go/discovery" rest "k8s.io/client-go/rest" flowcontrol "k8s.io/client-go/util/flowcontrol" + admissionregistrationv1alpha1 "k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/admissionregistration/v1alpha1" appsv1beta1 "k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/apps/v1beta1" authenticationv1 "k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/authentication/v1" authenticationv1beta1 "k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/authentication/v1beta1" @@ -33,6 +34,7 @@ import ( certificatesv1beta1 "k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/certificates/v1beta1" corev1 "k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/core/v1" extensionsv1beta1 "k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/extensions/v1beta1" + networkingv1 "k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/networking/v1" policyv1beta1 "k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/policy/v1beta1" rbacv1alpha1 "k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/rbac/v1alpha1" rbacv1beta1 "k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/rbac/v1beta1" @@ -43,6 +45,9 @@ import ( type Interface interface { Discovery() discovery.DiscoveryInterface + AdmissionregistrationV1alpha1() admissionregistrationv1alpha1.AdmissionregistrationV1alpha1Interface + // Deprecated: please explicitly pick a version if possible. + Admissionregistration() admissionregistrationv1alpha1.AdmissionregistrationV1alpha1Interface CoreV1() corev1.CoreV1Interface // Deprecated: please explicitly pick a version if possible. Core() corev1.CoreV1Interface @@ -71,6 +76,9 @@ type Interface interface { ExtensionsV1beta1() extensionsv1beta1.ExtensionsV1beta1Interface // Deprecated: please explicitly pick a version if possible. Extensions() extensionsv1beta1.ExtensionsV1beta1Interface + NetworkingV1() networkingv1.NetworkingV1Interface + // Deprecated: please explicitly pick a version if possible. + Networking() networkingv1.NetworkingV1Interface PolicyV1beta1() policyv1beta1.PolicyV1beta1Interface // Deprecated: please explicitly pick a version if possible. Policy() policyv1beta1.PolicyV1beta1Interface @@ -91,6 +99,7 @@ type Interface interface { // version included in a Clientset. type Clientset struct { *discovery.DiscoveryClient + *admissionregistrationv1alpha1.AdmissionregistrationV1alpha1Client *corev1.CoreV1Client *appsv1beta1.AppsV1beta1Client *authenticationv1.AuthenticationV1Client @@ -103,6 +112,7 @@ type Clientset struct { *batchv2alpha1.BatchV2alpha1Client *certificatesv1beta1.CertificatesV1beta1Client *extensionsv1beta1.ExtensionsV1beta1Client + *networkingv1.NetworkingV1Client *policyv1beta1.PolicyV1beta1Client *rbacv1beta1.RbacV1beta1Client *rbacv1alpha1.RbacV1alpha1Client @@ -111,6 +121,23 @@ type Clientset struct { *storagev1.StorageV1Client } +// AdmissionregistrationV1alpha1 retrieves the AdmissionregistrationV1alpha1Client +func (c *Clientset) AdmissionregistrationV1alpha1() admissionregistrationv1alpha1.AdmissionregistrationV1alpha1Interface { + if c == nil { + return nil + } + return c.AdmissionregistrationV1alpha1Client +} + +// Deprecated: Admissionregistration retrieves the default version of AdmissionregistrationClient. +// Please explicitly pick a version. +func (c *Clientset) Admissionregistration() admissionregistrationv1alpha1.AdmissionregistrationV1alpha1Interface { + if c == nil { + return nil + } + return c.AdmissionregistrationV1alpha1Client +} + // CoreV1 retrieves the CoreV1Client func (c *Clientset) CoreV1() corev1.CoreV1Interface { if c == nil { @@ -279,6 +306,23 @@ func (c *Clientset) Extensions() extensionsv1beta1.ExtensionsV1beta1Interface { return c.ExtensionsV1beta1Client } +// NetworkingV1 retrieves the NetworkingV1Client +func (c *Clientset) NetworkingV1() networkingv1.NetworkingV1Interface { + if c == nil { + return nil + } + return c.NetworkingV1Client +} + +// Deprecated: Networking retrieves the default version of NetworkingClient. +// Please explicitly pick a version. +func (c *Clientset) Networking() networkingv1.NetworkingV1Interface { + if c == nil { + return nil + } + return c.NetworkingV1Client +} + // PolicyV1beta1 retrieves the PolicyV1beta1Client func (c *Clientset) PolicyV1beta1() policyv1beta1.PolicyV1beta1Interface { if c == nil { @@ -379,6 +423,10 @@ func NewForConfig(c *rest.Config) (*Clientset, error) { } var cs Clientset var err error + cs.AdmissionregistrationV1alpha1Client, err = admissionregistrationv1alpha1.NewForConfig(&configShallowCopy) + if err != nil { + return nil, err + } cs.CoreV1Client, err = corev1.NewForConfig(&configShallowCopy) if err != nil { return nil, err @@ -427,6 +475,10 @@ func NewForConfig(c *rest.Config) (*Clientset, error) { if err != nil { return nil, err } + cs.NetworkingV1Client, err = networkingv1.NewForConfig(&configShallowCopy) + if err != nil { + return nil, err + } cs.PolicyV1beta1Client, err = policyv1beta1.NewForConfig(&configShallowCopy) if err != nil { return nil, err @@ -464,6 +516,7 @@ func NewForConfig(c *rest.Config) (*Clientset, error) { // panics if there is an error in the config. func NewForConfigOrDie(c *rest.Config) *Clientset { var cs Clientset + cs.AdmissionregistrationV1alpha1Client = admissionregistrationv1alpha1.NewForConfigOrDie(c) cs.CoreV1Client = corev1.NewForConfigOrDie(c) cs.AppsV1beta1Client = appsv1beta1.NewForConfigOrDie(c) cs.AuthenticationV1Client = authenticationv1.NewForConfigOrDie(c) @@ -476,6 +529,7 @@ func NewForConfigOrDie(c *rest.Config) *Clientset { cs.BatchV2alpha1Client = batchv2alpha1.NewForConfigOrDie(c) cs.CertificatesV1beta1Client = certificatesv1beta1.NewForConfigOrDie(c) cs.ExtensionsV1beta1Client = extensionsv1beta1.NewForConfigOrDie(c) + cs.NetworkingV1Client = networkingv1.NewForConfigOrDie(c) cs.PolicyV1beta1Client = policyv1beta1.NewForConfigOrDie(c) cs.RbacV1beta1Client = rbacv1beta1.NewForConfigOrDie(c) cs.RbacV1alpha1Client = rbacv1alpha1.NewForConfigOrDie(c) @@ -490,6 +544,7 @@ func NewForConfigOrDie(c *rest.Config) *Clientset { // New creates a new Clientset for the given RESTClient. func New(c rest.Interface) *Clientset { var cs Clientset + cs.AdmissionregistrationV1alpha1Client = admissionregistrationv1alpha1.New(c) cs.CoreV1Client = corev1.New(c) cs.AppsV1beta1Client = appsv1beta1.New(c) cs.AuthenticationV1Client = authenticationv1.New(c) @@ -502,6 +557,7 @@ func New(c rest.Interface) *Clientset { cs.BatchV2alpha1Client = batchv2alpha1.New(c) cs.CertificatesV1beta1Client = certificatesv1beta1.New(c) cs.ExtensionsV1beta1Client = extensionsv1beta1.New(c) + cs.NetworkingV1Client = networkingv1.New(c) cs.PolicyV1beta1Client = policyv1beta1.New(c) cs.RbacV1beta1Client = rbacv1beta1.New(c) cs.RbacV1alpha1Client = rbacv1alpha1.New(c) diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/scheme/register.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/scheme/register.go index 813426e9..1047b67a 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/scheme/register.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/scheme/register.go @@ -22,6 +22,7 @@ import ( schema "k8s.io/apimachinery/pkg/runtime/schema" serializer "k8s.io/apimachinery/pkg/runtime/serializer" corev1 "k8s.io/kubernetes/pkg/api/v1" + admissionregistrationv1alpha1 "k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1" appsv1beta1 "k8s.io/kubernetes/pkg/apis/apps/v1beta1" authenticationv1 "k8s.io/kubernetes/pkg/apis/authentication/v1" authenticationv1beta1 "k8s.io/kubernetes/pkg/apis/authentication/v1beta1" @@ -33,6 +34,7 @@ import ( batchv2alpha1 "k8s.io/kubernetes/pkg/apis/batch/v2alpha1" certificatesv1beta1 "k8s.io/kubernetes/pkg/apis/certificates/v1beta1" extensionsv1beta1 "k8s.io/kubernetes/pkg/apis/extensions/v1beta1" + networkingv1 "k8s.io/kubernetes/pkg/apis/networking/v1" policyv1beta1 "k8s.io/kubernetes/pkg/apis/policy/v1beta1" rbacv1alpha1 "k8s.io/kubernetes/pkg/apis/rbac/v1alpha1" rbacv1beta1 "k8s.io/kubernetes/pkg/apis/rbac/v1beta1" @@ -65,6 +67,7 @@ func init() { // After this, RawExtensions in Kubernetes types will serialize kube-aggregator types // correctly. func AddToScheme(scheme *runtime.Scheme) { + admissionregistrationv1alpha1.AddToScheme(scheme) corev1.AddToScheme(scheme) appsv1beta1.AddToScheme(scheme) authenticationv1.AddToScheme(scheme) @@ -77,6 +80,7 @@ func AddToScheme(scheme *runtime.Scheme) { batchv2alpha1.AddToScheme(scheme) certificatesv1beta1.AddToScheme(scheme) extensionsv1beta1.AddToScheme(scheme) + networkingv1.AddToScheme(scheme) policyv1beta1.AddToScheme(scheme) rbacv1beta1.AddToScheme(scheme) rbacv1alpha1.AddToScheme(scheme) diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/admissionregistration/v1alpha1/admissionregistration_client.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/admissionregistration/v1alpha1/admissionregistration_client.go new file mode 100644 index 00000000..87994cbe --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/admissionregistration/v1alpha1/admissionregistration_client.go @@ -0,0 +1,93 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1alpha1 + +import ( + serializer "k8s.io/apimachinery/pkg/runtime/serializer" + rest "k8s.io/client-go/rest" + v1alpha1 "k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1" + "k8s.io/kubernetes/pkg/client/clientset_generated/clientset/scheme" +) + +type AdmissionregistrationV1alpha1Interface interface { + RESTClient() rest.Interface + ExternalAdmissionHookConfigurationsGetter + InitializerConfigurationsGetter +} + +// AdmissionregistrationV1alpha1Client is used to interact with features provided by the admissionregistration.k8s.io group. +type AdmissionregistrationV1alpha1Client struct { + restClient rest.Interface +} + +func (c *AdmissionregistrationV1alpha1Client) ExternalAdmissionHookConfigurations() ExternalAdmissionHookConfigurationInterface { + return newExternalAdmissionHookConfigurations(c) +} + +func (c *AdmissionregistrationV1alpha1Client) InitializerConfigurations() InitializerConfigurationInterface { + return newInitializerConfigurations(c) +} + +// NewForConfig creates a new AdmissionregistrationV1alpha1Client for the given config. +func NewForConfig(c *rest.Config) (*AdmissionregistrationV1alpha1Client, error) { + config := *c + if err := setConfigDefaults(&config); err != nil { + return nil, err + } + client, err := rest.RESTClientFor(&config) + if err != nil { + return nil, err + } + return &AdmissionregistrationV1alpha1Client{client}, nil +} + +// NewForConfigOrDie creates a new AdmissionregistrationV1alpha1Client for the given config and +// panics if there is an error in the config. +func NewForConfigOrDie(c *rest.Config) *AdmissionregistrationV1alpha1Client { + client, err := NewForConfig(c) + if err != nil { + panic(err) + } + return client +} + +// New creates a new AdmissionregistrationV1alpha1Client for the given RESTClient. +func New(c rest.Interface) *AdmissionregistrationV1alpha1Client { + return &AdmissionregistrationV1alpha1Client{c} +} + +func setConfigDefaults(config *rest.Config) error { + gv := v1alpha1.SchemeGroupVersion + config.GroupVersion = &gv + config.APIPath = "/apis" + config.NegotiatedSerializer = serializer.DirectCodecFactory{CodecFactory: scheme.Codecs} + + if config.UserAgent == "" { + config.UserAgent = rest.DefaultKubernetesUserAgent() + } + + return nil +} + +// RESTClient returns a RESTClient that is used to communicate +// with API server by this client implementation. +func (c *AdmissionregistrationV1alpha1Client) RESTClient() rest.Interface { + if c == nil { + return nil + } + return c.restClient +} diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/admissionregistration/v1alpha1/doc.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/admissionregistration/v1alpha1/doc.go new file mode 100644 index 00000000..ba8d10d3 --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/admissionregistration/v1alpha1/doc.go @@ -0,0 +1,20 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This package is generated by client-gen with custom arguments. + +// This package has the automatically generated typed clients. +package v1alpha1 diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/admissionregistration/v1alpha1/externaladmissionhookconfiguration.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/admissionregistration/v1alpha1/externaladmissionhookconfiguration.go new file mode 100644 index 00000000..4af07b1a --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/admissionregistration/v1alpha1/externaladmissionhookconfiguration.go @@ -0,0 +1,145 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1alpha1 + +import ( + v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + types "k8s.io/apimachinery/pkg/types" + watch "k8s.io/apimachinery/pkg/watch" + rest "k8s.io/client-go/rest" + v1alpha1 "k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1" + scheme "k8s.io/kubernetes/pkg/client/clientset_generated/clientset/scheme" +) + +// ExternalAdmissionHookConfigurationsGetter has a method to return a ExternalAdmissionHookConfigurationInterface. +// A group's client should implement this interface. +type ExternalAdmissionHookConfigurationsGetter interface { + ExternalAdmissionHookConfigurations() ExternalAdmissionHookConfigurationInterface +} + +// ExternalAdmissionHookConfigurationInterface has methods to work with ExternalAdmissionHookConfiguration resources. +type ExternalAdmissionHookConfigurationInterface interface { + Create(*v1alpha1.ExternalAdmissionHookConfiguration) (*v1alpha1.ExternalAdmissionHookConfiguration, error) + Update(*v1alpha1.ExternalAdmissionHookConfiguration) (*v1alpha1.ExternalAdmissionHookConfiguration, error) + Delete(name string, options *v1.DeleteOptions) error + DeleteCollection(options *v1.DeleteOptions, listOptions v1.ListOptions) error + Get(name string, options v1.GetOptions) (*v1alpha1.ExternalAdmissionHookConfiguration, error) + List(opts v1.ListOptions) (*v1alpha1.ExternalAdmissionHookConfigurationList, error) + Watch(opts v1.ListOptions) (watch.Interface, error) + Patch(name string, pt types.PatchType, data []byte, subresources ...string) (result *v1alpha1.ExternalAdmissionHookConfiguration, err error) + ExternalAdmissionHookConfigurationExpansion +} + +// externalAdmissionHookConfigurations implements ExternalAdmissionHookConfigurationInterface +type externalAdmissionHookConfigurations struct { + client rest.Interface +} + +// newExternalAdmissionHookConfigurations returns a ExternalAdmissionHookConfigurations +func newExternalAdmissionHookConfigurations(c *AdmissionregistrationV1alpha1Client) *externalAdmissionHookConfigurations { + return &externalAdmissionHookConfigurations{ + client: c.RESTClient(), + } +} + +// Create takes the representation of a externalAdmissionHookConfiguration and creates it. Returns the server's representation of the externalAdmissionHookConfiguration, and an error, if there is any. +func (c *externalAdmissionHookConfigurations) Create(externalAdmissionHookConfiguration *v1alpha1.ExternalAdmissionHookConfiguration) (result *v1alpha1.ExternalAdmissionHookConfiguration, err error) { + result = &v1alpha1.ExternalAdmissionHookConfiguration{} + err = c.client.Post(). + Resource("externaladmissionhookconfigurations"). + Body(externalAdmissionHookConfiguration). + Do(). + Into(result) + return +} + +// Update takes the representation of a externalAdmissionHookConfiguration and updates it. Returns the server's representation of the externalAdmissionHookConfiguration, and an error, if there is any. +func (c *externalAdmissionHookConfigurations) Update(externalAdmissionHookConfiguration *v1alpha1.ExternalAdmissionHookConfiguration) (result *v1alpha1.ExternalAdmissionHookConfiguration, err error) { + result = &v1alpha1.ExternalAdmissionHookConfiguration{} + err = c.client.Put(). + Resource("externaladmissionhookconfigurations"). + Name(externalAdmissionHookConfiguration.Name). + Body(externalAdmissionHookConfiguration). + Do(). + Into(result) + return +} + +// Delete takes name of the externalAdmissionHookConfiguration and deletes it. Returns an error if one occurs. +func (c *externalAdmissionHookConfigurations) Delete(name string, options *v1.DeleteOptions) error { + return c.client.Delete(). + Resource("externaladmissionhookconfigurations"). + Name(name). + Body(options). + Do(). + Error() +} + +// DeleteCollection deletes a collection of objects. +func (c *externalAdmissionHookConfigurations) DeleteCollection(options *v1.DeleteOptions, listOptions v1.ListOptions) error { + return c.client.Delete(). + Resource("externaladmissionhookconfigurations"). + VersionedParams(&listOptions, scheme.ParameterCodec). + Body(options). + Do(). + Error() +} + +// Get takes name of the externalAdmissionHookConfiguration, and returns the corresponding externalAdmissionHookConfiguration object, and an error if there is any. +func (c *externalAdmissionHookConfigurations) Get(name string, options v1.GetOptions) (result *v1alpha1.ExternalAdmissionHookConfiguration, err error) { + result = &v1alpha1.ExternalAdmissionHookConfiguration{} + err = c.client.Get(). + Resource("externaladmissionhookconfigurations"). + Name(name). + VersionedParams(&options, scheme.ParameterCodec). + Do(). + Into(result) + return +} + +// List takes label and field selectors, and returns the list of ExternalAdmissionHookConfigurations that match those selectors. +func (c *externalAdmissionHookConfigurations) List(opts v1.ListOptions) (result *v1alpha1.ExternalAdmissionHookConfigurationList, err error) { + result = &v1alpha1.ExternalAdmissionHookConfigurationList{} + err = c.client.Get(). + Resource("externaladmissionhookconfigurations"). + VersionedParams(&opts, scheme.ParameterCodec). + Do(). + Into(result) + return +} + +// Watch returns a watch.Interface that watches the requested externalAdmissionHookConfigurations. +func (c *externalAdmissionHookConfigurations) Watch(opts v1.ListOptions) (watch.Interface, error) { + opts.Watch = true + return c.client.Get(). + Resource("externaladmissionhookconfigurations"). + VersionedParams(&opts, scheme.ParameterCodec). + Watch() +} + +// Patch applies the patch and returns the patched externalAdmissionHookConfiguration. +func (c *externalAdmissionHookConfigurations) Patch(name string, pt types.PatchType, data []byte, subresources ...string) (result *v1alpha1.ExternalAdmissionHookConfiguration, err error) { + result = &v1alpha1.ExternalAdmissionHookConfiguration{} + err = c.client.Patch(pt). + Resource("externaladmissionhookconfigurations"). + SubResource(subresources...). + Name(name). + Body(data). + Do(). + Into(result) + return +} diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/admissionregistration/v1alpha1/generated_expansion.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/admissionregistration/v1alpha1/generated_expansion.go new file mode 100644 index 00000000..eef439ab --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/admissionregistration/v1alpha1/generated_expansion.go @@ -0,0 +1,21 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1alpha1 + +type ExternalAdmissionHookConfigurationExpansion interface{} + +type InitializerConfigurationExpansion interface{} diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/admissionregistration/v1alpha1/initializerconfiguration.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/admissionregistration/v1alpha1/initializerconfiguration.go new file mode 100644 index 00000000..9a7ba3aa --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/admissionregistration/v1alpha1/initializerconfiguration.go @@ -0,0 +1,145 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1alpha1 + +import ( + v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + types "k8s.io/apimachinery/pkg/types" + watch "k8s.io/apimachinery/pkg/watch" + rest "k8s.io/client-go/rest" + v1alpha1 "k8s.io/kubernetes/pkg/apis/admissionregistration/v1alpha1" + scheme "k8s.io/kubernetes/pkg/client/clientset_generated/clientset/scheme" +) + +// InitializerConfigurationsGetter has a method to return a InitializerConfigurationInterface. +// A group's client should implement this interface. +type InitializerConfigurationsGetter interface { + InitializerConfigurations() InitializerConfigurationInterface +} + +// InitializerConfigurationInterface has methods to work with InitializerConfiguration resources. +type InitializerConfigurationInterface interface { + Create(*v1alpha1.InitializerConfiguration) (*v1alpha1.InitializerConfiguration, error) + Update(*v1alpha1.InitializerConfiguration) (*v1alpha1.InitializerConfiguration, error) + Delete(name string, options *v1.DeleteOptions) error + DeleteCollection(options *v1.DeleteOptions, listOptions v1.ListOptions) error + Get(name string, options v1.GetOptions) (*v1alpha1.InitializerConfiguration, error) + List(opts v1.ListOptions) (*v1alpha1.InitializerConfigurationList, error) + Watch(opts v1.ListOptions) (watch.Interface, error) + Patch(name string, pt types.PatchType, data []byte, subresources ...string) (result *v1alpha1.InitializerConfiguration, err error) + InitializerConfigurationExpansion +} + +// initializerConfigurations implements InitializerConfigurationInterface +type initializerConfigurations struct { + client rest.Interface +} + +// newInitializerConfigurations returns a InitializerConfigurations +func newInitializerConfigurations(c *AdmissionregistrationV1alpha1Client) *initializerConfigurations { + return &initializerConfigurations{ + client: c.RESTClient(), + } +} + +// Create takes the representation of a initializerConfiguration and creates it. Returns the server's representation of the initializerConfiguration, and an error, if there is any. +func (c *initializerConfigurations) Create(initializerConfiguration *v1alpha1.InitializerConfiguration) (result *v1alpha1.InitializerConfiguration, err error) { + result = &v1alpha1.InitializerConfiguration{} + err = c.client.Post(). + Resource("initializerconfigurations"). + Body(initializerConfiguration). + Do(). + Into(result) + return +} + +// Update takes the representation of a initializerConfiguration and updates it. Returns the server's representation of the initializerConfiguration, and an error, if there is any. +func (c *initializerConfigurations) Update(initializerConfiguration *v1alpha1.InitializerConfiguration) (result *v1alpha1.InitializerConfiguration, err error) { + result = &v1alpha1.InitializerConfiguration{} + err = c.client.Put(). + Resource("initializerconfigurations"). + Name(initializerConfiguration.Name). + Body(initializerConfiguration). + Do(). + Into(result) + return +} + +// Delete takes name of the initializerConfiguration and deletes it. Returns an error if one occurs. +func (c *initializerConfigurations) Delete(name string, options *v1.DeleteOptions) error { + return c.client.Delete(). + Resource("initializerconfigurations"). + Name(name). + Body(options). + Do(). + Error() +} + +// DeleteCollection deletes a collection of objects. +func (c *initializerConfigurations) DeleteCollection(options *v1.DeleteOptions, listOptions v1.ListOptions) error { + return c.client.Delete(). + Resource("initializerconfigurations"). + VersionedParams(&listOptions, scheme.ParameterCodec). + Body(options). + Do(). + Error() +} + +// Get takes name of the initializerConfiguration, and returns the corresponding initializerConfiguration object, and an error if there is any. +func (c *initializerConfigurations) Get(name string, options v1.GetOptions) (result *v1alpha1.InitializerConfiguration, err error) { + result = &v1alpha1.InitializerConfiguration{} + err = c.client.Get(). + Resource("initializerconfigurations"). + Name(name). + VersionedParams(&options, scheme.ParameterCodec). + Do(). + Into(result) + return +} + +// List takes label and field selectors, and returns the list of InitializerConfigurations that match those selectors. +func (c *initializerConfigurations) List(opts v1.ListOptions) (result *v1alpha1.InitializerConfigurationList, err error) { + result = &v1alpha1.InitializerConfigurationList{} + err = c.client.Get(). + Resource("initializerconfigurations"). + VersionedParams(&opts, scheme.ParameterCodec). + Do(). + Into(result) + return +} + +// Watch returns a watch.Interface that watches the requested initializerConfigurations. +func (c *initializerConfigurations) Watch(opts v1.ListOptions) (watch.Interface, error) { + opts.Watch = true + return c.client.Get(). + Resource("initializerconfigurations"). + VersionedParams(&opts, scheme.ParameterCodec). + Watch() +} + +// Patch applies the patch and returns the patched initializerConfiguration. +func (c *initializerConfigurations) Patch(name string, pt types.PatchType, data []byte, subresources ...string) (result *v1alpha1.InitializerConfiguration, err error) { + result = &v1alpha1.InitializerConfiguration{} + err = c.client.Patch(pt). + Resource("initializerconfigurations"). + SubResource(subresources...). + Name(name). + Body(data). + Do(). + Into(result) + return +} diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/apps/v1beta1/apps_client.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/apps/v1beta1/apps_client.go index c15b5159..18ab6a6f 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/apps/v1beta1/apps_client.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/apps/v1beta1/apps_client.go @@ -25,6 +25,7 @@ import ( type AppsV1beta1Interface interface { RESTClient() rest.Interface + ControllerRevisionsGetter DeploymentsGetter ScalesGetter StatefulSetsGetter @@ -35,6 +36,10 @@ type AppsV1beta1Client struct { restClient rest.Interface } +func (c *AppsV1beta1Client) ControllerRevisions(namespace string) ControllerRevisionInterface { + return newControllerRevisions(c, namespace) +} + func (c *AppsV1beta1Client) Deployments(namespace string) DeploymentInterface { return newDeployments(c, namespace) } diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/apps/v1beta1/controllerrevision.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/apps/v1beta1/controllerrevision.go new file mode 100644 index 00000000..ce536b0d --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/apps/v1beta1/controllerrevision.go @@ -0,0 +1,155 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1beta1 + +import ( + v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + types "k8s.io/apimachinery/pkg/types" + watch "k8s.io/apimachinery/pkg/watch" + rest "k8s.io/client-go/rest" + v1beta1 "k8s.io/kubernetes/pkg/apis/apps/v1beta1" + scheme "k8s.io/kubernetes/pkg/client/clientset_generated/clientset/scheme" +) + +// ControllerRevisionsGetter has a method to return a ControllerRevisionInterface. +// A group's client should implement this interface. +type ControllerRevisionsGetter interface { + ControllerRevisions(namespace string) ControllerRevisionInterface +} + +// ControllerRevisionInterface has methods to work with ControllerRevision resources. +type ControllerRevisionInterface interface { + Create(*v1beta1.ControllerRevision) (*v1beta1.ControllerRevision, error) + Update(*v1beta1.ControllerRevision) (*v1beta1.ControllerRevision, error) + Delete(name string, options *v1.DeleteOptions) error + DeleteCollection(options *v1.DeleteOptions, listOptions v1.ListOptions) error + Get(name string, options v1.GetOptions) (*v1beta1.ControllerRevision, error) + List(opts v1.ListOptions) (*v1beta1.ControllerRevisionList, error) + Watch(opts v1.ListOptions) (watch.Interface, error) + Patch(name string, pt types.PatchType, data []byte, subresources ...string) (result *v1beta1.ControllerRevision, err error) + ControllerRevisionExpansion +} + +// controllerRevisions implements ControllerRevisionInterface +type controllerRevisions struct { + client rest.Interface + ns string +} + +// newControllerRevisions returns a ControllerRevisions +func newControllerRevisions(c *AppsV1beta1Client, namespace string) *controllerRevisions { + return &controllerRevisions{ + client: c.RESTClient(), + ns: namespace, + } +} + +// Create takes the representation of a controllerRevision and creates it. Returns the server's representation of the controllerRevision, and an error, if there is any. +func (c *controllerRevisions) Create(controllerRevision *v1beta1.ControllerRevision) (result *v1beta1.ControllerRevision, err error) { + result = &v1beta1.ControllerRevision{} + err = c.client.Post(). + Namespace(c.ns). + Resource("controllerrevisions"). + Body(controllerRevision). + Do(). + Into(result) + return +} + +// Update takes the representation of a controllerRevision and updates it. Returns the server's representation of the controllerRevision, and an error, if there is any. +func (c *controllerRevisions) Update(controllerRevision *v1beta1.ControllerRevision) (result *v1beta1.ControllerRevision, err error) { + result = &v1beta1.ControllerRevision{} + err = c.client.Put(). + Namespace(c.ns). + Resource("controllerrevisions"). + Name(controllerRevision.Name). + Body(controllerRevision). + Do(). + Into(result) + return +} + +// Delete takes name of the controllerRevision and deletes it. Returns an error if one occurs. +func (c *controllerRevisions) Delete(name string, options *v1.DeleteOptions) error { + return c.client.Delete(). + Namespace(c.ns). + Resource("controllerrevisions"). + Name(name). + Body(options). + Do(). + Error() +} + +// DeleteCollection deletes a collection of objects. +func (c *controllerRevisions) DeleteCollection(options *v1.DeleteOptions, listOptions v1.ListOptions) error { + return c.client.Delete(). + Namespace(c.ns). + Resource("controllerrevisions"). + VersionedParams(&listOptions, scheme.ParameterCodec). + Body(options). + Do(). + Error() +} + +// Get takes name of the controllerRevision, and returns the corresponding controllerRevision object, and an error if there is any. +func (c *controllerRevisions) Get(name string, options v1.GetOptions) (result *v1beta1.ControllerRevision, err error) { + result = &v1beta1.ControllerRevision{} + err = c.client.Get(). + Namespace(c.ns). + Resource("controllerrevisions"). + Name(name). + VersionedParams(&options, scheme.ParameterCodec). + Do(). + Into(result) + return +} + +// List takes label and field selectors, and returns the list of ControllerRevisions that match those selectors. +func (c *controllerRevisions) List(opts v1.ListOptions) (result *v1beta1.ControllerRevisionList, err error) { + result = &v1beta1.ControllerRevisionList{} + err = c.client.Get(). + Namespace(c.ns). + Resource("controllerrevisions"). + VersionedParams(&opts, scheme.ParameterCodec). + Do(). + Into(result) + return +} + +// Watch returns a watch.Interface that watches the requested controllerRevisions. +func (c *controllerRevisions) Watch(opts v1.ListOptions) (watch.Interface, error) { + opts.Watch = true + return c.client.Get(). + Namespace(c.ns). + Resource("controllerrevisions"). + VersionedParams(&opts, scheme.ParameterCodec). + Watch() +} + +// Patch applies the patch and returns the patched controllerRevision. +func (c *controllerRevisions) Patch(name string, pt types.PatchType, data []byte, subresources ...string) (result *v1beta1.ControllerRevision, err error) { + result = &v1beta1.ControllerRevision{} + err = c.client.Patch(pt). + Namespace(c.ns). + Resource("controllerrevisions"). + SubResource(subresources...). + Name(name). + Body(data). + Do(). + Into(result) + return +} diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/apps/v1beta1/generated_expansion.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/apps/v1beta1/generated_expansion.go index deca5c86..a091b902 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/apps/v1beta1/generated_expansion.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/apps/v1beta1/generated_expansion.go @@ -16,6 +16,8 @@ limitations under the License. package v1beta1 +type ControllerRevisionExpansion interface{} + type DeploymentExpansion interface{} type ScaleExpansion interface{} diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/networking/v1/doc.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/networking/v1/doc.go new file mode 100644 index 00000000..54673bfa --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/networking/v1/doc.go @@ -0,0 +1,20 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// This package is generated by client-gen with custom arguments. + +// This package has the automatically generated typed clients. +package v1 diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/networking/v1/generated_expansion.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/networking/v1/generated_expansion.go new file mode 100644 index 00000000..cdd70ae3 --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/networking/v1/generated_expansion.go @@ -0,0 +1,19 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +type NetworkPolicyExpansion interface{} diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/networking/v1/networking_client.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/networking/v1/networking_client.go new file mode 100644 index 00000000..fcfd62ca --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/networking/v1/networking_client.go @@ -0,0 +1,88 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +import ( + serializer "k8s.io/apimachinery/pkg/runtime/serializer" + rest "k8s.io/client-go/rest" + v1 "k8s.io/kubernetes/pkg/apis/networking/v1" + "k8s.io/kubernetes/pkg/client/clientset_generated/clientset/scheme" +) + +type NetworkingV1Interface interface { + RESTClient() rest.Interface + NetworkPoliciesGetter +} + +// NetworkingV1Client is used to interact with features provided by the networking.k8s.io group. +type NetworkingV1Client struct { + restClient rest.Interface +} + +func (c *NetworkingV1Client) NetworkPolicies(namespace string) NetworkPolicyInterface { + return newNetworkPolicies(c, namespace) +} + +// NewForConfig creates a new NetworkingV1Client for the given config. +func NewForConfig(c *rest.Config) (*NetworkingV1Client, error) { + config := *c + if err := setConfigDefaults(&config); err != nil { + return nil, err + } + client, err := rest.RESTClientFor(&config) + if err != nil { + return nil, err + } + return &NetworkingV1Client{client}, nil +} + +// NewForConfigOrDie creates a new NetworkingV1Client for the given config and +// panics if there is an error in the config. +func NewForConfigOrDie(c *rest.Config) *NetworkingV1Client { + client, err := NewForConfig(c) + if err != nil { + panic(err) + } + return client +} + +// New creates a new NetworkingV1Client for the given RESTClient. +func New(c rest.Interface) *NetworkingV1Client { + return &NetworkingV1Client{c} +} + +func setConfigDefaults(config *rest.Config) error { + gv := v1.SchemeGroupVersion + config.GroupVersion = &gv + config.APIPath = "/apis" + config.NegotiatedSerializer = serializer.DirectCodecFactory{CodecFactory: scheme.Codecs} + + if config.UserAgent == "" { + config.UserAgent = rest.DefaultKubernetesUserAgent() + } + + return nil +} + +// RESTClient returns a RESTClient that is used to communicate +// with API server by this client implementation. +func (c *NetworkingV1Client) RESTClient() rest.Interface { + if c == nil { + return nil + } + return c.restClient +} diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/networking/v1/networkpolicy.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/networking/v1/networkpolicy.go new file mode 100644 index 00000000..a4bbaa6c --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/networking/v1/networkpolicy.go @@ -0,0 +1,155 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package v1 + +import ( + meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + types "k8s.io/apimachinery/pkg/types" + watch "k8s.io/apimachinery/pkg/watch" + rest "k8s.io/client-go/rest" + v1 "k8s.io/kubernetes/pkg/apis/networking/v1" + scheme "k8s.io/kubernetes/pkg/client/clientset_generated/clientset/scheme" +) + +// NetworkPoliciesGetter has a method to return a NetworkPolicyInterface. +// A group's client should implement this interface. +type NetworkPoliciesGetter interface { + NetworkPolicies(namespace string) NetworkPolicyInterface +} + +// NetworkPolicyInterface has methods to work with NetworkPolicy resources. +type NetworkPolicyInterface interface { + Create(*v1.NetworkPolicy) (*v1.NetworkPolicy, error) + Update(*v1.NetworkPolicy) (*v1.NetworkPolicy, error) + Delete(name string, options *meta_v1.DeleteOptions) error + DeleteCollection(options *meta_v1.DeleteOptions, listOptions meta_v1.ListOptions) error + Get(name string, options meta_v1.GetOptions) (*v1.NetworkPolicy, error) + List(opts meta_v1.ListOptions) (*v1.NetworkPolicyList, error) + Watch(opts meta_v1.ListOptions) (watch.Interface, error) + Patch(name string, pt types.PatchType, data []byte, subresources ...string) (result *v1.NetworkPolicy, err error) + NetworkPolicyExpansion +} + +// networkPolicies implements NetworkPolicyInterface +type networkPolicies struct { + client rest.Interface + ns string +} + +// newNetworkPolicies returns a NetworkPolicies +func newNetworkPolicies(c *NetworkingV1Client, namespace string) *networkPolicies { + return &networkPolicies{ + client: c.RESTClient(), + ns: namespace, + } +} + +// Create takes the representation of a networkPolicy and creates it. Returns the server's representation of the networkPolicy, and an error, if there is any. +func (c *networkPolicies) Create(networkPolicy *v1.NetworkPolicy) (result *v1.NetworkPolicy, err error) { + result = &v1.NetworkPolicy{} + err = c.client.Post(). + Namespace(c.ns). + Resource("networkpolicies"). + Body(networkPolicy). + Do(). + Into(result) + return +} + +// Update takes the representation of a networkPolicy and updates it. Returns the server's representation of the networkPolicy, and an error, if there is any. +func (c *networkPolicies) Update(networkPolicy *v1.NetworkPolicy) (result *v1.NetworkPolicy, err error) { + result = &v1.NetworkPolicy{} + err = c.client.Put(). + Namespace(c.ns). + Resource("networkpolicies"). + Name(networkPolicy.Name). + Body(networkPolicy). + Do(). + Into(result) + return +} + +// Delete takes name of the networkPolicy and deletes it. Returns an error if one occurs. +func (c *networkPolicies) Delete(name string, options *meta_v1.DeleteOptions) error { + return c.client.Delete(). + Namespace(c.ns). + Resource("networkpolicies"). + Name(name). + Body(options). + Do(). + Error() +} + +// DeleteCollection deletes a collection of objects. +func (c *networkPolicies) DeleteCollection(options *meta_v1.DeleteOptions, listOptions meta_v1.ListOptions) error { + return c.client.Delete(). + Namespace(c.ns). + Resource("networkpolicies"). + VersionedParams(&listOptions, scheme.ParameterCodec). + Body(options). + Do(). + Error() +} + +// Get takes name of the networkPolicy, and returns the corresponding networkPolicy object, and an error if there is any. +func (c *networkPolicies) Get(name string, options meta_v1.GetOptions) (result *v1.NetworkPolicy, err error) { + result = &v1.NetworkPolicy{} + err = c.client.Get(). + Namespace(c.ns). + Resource("networkpolicies"). + Name(name). + VersionedParams(&options, scheme.ParameterCodec). + Do(). + Into(result) + return +} + +// List takes label and field selectors, and returns the list of NetworkPolicies that match those selectors. +func (c *networkPolicies) List(opts meta_v1.ListOptions) (result *v1.NetworkPolicyList, err error) { + result = &v1.NetworkPolicyList{} + err = c.client.Get(). + Namespace(c.ns). + Resource("networkpolicies"). + VersionedParams(&opts, scheme.ParameterCodec). + Do(). + Into(result) + return +} + +// Watch returns a watch.Interface that watches the requested networkPolicies. +func (c *networkPolicies) Watch(opts meta_v1.ListOptions) (watch.Interface, error) { + opts.Watch = true + return c.client.Get(). + Namespace(c.ns). + Resource("networkpolicies"). + VersionedParams(&opts, scheme.ParameterCodec). + Watch() +} + +// Patch applies the patch and returns the patched networkPolicy. +func (c *networkPolicies) Patch(name string, pt types.PatchType, data []byte, subresources ...string) (result *v1.NetworkPolicy, err error) { + result = &v1.NetworkPolicy{} + err = c.client.Patch(pt). + Namespace(c.ns). + Resource("networkpolicies"). + SubResource(subresources...). + Name(name). + Body(data). + Do(). + Into(result) + return +} diff --git a/vendor/k8s.io/kubernetes/pkg/cloudprovider/README.md b/vendor/k8s.io/kubernetes/pkg/cloudprovider/README.md new file mode 100644 index 00000000..ada36662 --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/cloudprovider/README.md @@ -0,0 +1,16 @@ +##### Deprecation Notice: This directory has entered maintenance mode and will not be accepting new providers. Cloud Providers in this directory will continue to be actively developed or maintained and supported at their current level of support as a longer-term solution evolves. + +## Overview: +The mechanism for supporting cloud providers is currently in transition: the original method of implementing cloud provider-specific functionality within the main kubernetes tree (here) is no longer advised; however, the proposed solution is still in development. + +#### Guidance for potential cloud providers: +* Support for cloud providers is currently in a state of flux. Background information on motivation and the proposal for improving is in the github [proposal](https://git.k8s.io/community/contributors/design-proposals/cloud-provider-refactoring.md). +* In support of this plan, a new cloud-controller-manager binary was added in 1.6. This was the first of several steps (see the proposal for more information). +* Attempts to contribute new cloud providers or (to a lesser extent) persistent volumes to the core repo will likely meet with some pushback from reviewers/approvers. +* It is understood that this is an unfortunate situation in which 'the old way is no longer supported but the new way is not ready yet', but the initial path is unsustainable, and contributors are encouraged to participate in the implementation of the proposed long-term solution, as there is risk that PRs for new cloud providers here will not be approved. +* Though the fully productized support envisioned in the proposal is still 2 - 3 releases out, the foundational work is underway, and a motivated cloud provider could accomplish the work in a forward-looking way. Contributors are encouraged to assist with the implementation of the design outlined in the proposal. + +#### Some additional context on status / direction: +* 1.6 added a new cloud-controller-manager binary that may be used for testing the new out-of-core cloudprovider flow. +* Setting cloud-provider=external allows for creation of a separate controller-manager binary +* 1.7 adds [extensible admission control](https://git.k8s.io/community/contributors/design-proposals/admission_control_extension.md), further enabling topology customization. diff --git a/vendor/k8s.io/kubernetes/pkg/cloudprovider/cloud.go b/vendor/k8s.io/kubernetes/pkg/cloudprovider/cloud.go index a9217e21..247cb15c 100644 --- a/vendor/k8s.io/kubernetes/pkg/cloudprovider/cloud.go +++ b/vendor/k8s.io/kubernetes/pkg/cloudprovider/cloud.go @@ -28,7 +28,8 @@ import ( // Interface is an abstract, pluggable interface for cloud providers. type Interface interface { - // Initialize provides the cloud with a kubernetes client builder + // Initialize provides the cloud with a kubernetes client builder and may spawn goroutines + // to perform housekeeping activities within the cloud provider. Initialize(clientBuilder controller.ControllerClientBuilder) // LoadBalancer returns a balancer interface. Also returns true if the interface is supported, false otherwise. LoadBalancer() (LoadBalancer, bool) @@ -67,6 +68,7 @@ func GetLoadBalancerName(service *v1.Service) string { return ret } +// GetInstanceProviderID builds a ProviderID for a node in a cloud. func GetInstanceProviderID(cloud Interface, nodeName types.NodeName) (string, error) { instances, ok := cloud.Instances() if !ok { diff --git a/vendor/k8s.io/kubernetes/pkg/controller/controller_ref_manager.go b/vendor/k8s.io/kubernetes/pkg/controller/controller_ref_manager.go index 507995c0..c83f9a53 100644 --- a/vendor/k8s.io/kubernetes/pkg/controller/controller_ref_manager.go +++ b/vendor/k8s.io/kubernetes/pkg/controller/controller_ref_manager.go @@ -27,6 +27,7 @@ import ( "k8s.io/apimachinery/pkg/runtime/schema" utilerrors "k8s.io/apimachinery/pkg/util/errors" "k8s.io/kubernetes/pkg/api/v1" + appsv1beta1 "k8s.io/kubernetes/pkg/apis/apps/v1beta1" extensions "k8s.io/kubernetes/pkg/apis/extensions/v1beta1" ) @@ -340,7 +341,8 @@ func (m *ReplicaSetControllerRefManager) ClaimReplicaSets(sets []*extensions.Rep return claimed, utilerrors.NewAggregate(errlist) } -// AdoptReplicaSet sends a patch to take control of the ReplicaSet. It returns the error if +// AdoptReplicaSet sends a patch to take control of the ReplicaSet and also +// sets the finalizers to foregroundDeletion. It returns the error if // the patching fails. func (m *ReplicaSetControllerRefManager) AdoptReplicaSet(rs *extensions.ReplicaSet) error { if err := m.canAdopt(); err != nil { @@ -349,7 +351,14 @@ func (m *ReplicaSetControllerRefManager) AdoptReplicaSet(rs *extensions.ReplicaS // Note that ValidateOwnerReferences() will reject this patch if another // OwnerReference exists with controller=true. addControllerPatch := fmt.Sprintf( - `{"metadata":{"ownerReferences":[{"apiVersion":"%s","kind":"%s","name":"%s","uid":"%s","controller":true,"blockOwnerDeletion":true}],"uid":"%s"}}`, + `{ + "metadata": + { + "ownerReferences": [{"apiVersion":"%s","kind":"%s","name":"%s","uid":"%s","controller":true,"blockOwnerDeletion":true}], + "uid":"%s", + "finalizers": ["foregroundDeletion"] + } + }`, m.controllerKind.GroupVersion(), m.controllerKind.Kind, m.controller.GetName(), m.controller.GetUID(), rs.UID) return m.rsControl.PatchReplicaSet(rs.Namespace, rs.Name, []byte(addControllerPatch)) @@ -394,3 +403,121 @@ func RecheckDeletionTimestamp(getObject func() (metav1.Object, error)) func() er return nil } } + +// ControllerRevisionControllerRefManager is used to manage controllerRef of ControllerRevisions. +// Three methods are defined on this object 1: Classify 2: AdoptControllerRevision and +// 3: ReleaseControllerRevision which are used to classify the ControllerRevisions into appropriate +// categories and accordingly adopt or release them. See comments on these functions +// for more details. +type ControllerRevisionControllerRefManager struct { + baseControllerRefManager + controllerKind schema.GroupVersionKind + crControl ControllerRevisionControlInterface +} + +// NewControllerRevisionControllerRefManager returns a ControllerRevisionControllerRefManager that exposes +// methods to manage the controllerRef of ControllerRevisions. +// +// The canAdopt() function can be used to perform a potentially expensive check +// (such as a live GET from the API server) prior to the first adoption. +// It will only be called (at most once) if an adoption is actually attempted. +// If canAdopt() returns a non-nil error, all adoptions will fail. +// +// NOTE: Once canAdopt() is called, it will not be called again by the same +// ControllerRevisionControllerRefManager instance. Create a new instance if it +// makes sense to check canAdopt() again (e.g. in a different sync pass). +func NewControllerRevisionControllerRefManager( + crControl ControllerRevisionControlInterface, + controller metav1.Object, + selector labels.Selector, + controllerKind schema.GroupVersionKind, + canAdopt func() error, +) *ControllerRevisionControllerRefManager { + return &ControllerRevisionControllerRefManager{ + baseControllerRefManager: baseControllerRefManager{ + controller: controller, + selector: selector, + canAdoptFunc: canAdopt, + }, + controllerKind: controllerKind, + crControl: crControl, + } +} + +// ClaimControllerRevisions tries to take ownership of a list of ControllerRevisions. +// +// It will reconcile the following: +// * Adopt orphans if the selector matches. +// * Release owned objects if the selector no longer matches. +// +// A non-nil error is returned if some form of reconciliation was attemped and +// failed. Usually, controllers should try again later in case reconciliation +// is still needed. +// +// If the error is nil, either the reconciliation succeeded, or no +// reconciliation was necessary. The list of ControllerRevisions that you now own is +// returned. +func (m *ControllerRevisionControllerRefManager) ClaimControllerRevisions(histories []*appsv1beta1.ControllerRevision) ([]*appsv1beta1.ControllerRevision, error) { + var claimed []*appsv1beta1.ControllerRevision + var errlist []error + + match := func(obj metav1.Object) bool { + return m.selector.Matches(labels.Set(obj.GetLabels())) + } + adopt := func(obj metav1.Object) error { + return m.AdoptControllerRevision(obj.(*appsv1beta1.ControllerRevision)) + } + release := func(obj metav1.Object) error { + return m.ReleaseControllerRevision(obj.(*appsv1beta1.ControllerRevision)) + } + + for _, h := range histories { + ok, err := m.claimObject(h, match, adopt, release) + if err != nil { + errlist = append(errlist, err) + continue + } + if ok { + claimed = append(claimed, h) + } + } + return claimed, utilerrors.NewAggregate(errlist) +} + +// AdoptControllerRevision sends a patch to take control of the ControllerRevision. It returns the error if +// the patching fails. +func (m *ControllerRevisionControllerRefManager) AdoptControllerRevision(history *appsv1beta1.ControllerRevision) error { + if err := m.canAdopt(); err != nil { + return fmt.Errorf("can't adopt ControllerRevision %v/%v (%v): %v", history.Namespace, history.Name, history.UID, err) + } + // Note that ValidateOwnerReferences() will reject this patch if another + // OwnerReference exists with controller=true. + addControllerPatch := fmt.Sprintf( + `{"metadata":{"ownerReferences":[{"apiVersion":"%s","kind":"%s","name":"%s","uid":"%s","controller":true,"blockOwnerDeletion":true}],"uid":"%s"}}`, + m.controllerKind.GroupVersion(), m.controllerKind.Kind, + m.controller.GetName(), m.controller.GetUID(), history.UID) + return m.crControl.PatchControllerRevision(history.Namespace, history.Name, []byte(addControllerPatch)) +} + +// ReleaseControllerRevision sends a patch to free the ControllerRevision from the control of its controller. +// It returns the error if the patching fails. 404 and 422 errors are ignored. +func (m *ControllerRevisionControllerRefManager) ReleaseControllerRevision(history *appsv1beta1.ControllerRevision) error { + glog.V(2).Infof("patching ControllerRevision %s_%s to remove its controllerRef to %s/%s:%s", + history.Namespace, history.Name, m.controllerKind.GroupVersion(), m.controllerKind.Kind, m.controller.GetName()) + deleteOwnerRefPatch := fmt.Sprintf(`{"metadata":{"ownerReferences":[{"$patch":"delete","uid":"%s"}],"uid":"%s"}}`, m.controller.GetUID(), history.UID) + err := m.crControl.PatchControllerRevision(history.Namespace, history.Name, []byte(deleteOwnerRefPatch)) + if err != nil { + if errors.IsNotFound(err) { + // If the ControllerRevision no longer exists, ignore it. + return nil + } + if errors.IsInvalid(err) { + // Invalid error will be returned in two cases: 1. the ControllerRevision + // has no owner reference, 2. the uid of the ControllerRevision doesn't + // match, which means the ControllerRevision is deleted and then recreated. + // In both cases, the error can be ignored. + return nil + } + } + return err +} diff --git a/vendor/k8s.io/kubernetes/pkg/controller/controller_utils.go b/vendor/k8s.io/kubernetes/pkg/controller/controller_utils.go index f7e29fc1..9f1a1776 100644 --- a/vendor/k8s.io/kubernetes/pkg/controller/controller_utils.go +++ b/vendor/k8s.io/kubernetes/pkg/controller/controller_utils.go @@ -17,8 +17,10 @@ limitations under the License. package controller import ( + "encoding/binary" "encoding/json" "fmt" + "hash/fnv" "sync" "sync/atomic" "time" @@ -29,16 +31,14 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/apimachinery/pkg/types" + "k8s.io/apimachinery/pkg/util/clock" utilruntime "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/apimachinery/pkg/util/sets" "k8s.io/apimachinery/pkg/util/strategicpatch" "k8s.io/apimachinery/pkg/util/wait" - - "k8s.io/apimachinery/pkg/util/clock" "k8s.io/client-go/tools/cache" "k8s.io/client-go/tools/record" "k8s.io/client-go/util/integer" - "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api/v1" v1helper "k8s.io/kubernetes/pkg/api/v1/helper" @@ -48,6 +48,7 @@ import ( extensions "k8s.io/kubernetes/pkg/apis/extensions/v1beta1" "k8s.io/kubernetes/pkg/client/clientset_generated/clientset" clientretry "k8s.io/kubernetes/pkg/client/retry" + hashutil "k8s.io/kubernetes/pkg/util/hash" "github.com/golang/glog" ) @@ -400,6 +401,26 @@ func (r RealRSControl) PatchReplicaSet(namespace, name string, data []byte) erro return err } +// TODO: merge the controller revision interface in controller_history.go with this one +// ControllerRevisionControlInterface is an interface that knows how to patch +// ControllerRevisions, as well as increment or decrement them. It is used +// by the daemonset controller to ease testing of actions that it takes. +type ControllerRevisionControlInterface interface { + PatchControllerRevision(namespace, name string, data []byte) error +} + +// RealControllerRevisionControl is the default implementation of ControllerRevisionControlInterface. +type RealControllerRevisionControl struct { + KubeClient clientset.Interface +} + +var _ ControllerRevisionControlInterface = &RealControllerRevisionControl{} + +func (r RealControllerRevisionControl) PatchControllerRevision(namespace, name string, data []byte) error { + _, err := r.KubeClient.AppsV1beta1().ControllerRevisions(namespace).Patch(name, types.StrategicMergePatchType, data) + return err +} + // PodControlInterface is an interface that knows how to add or delete pods // created as an interface to allow testing. type PodControlInterface interface { @@ -980,3 +1001,18 @@ func WaitForCacheSync(controllerName string, stopCh <-chan struct{}, cacheSyncs glog.Infof("Caches are synced for %s controller", controllerName) return true } + +// ComputeHash returns a hash value calculated from pod template and a collisionCount to avoid hash collision +func ComputeHash(template *v1.PodTemplateSpec, collisionCount *int64) uint32 { + podTemplateSpecHasher := fnv.New32a() + hashutil.DeepHashObject(podTemplateSpecHasher, *template) + + // Add collisionCount in the hash if it exists. + if collisionCount != nil { + collisionCountBytes := make([]byte, 8) + binary.LittleEndian.PutUint64(collisionCountBytes, uint64(*collisionCount)) + podTemplateSpecHasher.Write(collisionCountBytes) + } + + return podTemplateSpecHasher.Sum32() +} diff --git a/vendor/k8s.io/kubernetes/pkg/features/kube_features.go b/vendor/k8s.io/kubernetes/pkg/features/kube_features.go index 44ca87f1..7920d4bc 100644 --- a/vendor/k8s.io/kubernetes/pkg/features/kube_features.go +++ b/vendor/k8s.io/kubernetes/pkg/features/kube_features.go @@ -25,8 +25,8 @@ const ( // Every feature gate should add method here following this template: // // // owner: @username - // // alpha: v1.4 - // MyFeature() bool + // // alpha: v1.X + // MyFeature utilfeature.Feature = "MyFeature" // owner: @timstclair // beta: v1.4 @@ -88,6 +88,33 @@ const ( // Changes the logic behind evicting Pods from not ready Nodes // to take advantage of NoExecute Taints and Tolerations. TaintBasedEvictions utilfeature.Feature = "TaintBasedEvictions" + + // owner: @jcbsmpsn + // alpha: v1.7 + // + // Gets a server certificate for the kubelet from the Certificate Signing + // Request API instead of generating one self signed and auto rotates the + // certificate as expiration approaches. + RotateKubeletServerCertificate utilfeature.Feature = "RotateKubeletServerCertificate" + + // owner: @jcbsmpsn + // alpha: v1.7 + // + // Automatically renews the client certificate used for communicating with + // the API server as the certificate approaches expiration. + RotateKubeletClientCertificate utilfeature.Feature = "RotateKubeletClientCertificate" + + // owner: @msau + // alpha: v1.7 + // + // A new volume type that supports local disks on a node. + PersistentLocalVolumes utilfeature.Feature = "PersistentLocalVolumes" + + // owner: @jinxu + // alpha: v1.7 + // + // New local storage types to support local storage capacity isolation + LocalStorageCapacityIsolation utilfeature.Feature = "LocalStorageCapacityIsolation" ) func init() { @@ -107,8 +134,13 @@ var defaultKubernetesFeatureGates = map[utilfeature.Feature]utilfeature.FeatureS AffinityInAnnotations: {Default: false, PreRelease: utilfeature.Alpha}, Accelerators: {Default: false, PreRelease: utilfeature.Alpha}, TaintBasedEvictions: {Default: false, PreRelease: utilfeature.Alpha}, + RotateKubeletServerCertificate: {Default: false, PreRelease: utilfeature.Alpha}, + RotateKubeletClientCertificate: {Default: false, PreRelease: utilfeature.Alpha}, + PersistentLocalVolumes: {Default: false, PreRelease: utilfeature.Alpha}, + LocalStorageCapacityIsolation: {Default: false, PreRelease: utilfeature.Alpha}, // inherited features from generic apiserver, relisted here to get a conflict if it is changed // unintentionally on either side: - StreamingProxyRedirects: {Default: true, PreRelease: utilfeature.Beta}, + StreamingProxyRedirects: {Default: true, PreRelease: utilfeature.Beta}, + genericfeatures.AdvancedAuditing: {Default: false, PreRelease: utilfeature.Alpha}, } diff --git a/vendor/k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/api.pb.go b/vendor/k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime/api.pb.go similarity index 86% rename from vendor/k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/api.pb.go rename to vendor/k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime/api.pb.go index 0e9f0866..a8e85eff 100644 --- a/vendor/k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/api.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime/api.pb.go @@ -108,8 +108,18 @@ limitations under the License. StatusResponse ImageFsInfoRequest UInt64Value - FsInfo + StorageIdentifier + FilesystemUsage ImageFsInfoResponse + ContainerStatsRequest + ContainerStatsResponse + ListContainerStatsRequest + ContainerStatsFilter + ListContainerStatsResponse + ContainerAttributes + ContainerStats + CpuUsage + MemoryUsage */ package v1alpha1 @@ -2849,86 +2859,65 @@ func (m *UInt64Value) GetValue() uint64 { return 0 } -// FsInfo contains data about filesystem usage. -type FsInfo struct { - // The block device name associated with the filesystem. - Device string `protobuf:"bytes,1,opt,name=device,proto3" json:"device,omitempty"` - // The root directory for the images. - Path string `protobuf:"bytes,2,opt,name=path,proto3" json:"path,omitempty"` - // CapacityBytes represents the total capacity (bytes) of the filesystems - // underlying storage. - CapacityBytes *UInt64Value `protobuf:"bytes,3,opt,name=capacity_bytes,json=capacityBytes" json:"capacity_bytes,omitempty"` - // AvailableBytes represents the storage space available (bytes) for the - // filesystem. - AvailableBytes *UInt64Value `protobuf:"bytes,4,opt,name=available_bytes,json=availableBytes" json:"available_bytes,omitempty"` +// StorageIdentifier uniquely identify the storage.. +type StorageIdentifier struct { + // UUID of the device. + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid,omitempty"` +} + +func (m *StorageIdentifier) Reset() { *m = StorageIdentifier{} } +func (*StorageIdentifier) ProtoMessage() {} +func (*StorageIdentifier) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{83} } + +func (m *StorageIdentifier) GetUuid() string { + if m != nil { + return m.Uuid + } + return "" +} + +// FilesystemUsage provides the filesystem usage information. +type FilesystemUsage struct { + // Timestamp in nanoseconds at which the information were collected. Must be > 0. + Timestamp int64 `protobuf:"varint,1,opt,name=timestamp,proto3" json:"timestamp,omitempty"` + // The underlying storage of the filesystem. + StorageId *StorageIdentifier `protobuf:"bytes,2,opt,name=storage_id,json=storageId" json:"storage_id,omitempty"` // UsedBytes represents the bytes used for images on the filesystem. // This may differ from the total bytes used on the filesystem and may not // equal CapacityBytes - AvailableBytes. - UsedBytes *UInt64Value `protobuf:"bytes,5,opt,name=used_bytes,json=usedBytes" json:"used_bytes,omitempty"` - // InodesCapacity represents the total inodes in the filesystem. - InodesCapacity *UInt64Value `protobuf:"bytes,6,opt,name=inodes_capacity,json=inodesCapacity" json:"inodes_capacity,omitempty"` - // InodesAvailable represents the free inodes in the filesystem. - InodesAvailable *UInt64Value `protobuf:"bytes,7,opt,name=inodes_available,json=inodesAvailable" json:"inodes_available,omitempty"` + UsedBytes *UInt64Value `protobuf:"bytes,3,opt,name=used_bytes,json=usedBytes" json:"used_bytes,omitempty"` // InodesUsed represents the inodes used by the images. // This may not equal InodesCapacity - InodesAvailable because the underlying // filesystem may also be used for purposes other than storing images. - InodesUsed *UInt64Value `protobuf:"bytes,8,opt,name=inodes_used,json=inodesUsed" json:"inodes_used,omitempty"` + InodesUsed *UInt64Value `protobuf:"bytes,4,opt,name=inodes_used,json=inodesUsed" json:"inodes_used,omitempty"` } -func (m *FsInfo) Reset() { *m = FsInfo{} } -func (*FsInfo) ProtoMessage() {} -func (*FsInfo) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{83} } +func (m *FilesystemUsage) Reset() { *m = FilesystemUsage{} } +func (*FilesystemUsage) ProtoMessage() {} +func (*FilesystemUsage) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{84} } -func (m *FsInfo) GetDevice() string { +func (m *FilesystemUsage) GetTimestamp() int64 { if m != nil { - return m.Device + return m.Timestamp } - return "" + return 0 } -func (m *FsInfo) GetPath() string { +func (m *FilesystemUsage) GetStorageId() *StorageIdentifier { if m != nil { - return m.Path - } - return "" -} - -func (m *FsInfo) GetCapacityBytes() *UInt64Value { - if m != nil { - return m.CapacityBytes + return m.StorageId } return nil } -func (m *FsInfo) GetAvailableBytes() *UInt64Value { - if m != nil { - return m.AvailableBytes - } - return nil -} - -func (m *FsInfo) GetUsedBytes() *UInt64Value { +func (m *FilesystemUsage) GetUsedBytes() *UInt64Value { if m != nil { return m.UsedBytes } return nil } -func (m *FsInfo) GetInodesCapacity() *UInt64Value { - if m != nil { - return m.InodesCapacity - } - return nil -} - -func (m *FsInfo) GetInodesAvailable() *UInt64Value { - if m != nil { - return m.InodesAvailable - } - return nil -} - -func (m *FsInfo) GetInodesUsed() *UInt64Value { +func (m *FilesystemUsage) GetInodesUsed() *UInt64Value { if m != nil { return m.InodesUsed } @@ -2936,17 +2925,262 @@ func (m *FsInfo) GetInodesUsed() *UInt64Value { } type ImageFsInfoResponse struct { - // filesystem information of images. - FsInfo *FsInfo `protobuf:"bytes,1,opt,name=fs_info,json=fsInfo" json:"fs_info,omitempty"` + // Information of image filesystem(s). + ImageFilesystems []*FilesystemUsage `protobuf:"bytes,1,rep,name=image_filesystems,json=imageFilesystems" json:"image_filesystems,omitempty"` } func (m *ImageFsInfoResponse) Reset() { *m = ImageFsInfoResponse{} } func (*ImageFsInfoResponse) ProtoMessage() {} -func (*ImageFsInfoResponse) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{84} } +func (*ImageFsInfoResponse) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{85} } -func (m *ImageFsInfoResponse) GetFsInfo() *FsInfo { +func (m *ImageFsInfoResponse) GetImageFilesystems() []*FilesystemUsage { if m != nil { - return m.FsInfo + return m.ImageFilesystems + } + return nil +} + +type ContainerStatsRequest struct { + // ID of the container for which to retrieve stats. + ContainerId string `protobuf:"bytes,1,opt,name=container_id,json=containerId,proto3" json:"container_id,omitempty"` +} + +func (m *ContainerStatsRequest) Reset() { *m = ContainerStatsRequest{} } +func (*ContainerStatsRequest) ProtoMessage() {} +func (*ContainerStatsRequest) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{86} } + +func (m *ContainerStatsRequest) GetContainerId() string { + if m != nil { + return m.ContainerId + } + return "" +} + +type ContainerStatsResponse struct { + // Stats of the container. + Stats *ContainerStats `protobuf:"bytes,1,opt,name=stats" json:"stats,omitempty"` +} + +func (m *ContainerStatsResponse) Reset() { *m = ContainerStatsResponse{} } +func (*ContainerStatsResponse) ProtoMessage() {} +func (*ContainerStatsResponse) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{87} } + +func (m *ContainerStatsResponse) GetStats() *ContainerStats { + if m != nil { + return m.Stats + } + return nil +} + +type ListContainerStatsRequest struct { + // Filter for the list request. + Filter *ContainerStatsFilter `protobuf:"bytes,1,opt,name=filter" json:"filter,omitempty"` +} + +func (m *ListContainerStatsRequest) Reset() { *m = ListContainerStatsRequest{} } +func (*ListContainerStatsRequest) ProtoMessage() {} +func (*ListContainerStatsRequest) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{88} } + +func (m *ListContainerStatsRequest) GetFilter() *ContainerStatsFilter { + if m != nil { + return m.Filter + } + return nil +} + +// ContainerStatsFilter is used to filter containers. +// All those fields are combined with 'AND' +type ContainerStatsFilter struct { + // ID of the container. + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + // ID of the PodSandbox. + PodSandboxId string `protobuf:"bytes,2,opt,name=pod_sandbox_id,json=podSandboxId,proto3" json:"pod_sandbox_id,omitempty"` + // LabelSelector to select matches. + // Only api.MatchLabels is supported for now and the requirements + // are ANDed. MatchExpressions is not supported yet. + LabelSelector map[string]string `protobuf:"bytes,3,rep,name=label_selector,json=labelSelector" json:"label_selector,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` +} + +func (m *ContainerStatsFilter) Reset() { *m = ContainerStatsFilter{} } +func (*ContainerStatsFilter) ProtoMessage() {} +func (*ContainerStatsFilter) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{89} } + +func (m *ContainerStatsFilter) GetId() string { + if m != nil { + return m.Id + } + return "" +} + +func (m *ContainerStatsFilter) GetPodSandboxId() string { + if m != nil { + return m.PodSandboxId + } + return "" +} + +func (m *ContainerStatsFilter) GetLabelSelector() map[string]string { + if m != nil { + return m.LabelSelector + } + return nil +} + +type ListContainerStatsResponse struct { + // Stats of the container. + Stats []*ContainerStats `protobuf:"bytes,1,rep,name=stats" json:"stats,omitempty"` +} + +func (m *ListContainerStatsResponse) Reset() { *m = ListContainerStatsResponse{} } +func (*ListContainerStatsResponse) ProtoMessage() {} +func (*ListContainerStatsResponse) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{90} } + +func (m *ListContainerStatsResponse) GetStats() []*ContainerStats { + if m != nil { + return m.Stats + } + return nil +} + +// ContainerAttributes provides basic information of the container. +type ContainerAttributes struct { + // ID of the container. + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + // Metadata of the container. + Metadata *ContainerMetadata `protobuf:"bytes,2,opt,name=metadata" json:"metadata,omitempty"` + // Key-value pairs that may be used to scope and select individual resources. + Labels map[string]string `protobuf:"bytes,3,rep,name=labels" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + // Unstructured key-value map holding arbitrary metadata. + // Annotations MUST NOT be altered by the runtime; the value of this field + // MUST be identical to that of the corresponding ContainerConfig used to + // instantiate the Container this status represents. + Annotations map[string]string `protobuf:"bytes,4,rep,name=annotations" json:"annotations,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` +} + +func (m *ContainerAttributes) Reset() { *m = ContainerAttributes{} } +func (*ContainerAttributes) ProtoMessage() {} +func (*ContainerAttributes) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{91} } + +func (m *ContainerAttributes) GetId() string { + if m != nil { + return m.Id + } + return "" +} + +func (m *ContainerAttributes) GetMetadata() *ContainerMetadata { + if m != nil { + return m.Metadata + } + return nil +} + +func (m *ContainerAttributes) GetLabels() map[string]string { + if m != nil { + return m.Labels + } + return nil +} + +func (m *ContainerAttributes) GetAnnotations() map[string]string { + if m != nil { + return m.Annotations + } + return nil +} + +// ContainerStats provides the resource usage statistics for a container. +type ContainerStats struct { + // Information of the container. + Attributes *ContainerAttributes `protobuf:"bytes,1,opt,name=attributes" json:"attributes,omitempty"` + // CPU usage gathered from the container. + Cpu *CpuUsage `protobuf:"bytes,2,opt,name=cpu" json:"cpu,omitempty"` + // Memory usage gathered from the container. + Memory *MemoryUsage `protobuf:"bytes,3,opt,name=memory" json:"memory,omitempty"` + // Usage of the writeable layer. + WritableLayer *FilesystemUsage `protobuf:"bytes,4,opt,name=writable_layer,json=writableLayer" json:"writable_layer,omitempty"` +} + +func (m *ContainerStats) Reset() { *m = ContainerStats{} } +func (*ContainerStats) ProtoMessage() {} +func (*ContainerStats) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{92} } + +func (m *ContainerStats) GetAttributes() *ContainerAttributes { + if m != nil { + return m.Attributes + } + return nil +} + +func (m *ContainerStats) GetCpu() *CpuUsage { + if m != nil { + return m.Cpu + } + return nil +} + +func (m *ContainerStats) GetMemory() *MemoryUsage { + if m != nil { + return m.Memory + } + return nil +} + +func (m *ContainerStats) GetWritableLayer() *FilesystemUsage { + if m != nil { + return m.WritableLayer + } + return nil +} + +// CpuUsage provides the CPU usage information. +type CpuUsage struct { + // Timestamp in nanoseconds at which the information were collected. Must be > 0. + Timestamp int64 `protobuf:"varint,1,opt,name=timestamp,proto3" json:"timestamp,omitempty"` + // Cumulative CPU usage (sum across all cores) since object creation. + UsageCoreNanoSeconds *UInt64Value `protobuf:"bytes,2,opt,name=usage_core_nano_seconds,json=usageCoreNanoSeconds" json:"usage_core_nano_seconds,omitempty"` +} + +func (m *CpuUsage) Reset() { *m = CpuUsage{} } +func (*CpuUsage) ProtoMessage() {} +func (*CpuUsage) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{93} } + +func (m *CpuUsage) GetTimestamp() int64 { + if m != nil { + return m.Timestamp + } + return 0 +} + +func (m *CpuUsage) GetUsageCoreNanoSeconds() *UInt64Value { + if m != nil { + return m.UsageCoreNanoSeconds + } + return nil +} + +// MemoryUsage provides the memory usage information. +type MemoryUsage struct { + // Timestamp in nanoseconds at which the information were collected. Must be > 0. + Timestamp int64 `protobuf:"varint,1,opt,name=timestamp,proto3" json:"timestamp,omitempty"` + // The amount of working set memory in bytes. + WorkingSetBytes *UInt64Value `protobuf:"bytes,2,opt,name=working_set_bytes,json=workingSetBytes" json:"working_set_bytes,omitempty"` +} + +func (m *MemoryUsage) Reset() { *m = MemoryUsage{} } +func (*MemoryUsage) ProtoMessage() {} +func (*MemoryUsage) Descriptor() ([]byte, []int) { return fileDescriptorApi, []int{94} } + +func (m *MemoryUsage) GetTimestamp() int64 { + if m != nil { + return m.Timestamp + } + return 0 +} + +func (m *MemoryUsage) GetWorkingSetBytes() *UInt64Value { + if m != nil { + return m.WorkingSetBytes } return nil } @@ -3035,8 +3269,18 @@ func init() { proto.RegisterType((*StatusResponse)(nil), "v1alpha1.StatusResponse") proto.RegisterType((*ImageFsInfoRequest)(nil), "v1alpha1.ImageFsInfoRequest") proto.RegisterType((*UInt64Value)(nil), "v1alpha1.UInt64Value") - proto.RegisterType((*FsInfo)(nil), "v1alpha1.FsInfo") + proto.RegisterType((*StorageIdentifier)(nil), "v1alpha1.StorageIdentifier") + proto.RegisterType((*FilesystemUsage)(nil), "v1alpha1.FilesystemUsage") proto.RegisterType((*ImageFsInfoResponse)(nil), "v1alpha1.ImageFsInfoResponse") + proto.RegisterType((*ContainerStatsRequest)(nil), "v1alpha1.ContainerStatsRequest") + proto.RegisterType((*ContainerStatsResponse)(nil), "v1alpha1.ContainerStatsResponse") + proto.RegisterType((*ListContainerStatsRequest)(nil), "v1alpha1.ListContainerStatsRequest") + proto.RegisterType((*ContainerStatsFilter)(nil), "v1alpha1.ContainerStatsFilter") + proto.RegisterType((*ListContainerStatsResponse)(nil), "v1alpha1.ListContainerStatsResponse") + proto.RegisterType((*ContainerAttributes)(nil), "v1alpha1.ContainerAttributes") + proto.RegisterType((*ContainerStats)(nil), "v1alpha1.ContainerStats") + proto.RegisterType((*CpuUsage)(nil), "v1alpha1.CpuUsage") + proto.RegisterType((*MemoryUsage)(nil), "v1alpha1.MemoryUsage") proto.RegisterEnum("v1alpha1.Protocol", Protocol_name, Protocol_value) proto.RegisterEnum("v1alpha1.PodSandboxState", PodSandboxState_name, PodSandboxState_value) proto.RegisterEnum("v1alpha1.ContainerState", ContainerState_name, ContainerState_value) @@ -3105,6 +3349,11 @@ type RuntimeServiceClient interface { Attach(ctx context.Context, in *AttachRequest, opts ...grpc.CallOption) (*AttachResponse, error) // PortForward prepares a streaming endpoint to forward ports from a PodSandbox. PortForward(ctx context.Context, in *PortForwardRequest, opts ...grpc.CallOption) (*PortForwardResponse, error) + // ContainerStats returns stats of the container. If the container does not + // exist, the call returns an error. + ContainerStats(ctx context.Context, in *ContainerStatsRequest, opts ...grpc.CallOption) (*ContainerStatsResponse, error) + // ListContainerStats returns stats of all running containers. + ListContainerStats(ctx context.Context, in *ListContainerStatsRequest, opts ...grpc.CallOption) (*ListContainerStatsResponse, error) // UpdateRuntimeConfig updates the runtime configuration based on the given request. UpdateRuntimeConfig(ctx context.Context, in *UpdateRuntimeConfigRequest, opts ...grpc.CallOption) (*UpdateRuntimeConfigResponse, error) // Status returns the status of the runtime. @@ -3263,6 +3512,24 @@ func (c *runtimeServiceClient) PortForward(ctx context.Context, in *PortForwardR return out, nil } +func (c *runtimeServiceClient) ContainerStats(ctx context.Context, in *ContainerStatsRequest, opts ...grpc.CallOption) (*ContainerStatsResponse, error) { + out := new(ContainerStatsResponse) + err := grpc.Invoke(ctx, "/v1alpha1.RuntimeService/ContainerStats", in, out, c.cc, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *runtimeServiceClient) ListContainerStats(ctx context.Context, in *ListContainerStatsRequest, opts ...grpc.CallOption) (*ListContainerStatsResponse, error) { + out := new(ListContainerStatsResponse) + err := grpc.Invoke(ctx, "/v1alpha1.RuntimeService/ListContainerStats", in, out, c.cc, opts...) + if err != nil { + return nil, err + } + return out, nil +} + func (c *runtimeServiceClient) UpdateRuntimeConfig(ctx context.Context, in *UpdateRuntimeConfigRequest, opts ...grpc.CallOption) (*UpdateRuntimeConfigResponse, error) { out := new(UpdateRuntimeConfigResponse) err := grpc.Invoke(ctx, "/v1alpha1.RuntimeService/UpdateRuntimeConfig", in, out, c.cc, opts...) @@ -3336,6 +3603,11 @@ type RuntimeServiceServer interface { Attach(context.Context, *AttachRequest) (*AttachResponse, error) // PortForward prepares a streaming endpoint to forward ports from a PodSandbox. PortForward(context.Context, *PortForwardRequest) (*PortForwardResponse, error) + // ContainerStats returns stats of the container. If the container does not + // exist, the call returns an error. + ContainerStats(context.Context, *ContainerStatsRequest) (*ContainerStatsResponse, error) + // ListContainerStats returns stats of all running containers. + ListContainerStats(context.Context, *ListContainerStatsRequest) (*ListContainerStatsResponse, error) // UpdateRuntimeConfig updates the runtime configuration based on the given request. UpdateRuntimeConfig(context.Context, *UpdateRuntimeConfigRequest) (*UpdateRuntimeConfigResponse, error) // Status returns the status of the runtime. @@ -3634,6 +3906,42 @@ func _RuntimeService_PortForward_Handler(srv interface{}, ctx context.Context, d return interceptor(ctx, in, info, handler) } +func _RuntimeService_ContainerStats_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ContainerStatsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(RuntimeServiceServer).ContainerStats(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/v1alpha1.RuntimeService/ContainerStats", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(RuntimeServiceServer).ContainerStats(ctx, req.(*ContainerStatsRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _RuntimeService_ListContainerStats_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ListContainerStatsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(RuntimeServiceServer).ListContainerStats(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/v1alpha1.RuntimeService/ListContainerStats", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(RuntimeServiceServer).ListContainerStats(ctx, req.(*ListContainerStatsRequest)) + } + return interceptor(ctx, in, info, handler) +} + func _RuntimeService_UpdateRuntimeConfig_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(UpdateRuntimeConfigRequest) if err := dec(in); err != nil { @@ -3738,6 +4046,14 @@ var _RuntimeService_serviceDesc = grpc.ServiceDesc{ MethodName: "PortForward", Handler: _RuntimeService_PortForward_Handler, }, + { + MethodName: "ContainerStats", + Handler: _RuntimeService_ContainerStats_Handler, + }, + { + MethodName: "ListContainerStats", + Handler: _RuntimeService_ListContainerStats_Handler, + }, { MethodName: "UpdateRuntimeConfig", Handler: _RuntimeService_UpdateRuntimeConfig_Handler, @@ -7276,7 +7592,7 @@ func (m *UInt64Value) MarshalTo(dAtA []byte) (int, error) { return i, nil } -func (m *FsInfo) Marshal() (dAtA []byte, err error) { +func (m *StorageIdentifier) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalTo(dAtA) @@ -7286,83 +7602,70 @@ func (m *FsInfo) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *FsInfo) MarshalTo(dAtA []byte) (int, error) { +func (m *StorageIdentifier) MarshalTo(dAtA []byte) (int, error) { var i int _ = i var l int _ = l - if len(m.Device) > 0 { + if len(m.Uuid) > 0 { dAtA[i] = 0xa i++ - i = encodeVarintApi(dAtA, i, uint64(len(m.Device))) - i += copy(dAtA[i:], m.Device) + i = encodeVarintApi(dAtA, i, uint64(len(m.Uuid))) + i += copy(dAtA[i:], m.Uuid) } - if len(m.Path) > 0 { + return i, nil +} + +func (m *FilesystemUsage) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *FilesystemUsage) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + if m.Timestamp != 0 { + dAtA[i] = 0x8 + i++ + i = encodeVarintApi(dAtA, i, uint64(m.Timestamp)) + } + if m.StorageId != nil { dAtA[i] = 0x12 i++ - i = encodeVarintApi(dAtA, i, uint64(len(m.Path))) - i += copy(dAtA[i:], m.Path) - } - if m.CapacityBytes != nil { - dAtA[i] = 0x1a - i++ - i = encodeVarintApi(dAtA, i, uint64(m.CapacityBytes.Size())) - n54, err := m.CapacityBytes.MarshalTo(dAtA[i:]) + i = encodeVarintApi(dAtA, i, uint64(m.StorageId.Size())) + n54, err := m.StorageId.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n54 } - if m.AvailableBytes != nil { - dAtA[i] = 0x22 + if m.UsedBytes != nil { + dAtA[i] = 0x1a i++ - i = encodeVarintApi(dAtA, i, uint64(m.AvailableBytes.Size())) - n55, err := m.AvailableBytes.MarshalTo(dAtA[i:]) + i = encodeVarintApi(dAtA, i, uint64(m.UsedBytes.Size())) + n55, err := m.UsedBytes.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n55 } - if m.UsedBytes != nil { - dAtA[i] = 0x2a + if m.InodesUsed != nil { + dAtA[i] = 0x22 i++ - i = encodeVarintApi(dAtA, i, uint64(m.UsedBytes.Size())) - n56, err := m.UsedBytes.MarshalTo(dAtA[i:]) + i = encodeVarintApi(dAtA, i, uint64(m.InodesUsed.Size())) + n56, err := m.InodesUsed.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n56 } - if m.InodesCapacity != nil { - dAtA[i] = 0x32 - i++ - i = encodeVarintApi(dAtA, i, uint64(m.InodesCapacity.Size())) - n57, err := m.InodesCapacity.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n57 - } - if m.InodesAvailable != nil { - dAtA[i] = 0x3a - i++ - i = encodeVarintApi(dAtA, i, uint64(m.InodesAvailable.Size())) - n58, err := m.InodesAvailable.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n58 - } - if m.InodesUsed != nil { - dAtA[i] = 0x42 - i++ - i = encodeVarintApi(dAtA, i, uint64(m.InodesUsed.Size())) - n59, err := m.InodesUsed.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n59 - } return i, nil } @@ -7381,16 +7684,367 @@ func (m *ImageFsInfoResponse) MarshalTo(dAtA []byte) (int, error) { _ = i var l int _ = l - if m.FsInfo != nil { + if len(m.ImageFilesystems) > 0 { + for _, msg := range m.ImageFilesystems { + dAtA[i] = 0xa + i++ + i = encodeVarintApi(dAtA, i, uint64(msg.Size())) + n, err := msg.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n + } + } + return i, nil +} + +func (m *ContainerStatsRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ContainerStatsRequest) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + if len(m.ContainerId) > 0 { dAtA[i] = 0xa i++ - i = encodeVarintApi(dAtA, i, uint64(m.FsInfo.Size())) - n60, err := m.FsInfo.MarshalTo(dAtA[i:]) + i = encodeVarintApi(dAtA, i, uint64(len(m.ContainerId))) + i += copy(dAtA[i:], m.ContainerId) + } + return i, nil +} + +func (m *ContainerStatsResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ContainerStatsResponse) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + if m.Stats != nil { + dAtA[i] = 0xa + i++ + i = encodeVarintApi(dAtA, i, uint64(m.Stats.Size())) + n57, err := m.Stats.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n57 + } + return i, nil +} + +func (m *ListContainerStatsRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ListContainerStatsRequest) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + if m.Filter != nil { + dAtA[i] = 0xa + i++ + i = encodeVarintApi(dAtA, i, uint64(m.Filter.Size())) + n58, err := m.Filter.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n58 + } + return i, nil +} + +func (m *ContainerStatsFilter) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ContainerStatsFilter) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + if len(m.Id) > 0 { + dAtA[i] = 0xa + i++ + i = encodeVarintApi(dAtA, i, uint64(len(m.Id))) + i += copy(dAtA[i:], m.Id) + } + if len(m.PodSandboxId) > 0 { + dAtA[i] = 0x12 + i++ + i = encodeVarintApi(dAtA, i, uint64(len(m.PodSandboxId))) + i += copy(dAtA[i:], m.PodSandboxId) + } + if len(m.LabelSelector) > 0 { + for k := range m.LabelSelector { + dAtA[i] = 0x1a + i++ + v := m.LabelSelector[k] + mapSize := 1 + len(k) + sovApi(uint64(len(k))) + 1 + len(v) + sovApi(uint64(len(v))) + i = encodeVarintApi(dAtA, i, uint64(mapSize)) + dAtA[i] = 0xa + i++ + i = encodeVarintApi(dAtA, i, uint64(len(k))) + i += copy(dAtA[i:], k) + dAtA[i] = 0x12 + i++ + i = encodeVarintApi(dAtA, i, uint64(len(v))) + i += copy(dAtA[i:], v) + } + } + return i, nil +} + +func (m *ListContainerStatsResponse) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ListContainerStatsResponse) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + if len(m.Stats) > 0 { + for _, msg := range m.Stats { + dAtA[i] = 0xa + i++ + i = encodeVarintApi(dAtA, i, uint64(msg.Size())) + n, err := msg.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n + } + } + return i, nil +} + +func (m *ContainerAttributes) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ContainerAttributes) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + if len(m.Id) > 0 { + dAtA[i] = 0xa + i++ + i = encodeVarintApi(dAtA, i, uint64(len(m.Id))) + i += copy(dAtA[i:], m.Id) + } + if m.Metadata != nil { + dAtA[i] = 0x12 + i++ + i = encodeVarintApi(dAtA, i, uint64(m.Metadata.Size())) + n59, err := m.Metadata.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n59 + } + if len(m.Labels) > 0 { + for k := range m.Labels { + dAtA[i] = 0x1a + i++ + v := m.Labels[k] + mapSize := 1 + len(k) + sovApi(uint64(len(k))) + 1 + len(v) + sovApi(uint64(len(v))) + i = encodeVarintApi(dAtA, i, uint64(mapSize)) + dAtA[i] = 0xa + i++ + i = encodeVarintApi(dAtA, i, uint64(len(k))) + i += copy(dAtA[i:], k) + dAtA[i] = 0x12 + i++ + i = encodeVarintApi(dAtA, i, uint64(len(v))) + i += copy(dAtA[i:], v) + } + } + if len(m.Annotations) > 0 { + for k := range m.Annotations { + dAtA[i] = 0x22 + i++ + v := m.Annotations[k] + mapSize := 1 + len(k) + sovApi(uint64(len(k))) + 1 + len(v) + sovApi(uint64(len(v))) + i = encodeVarintApi(dAtA, i, uint64(mapSize)) + dAtA[i] = 0xa + i++ + i = encodeVarintApi(dAtA, i, uint64(len(k))) + i += copy(dAtA[i:], k) + dAtA[i] = 0x12 + i++ + i = encodeVarintApi(dAtA, i, uint64(len(v))) + i += copy(dAtA[i:], v) + } + } + return i, nil +} + +func (m *ContainerStats) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *ContainerStats) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + if m.Attributes != nil { + dAtA[i] = 0xa + i++ + i = encodeVarintApi(dAtA, i, uint64(m.Attributes.Size())) + n60, err := m.Attributes.MarshalTo(dAtA[i:]) if err != nil { return 0, err } i += n60 } + if m.Cpu != nil { + dAtA[i] = 0x12 + i++ + i = encodeVarintApi(dAtA, i, uint64(m.Cpu.Size())) + n61, err := m.Cpu.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n61 + } + if m.Memory != nil { + dAtA[i] = 0x1a + i++ + i = encodeVarintApi(dAtA, i, uint64(m.Memory.Size())) + n62, err := m.Memory.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n62 + } + if m.WritableLayer != nil { + dAtA[i] = 0x22 + i++ + i = encodeVarintApi(dAtA, i, uint64(m.WritableLayer.Size())) + n63, err := m.WritableLayer.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n63 + } + return i, nil +} + +func (m *CpuUsage) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *CpuUsage) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + if m.Timestamp != 0 { + dAtA[i] = 0x8 + i++ + i = encodeVarintApi(dAtA, i, uint64(m.Timestamp)) + } + if m.UsageCoreNanoSeconds != nil { + dAtA[i] = 0x12 + i++ + i = encodeVarintApi(dAtA, i, uint64(m.UsageCoreNanoSeconds.Size())) + n64, err := m.UsageCoreNanoSeconds.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n64 + } + return i, nil +} + +func (m *MemoryUsage) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalTo(dAtA) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *MemoryUsage) MarshalTo(dAtA []byte) (int, error) { + var i int + _ = i + var l int + _ = l + if m.Timestamp != 0 { + dAtA[i] = 0x8 + i++ + i = encodeVarintApi(dAtA, i, uint64(m.Timestamp)) + } + if m.WorkingSetBytes != nil { + dAtA[i] = 0x12 + i++ + i = encodeVarintApi(dAtA, i, uint64(m.WorkingSetBytes.Size())) + n65, err := m.WorkingSetBytes.MarshalTo(dAtA[i:]) + if err != nil { + return 0, err + } + i += n65 + } return i, nil } @@ -8806,37 +9460,30 @@ func (m *UInt64Value) Size() (n int) { return n } -func (m *FsInfo) Size() (n int) { +func (m *StorageIdentifier) Size() (n int) { var l int _ = l - l = len(m.Device) + l = len(m.Uuid) if l > 0 { n += 1 + l + sovApi(uint64(l)) } - l = len(m.Path) - if l > 0 { - n += 1 + l + sovApi(uint64(l)) + return n +} + +func (m *FilesystemUsage) Size() (n int) { + var l int + _ = l + if m.Timestamp != 0 { + n += 1 + sovApi(uint64(m.Timestamp)) } - if m.CapacityBytes != nil { - l = m.CapacityBytes.Size() - n += 1 + l + sovApi(uint64(l)) - } - if m.AvailableBytes != nil { - l = m.AvailableBytes.Size() + if m.StorageId != nil { + l = m.StorageId.Size() n += 1 + l + sovApi(uint64(l)) } if m.UsedBytes != nil { l = m.UsedBytes.Size() n += 1 + l + sovApi(uint64(l)) } - if m.InodesCapacity != nil { - l = m.InodesCapacity.Size() - n += 1 + l + sovApi(uint64(l)) - } - if m.InodesAvailable != nil { - l = m.InodesAvailable.Size() - n += 1 + l + sovApi(uint64(l)) - } if m.InodesUsed != nil { l = m.InodesUsed.Size() n += 1 + l + sovApi(uint64(l)) @@ -8847,8 +9494,152 @@ func (m *FsInfo) Size() (n int) { func (m *ImageFsInfoResponse) Size() (n int) { var l int _ = l - if m.FsInfo != nil { - l = m.FsInfo.Size() + if len(m.ImageFilesystems) > 0 { + for _, e := range m.ImageFilesystems { + l = e.Size() + n += 1 + l + sovApi(uint64(l)) + } + } + return n +} + +func (m *ContainerStatsRequest) Size() (n int) { + var l int + _ = l + l = len(m.ContainerId) + if l > 0 { + n += 1 + l + sovApi(uint64(l)) + } + return n +} + +func (m *ContainerStatsResponse) Size() (n int) { + var l int + _ = l + if m.Stats != nil { + l = m.Stats.Size() + n += 1 + l + sovApi(uint64(l)) + } + return n +} + +func (m *ListContainerStatsRequest) Size() (n int) { + var l int + _ = l + if m.Filter != nil { + l = m.Filter.Size() + n += 1 + l + sovApi(uint64(l)) + } + return n +} + +func (m *ContainerStatsFilter) Size() (n int) { + var l int + _ = l + l = len(m.Id) + if l > 0 { + n += 1 + l + sovApi(uint64(l)) + } + l = len(m.PodSandboxId) + if l > 0 { + n += 1 + l + sovApi(uint64(l)) + } + if len(m.LabelSelector) > 0 { + for k, v := range m.LabelSelector { + _ = k + _ = v + mapEntrySize := 1 + len(k) + sovApi(uint64(len(k))) + 1 + len(v) + sovApi(uint64(len(v))) + n += mapEntrySize + 1 + sovApi(uint64(mapEntrySize)) + } + } + return n +} + +func (m *ListContainerStatsResponse) Size() (n int) { + var l int + _ = l + if len(m.Stats) > 0 { + for _, e := range m.Stats { + l = e.Size() + n += 1 + l + sovApi(uint64(l)) + } + } + return n +} + +func (m *ContainerAttributes) Size() (n int) { + var l int + _ = l + l = len(m.Id) + if l > 0 { + n += 1 + l + sovApi(uint64(l)) + } + if m.Metadata != nil { + l = m.Metadata.Size() + n += 1 + l + sovApi(uint64(l)) + } + if len(m.Labels) > 0 { + for k, v := range m.Labels { + _ = k + _ = v + mapEntrySize := 1 + len(k) + sovApi(uint64(len(k))) + 1 + len(v) + sovApi(uint64(len(v))) + n += mapEntrySize + 1 + sovApi(uint64(mapEntrySize)) + } + } + if len(m.Annotations) > 0 { + for k, v := range m.Annotations { + _ = k + _ = v + mapEntrySize := 1 + len(k) + sovApi(uint64(len(k))) + 1 + len(v) + sovApi(uint64(len(v))) + n += mapEntrySize + 1 + sovApi(uint64(mapEntrySize)) + } + } + return n +} + +func (m *ContainerStats) Size() (n int) { + var l int + _ = l + if m.Attributes != nil { + l = m.Attributes.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Cpu != nil { + l = m.Cpu.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.Memory != nil { + l = m.Memory.Size() + n += 1 + l + sovApi(uint64(l)) + } + if m.WritableLayer != nil { + l = m.WritableLayer.Size() + n += 1 + l + sovApi(uint64(l)) + } + return n +} + +func (m *CpuUsage) Size() (n int) { + var l int + _ = l + if m.Timestamp != 0 { + n += 1 + sovApi(uint64(m.Timestamp)) + } + if m.UsageCoreNanoSeconds != nil { + l = m.UsageCoreNanoSeconds.Size() + n += 1 + l + sovApi(uint64(l)) + } + return n +} + +func (m *MemoryUsage) Size() (n int) { + var l int + _ = l + if m.Timestamp != 0 { + n += 1 + sovApi(uint64(m.Timestamp)) + } + if m.WorkingSetBytes != nil { + l = m.WorkingSetBytes.Size() n += 1 + l + sovApi(uint64(l)) } return n @@ -9970,18 +10761,24 @@ func (this *UInt64Value) String() string { }, "") return s } -func (this *FsInfo) String() string { +func (this *StorageIdentifier) String() string { if this == nil { return "nil" } - s := strings.Join([]string{`&FsInfo{`, - `Device:` + fmt.Sprintf("%v", this.Device) + `,`, - `Path:` + fmt.Sprintf("%v", this.Path) + `,`, - `CapacityBytes:` + strings.Replace(fmt.Sprintf("%v", this.CapacityBytes), "UInt64Value", "UInt64Value", 1) + `,`, - `AvailableBytes:` + strings.Replace(fmt.Sprintf("%v", this.AvailableBytes), "UInt64Value", "UInt64Value", 1) + `,`, + s := strings.Join([]string{`&StorageIdentifier{`, + `Uuid:` + fmt.Sprintf("%v", this.Uuid) + `,`, + `}`, + }, "") + return s +} +func (this *FilesystemUsage) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&FilesystemUsage{`, + `Timestamp:` + fmt.Sprintf("%v", this.Timestamp) + `,`, + `StorageId:` + strings.Replace(fmt.Sprintf("%v", this.StorageId), "StorageIdentifier", "StorageIdentifier", 1) + `,`, `UsedBytes:` + strings.Replace(fmt.Sprintf("%v", this.UsedBytes), "UInt64Value", "UInt64Value", 1) + `,`, - `InodesCapacity:` + strings.Replace(fmt.Sprintf("%v", this.InodesCapacity), "UInt64Value", "UInt64Value", 1) + `,`, - `InodesAvailable:` + strings.Replace(fmt.Sprintf("%v", this.InodesAvailable), "UInt64Value", "UInt64Value", 1) + `,`, `InodesUsed:` + strings.Replace(fmt.Sprintf("%v", this.InodesUsed), "UInt64Value", "UInt64Value", 1) + `,`, `}`, }, "") @@ -9992,7 +10789,137 @@ func (this *ImageFsInfoResponse) String() string { return "nil" } s := strings.Join([]string{`&ImageFsInfoResponse{`, - `FsInfo:` + strings.Replace(fmt.Sprintf("%v", this.FsInfo), "FsInfo", "FsInfo", 1) + `,`, + `ImageFilesystems:` + strings.Replace(fmt.Sprintf("%v", this.ImageFilesystems), "FilesystemUsage", "FilesystemUsage", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ContainerStatsRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ContainerStatsRequest{`, + `ContainerId:` + fmt.Sprintf("%v", this.ContainerId) + `,`, + `}`, + }, "") + return s +} +func (this *ContainerStatsResponse) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ContainerStatsResponse{`, + `Stats:` + strings.Replace(fmt.Sprintf("%v", this.Stats), "ContainerStats", "ContainerStats", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ListContainerStatsRequest) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ListContainerStatsRequest{`, + `Filter:` + strings.Replace(fmt.Sprintf("%v", this.Filter), "ContainerStatsFilter", "ContainerStatsFilter", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ContainerStatsFilter) String() string { + if this == nil { + return "nil" + } + keysForLabelSelector := make([]string, 0, len(this.LabelSelector)) + for k := range this.LabelSelector { + keysForLabelSelector = append(keysForLabelSelector, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForLabelSelector) + mapStringForLabelSelector := "map[string]string{" + for _, k := range keysForLabelSelector { + mapStringForLabelSelector += fmt.Sprintf("%v: %v,", k, this.LabelSelector[k]) + } + mapStringForLabelSelector += "}" + s := strings.Join([]string{`&ContainerStatsFilter{`, + `Id:` + fmt.Sprintf("%v", this.Id) + `,`, + `PodSandboxId:` + fmt.Sprintf("%v", this.PodSandboxId) + `,`, + `LabelSelector:` + mapStringForLabelSelector + `,`, + `}`, + }, "") + return s +} +func (this *ListContainerStatsResponse) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ListContainerStatsResponse{`, + `Stats:` + strings.Replace(fmt.Sprintf("%v", this.Stats), "ContainerStats", "ContainerStats", 1) + `,`, + `}`, + }, "") + return s +} +func (this *ContainerAttributes) String() string { + if this == nil { + return "nil" + } + keysForLabels := make([]string, 0, len(this.Labels)) + for k := range this.Labels { + keysForLabels = append(keysForLabels, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForLabels) + mapStringForLabels := "map[string]string{" + for _, k := range keysForLabels { + mapStringForLabels += fmt.Sprintf("%v: %v,", k, this.Labels[k]) + } + mapStringForLabels += "}" + keysForAnnotations := make([]string, 0, len(this.Annotations)) + for k := range this.Annotations { + keysForAnnotations = append(keysForAnnotations, k) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForAnnotations) + mapStringForAnnotations := "map[string]string{" + for _, k := range keysForAnnotations { + mapStringForAnnotations += fmt.Sprintf("%v: %v,", k, this.Annotations[k]) + } + mapStringForAnnotations += "}" + s := strings.Join([]string{`&ContainerAttributes{`, + `Id:` + fmt.Sprintf("%v", this.Id) + `,`, + `Metadata:` + strings.Replace(fmt.Sprintf("%v", this.Metadata), "ContainerMetadata", "ContainerMetadata", 1) + `,`, + `Labels:` + mapStringForLabels + `,`, + `Annotations:` + mapStringForAnnotations + `,`, + `}`, + }, "") + return s +} +func (this *ContainerStats) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&ContainerStats{`, + `Attributes:` + strings.Replace(fmt.Sprintf("%v", this.Attributes), "ContainerAttributes", "ContainerAttributes", 1) + `,`, + `Cpu:` + strings.Replace(fmt.Sprintf("%v", this.Cpu), "CpuUsage", "CpuUsage", 1) + `,`, + `Memory:` + strings.Replace(fmt.Sprintf("%v", this.Memory), "MemoryUsage", "MemoryUsage", 1) + `,`, + `WritableLayer:` + strings.Replace(fmt.Sprintf("%v", this.WritableLayer), "FilesystemUsage", "FilesystemUsage", 1) + `,`, + `}`, + }, "") + return s +} +func (this *CpuUsage) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&CpuUsage{`, + `Timestamp:` + fmt.Sprintf("%v", this.Timestamp) + `,`, + `UsageCoreNanoSeconds:` + strings.Replace(fmt.Sprintf("%v", this.UsageCoreNanoSeconds), "UInt64Value", "UInt64Value", 1) + `,`, + `}`, + }, "") + return s +} +func (this *MemoryUsage) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&MemoryUsage{`, + `Timestamp:` + fmt.Sprintf("%v", this.Timestamp) + `,`, + `WorkingSetBytes:` + strings.Replace(fmt.Sprintf("%v", this.WorkingSetBytes), "UInt64Value", "UInt64Value", 1) + `,`, `}`, }, "") return s @@ -21300,7 +22227,7 @@ func (m *UInt64Value) Unmarshal(dAtA []byte) error { } return nil } -func (m *FsInfo) Unmarshal(dAtA []byte) error { +func (m *StorageIdentifier) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -21323,15 +22250,15 @@ func (m *FsInfo) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: FsInfo: wiretype end group for non-group") + return fmt.Errorf("proto: StorageIdentifier: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: FsInfo: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: StorageIdentifier: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Device", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Uuid", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -21356,13 +22283,82 @@ func (m *FsInfo) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Device = string(dAtA[iNdEx:postIndex]) + m.Uuid = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *FilesystemUsage) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: FilesystemUsage: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: FilesystemUsage: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Timestamp", wireType) + } + m.Timestamp = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Timestamp |= (int64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field StorageId", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowApi @@ -21372,88 +22368,26 @@ func (m *FsInfo) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= (uint64(b) & 0x7F) << shift + msglen |= (int(b) & 0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthApi } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex > l { return io.ErrUnexpectedEOF } - m.Path = string(dAtA[iNdEx:postIndex]) + if m.StorageId == nil { + m.StorageId = &StorageIdentifier{} + } + if err := m.StorageId.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CapacityBytes", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowApi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= (int(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthApi - } - postIndex := iNdEx + msglen - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.CapacityBytes == nil { - m.CapacityBytes = &UInt64Value{} - } - if err := m.CapacityBytes.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AvailableBytes", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowApi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= (int(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthApi - } - postIndex := iNdEx + msglen - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.AvailableBytes == nil { - m.AvailableBytes = &UInt64Value{} - } - if err := m.AvailableBytes.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 5: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field UsedBytes", wireType) } @@ -21486,73 +22420,7 @@ func (m *FsInfo) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex - case 6: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field InodesCapacity", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowApi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= (int(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthApi - } - postIndex := iNdEx + msglen - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.InodesCapacity == nil { - m.InodesCapacity = &UInt64Value{} - } - if err := m.InodesCapacity.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 7: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field InodesAvailable", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowApi - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= (int(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthApi - } - postIndex := iNdEx + msglen - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.InodesAvailable == nil { - m.InodesAvailable = &UInt64Value{} - } - if err := m.InodesAvailable.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 8: + case 4: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field InodesUsed", wireType) } @@ -21637,7 +22505,7 @@ func (m *ImageFsInfoResponse) Unmarshal(dAtA []byte) error { switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field FsInfo", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ImageFilesystems", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -21661,10 +22529,1288 @@ func (m *ImageFsInfoResponse) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.FsInfo == nil { - m.FsInfo = &FsInfo{} + m.ImageFilesystems = append(m.ImageFilesystems, &FilesystemUsage{}) + if err := m.ImageFilesystems[len(m.ImageFilesystems)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - if err := m.FsInfo.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ContainerStatsRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ContainerStatsRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ContainerStatsRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ContainerId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + 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 ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ContainerId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ContainerStatsResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ContainerStatsResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ContainerStatsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Stats", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Stats == nil { + m.Stats = &ContainerStats{} + } + if err := m.Stats.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ListContainerStatsRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ListContainerStatsRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ListContainerStatsRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Filter", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Filter == nil { + m.Filter = &ContainerStatsFilter{} + } + if err := m.Filter.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ContainerStatsFilter) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ContainerStatsFilter: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ContainerStatsFilter: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + 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 ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Id = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PodSandboxId", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + 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 ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.PodSandboxId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field LabelSelector", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + var keykey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + keykey |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapkey |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return ErrInvalidLengthApi + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey := string(dAtA[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + if m.LabelSelector == nil { + m.LabelSelector = make(map[string]string) + } + if iNdEx < postIndex { + var valuekey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + valuekey |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + var stringLenmapvalue uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapvalue |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapvalue := int(stringLenmapvalue) + if intStringLenmapvalue < 0 { + return ErrInvalidLengthApi + } + postStringIndexmapvalue := iNdEx + intStringLenmapvalue + if postStringIndexmapvalue > l { + return io.ErrUnexpectedEOF + } + mapvalue := string(dAtA[iNdEx:postStringIndexmapvalue]) + iNdEx = postStringIndexmapvalue + m.LabelSelector[mapkey] = mapvalue + } else { + var mapvalue string + m.LabelSelector[mapkey] = mapvalue + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ListContainerStatsResponse) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ListContainerStatsResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ListContainerStatsResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Stats", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Stats = append(m.Stats, &ContainerStats{}) + if err := m.Stats[len(m.Stats)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ContainerAttributes) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ContainerAttributes: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ContainerAttributes: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + 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 ErrInvalidLengthApi + } + postIndex := iNdEx + intStringLen + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Id = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Metadata == nil { + m.Metadata = &ContainerMetadata{} + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Labels", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + var keykey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + keykey |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapkey |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return ErrInvalidLengthApi + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey := string(dAtA[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + if m.Labels == nil { + m.Labels = make(map[string]string) + } + if iNdEx < postIndex { + var valuekey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + valuekey |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + var stringLenmapvalue uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapvalue |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapvalue := int(stringLenmapvalue) + if intStringLenmapvalue < 0 { + return ErrInvalidLengthApi + } + postStringIndexmapvalue := iNdEx + intStringLenmapvalue + if postStringIndexmapvalue > l { + return io.ErrUnexpectedEOF + } + mapvalue := string(dAtA[iNdEx:postStringIndexmapvalue]) + iNdEx = postStringIndexmapvalue + m.Labels[mapkey] = mapvalue + } else { + var mapvalue string + m.Labels[mapkey] = mapvalue + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Annotations", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + var keykey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + keykey |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapkey |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return ErrInvalidLengthApi + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey := string(dAtA[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + if m.Annotations == nil { + m.Annotations = make(map[string]string) + } + if iNdEx < postIndex { + var valuekey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + valuekey |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + var stringLenmapvalue uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapvalue |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapvalue := int(stringLenmapvalue) + if intStringLenmapvalue < 0 { + return ErrInvalidLengthApi + } + postStringIndexmapvalue := iNdEx + intStringLenmapvalue + if postStringIndexmapvalue > l { + return io.ErrUnexpectedEOF + } + mapvalue := string(dAtA[iNdEx:postStringIndexmapvalue]) + iNdEx = postStringIndexmapvalue + m.Annotations[mapkey] = mapvalue + } else { + var mapvalue string + m.Annotations[mapkey] = mapvalue + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ContainerStats) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ContainerStats: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ContainerStats: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Attributes", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Attributes == nil { + m.Attributes = &ContainerAttributes{} + } + if err := m.Attributes.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Cpu", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Cpu == nil { + m.Cpu = &CpuUsage{} + } + if err := m.Cpu.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Memory", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Memory == nil { + m.Memory = &MemoryUsage{} + } + if err := m.Memory.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field WritableLayer", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.WritableLayer == nil { + m.WritableLayer = &FilesystemUsage{} + } + if err := m.WritableLayer.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *CpuUsage) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: CpuUsage: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: CpuUsage: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Timestamp", wireType) + } + m.Timestamp = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Timestamp |= (int64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field UsageCoreNanoSeconds", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.UsageCoreNanoSeconds == nil { + m.UsageCoreNanoSeconds = &UInt64Value{} + } + if err := m.UsageCoreNanoSeconds.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipApi(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthApi + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *MemoryUsage) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: MemoryUsage: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: MemoryUsage: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Timestamp", wireType) + } + m.Timestamp = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Timestamp |= (int64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field WorkingSetBytes", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowApi + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthApi + } + postIndex := iNdEx + msglen + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.WorkingSetBytes == nil { + m.WorkingSetBytes = &UInt64Value{} + } + if err := m.WorkingSetBytes.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -21797,242 +23943,259 @@ var ( func init() { proto.RegisterFile("api.proto", fileDescriptorApi) } var fileDescriptorApi = []byte{ - // 3782 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x3b, 0x4d, 0x6f, 0x1b, 0x57, - 0x92, 0x22, 0x29, 0x51, 0x64, 0x51, 0xfc, 0xd0, 0xd3, 0x17, 0x45, 0xd9, 0xb2, 0xd4, 0x89, 0x63, - 0x5b, 0xd9, 0xc8, 0x6b, 0xd9, 0x1b, 0x7b, 0x9d, 0xd8, 0x31, 0x2d, 0xc9, 0x86, 0x62, 0x5b, 0xd6, - 0x36, 0xad, 0x6c, 0x76, 0xb3, 0x40, 0x6f, 0x8b, 0xfd, 0x44, 0xb5, 0x4d, 0x76, 0x77, 0xba, 0x9b, - 0x8a, 0xb5, 0xa7, 0xbd, 0x2f, 0x16, 0x08, 0x76, 0x6f, 0x7b, 0x5c, 0x0c, 0x30, 0x40, 0xe6, 0x30, - 0x97, 0x39, 0xcf, 0x39, 0xc0, 0x7c, 0x60, 0x6e, 0x33, 0xc7, 0x89, 0x07, 0x98, 0xf3, 0xfc, 0x84, - 0xc1, 0xfb, 0xea, 0x7e, 0xfd, 0x45, 0x4b, 0x4e, 0x30, 0xf1, 0x49, 0xfd, 0xea, 0x55, 0xd5, 0xab, - 0x57, 0x55, 0xaf, 0x5e, 0x55, 0xf1, 0x09, 0xca, 0xba, 0x63, 0xae, 0x3b, 0xae, 0xed, 0xdb, 0xa8, - 0x74, 0x7c, 0x4d, 0xef, 0x3b, 0x47, 0xfa, 0xb5, 0xd6, 0x07, 0x3d, 0xd3, 0x3f, 0x1a, 0x1e, 0xac, - 0x77, 0xed, 0xc1, 0xd5, 0x9e, 0xdd, 0xb3, 0xaf, 0x52, 0x84, 0x83, 0xe1, 0x21, 0x1d, 0xd1, 0x01, - 0xfd, 0x62, 0x84, 0xca, 0x1a, 0xd4, 0x3e, 0xc3, 0xae, 0x67, 0xda, 0x96, 0x8a, 0xbf, 0x1c, 0x62, - 0xcf, 0x47, 0x4d, 0x98, 0x3c, 0x66, 0x90, 0x66, 0x6e, 0x25, 0x77, 0xb9, 0xac, 0x8a, 0xa1, 0xf2, - 0xd3, 0x1c, 0xd4, 0x03, 0x64, 0xcf, 0xb1, 0x2d, 0x0f, 0x67, 0x63, 0xa3, 0x55, 0x98, 0x72, 0x87, - 0x96, 0x6f, 0x0e, 0xb0, 0x66, 0xe9, 0x03, 0xdc, 0xcc, 0xd3, 0xe9, 0x0a, 0x87, 0xed, 0xea, 0x03, - 0x8c, 0x2e, 0x41, 0x5d, 0xa0, 0x08, 0x26, 0x05, 0x8a, 0x55, 0xe3, 0x60, 0xbe, 0x1a, 0x5a, 0x87, - 0x19, 0x81, 0xa8, 0x3b, 0x66, 0x80, 0x3c, 0x4e, 0x91, 0xa7, 0xf9, 0x54, 0xdb, 0x31, 0x39, 0xbe, - 0xf2, 0x05, 0x94, 0xb7, 0x76, 0x3b, 0x9b, 0xb6, 0x75, 0x68, 0xf6, 0x88, 0x88, 0x1e, 0x76, 0x09, - 0x4d, 0x33, 0xb7, 0x52, 0x20, 0x22, 0xf2, 0x21, 0x6a, 0x41, 0xc9, 0xc3, 0xba, 0xdb, 0x3d, 0xc2, - 0x5e, 0x33, 0x4f, 0xa7, 0x82, 0x31, 0xa1, 0xb2, 0x1d, 0xdf, 0xb4, 0x2d, 0xaf, 0x59, 0x60, 0x54, - 0x7c, 0xa8, 0xfc, 0x5f, 0x0e, 0x2a, 0x7b, 0xb6, 0xeb, 0x3f, 0xd1, 0x1d, 0xc7, 0xb4, 0x7a, 0x68, - 0x1d, 0x4a, 0x54, 0x97, 0x5d, 0xbb, 0x4f, 0x75, 0x50, 0xdb, 0x40, 0xeb, 0xc2, 0x1c, 0xeb, 0x7b, - 0x7c, 0x46, 0x0d, 0x70, 0xd0, 0x45, 0xa8, 0x75, 0x6d, 0xcb, 0xd7, 0x4d, 0x0b, 0xbb, 0x9a, 0x63, - 0xbb, 0x3e, 0x55, 0xcd, 0x84, 0x5a, 0x0d, 0xa0, 0x84, 0x3b, 0x5a, 0x82, 0xf2, 0x91, 0xed, 0xf9, - 0x0c, 0xa3, 0x40, 0x31, 0x4a, 0x04, 0x40, 0x27, 0x17, 0x60, 0x92, 0x4e, 0x9a, 0x0e, 0x57, 0x42, - 0x91, 0x0c, 0x77, 0x1c, 0xe5, 0xeb, 0x1c, 0x4c, 0x3c, 0xb1, 0x87, 0x96, 0x1f, 0x5b, 0x46, 0xf7, - 0x8f, 0xb8, 0x81, 0xa4, 0x65, 0x74, 0xff, 0x28, 0x5c, 0x86, 0x60, 0x30, 0x1b, 0xb1, 0x65, 0xc8, - 0x64, 0x0b, 0x4a, 0x2e, 0xd6, 0x0d, 0xdb, 0xea, 0x9f, 0x50, 0x11, 0x4a, 0x6a, 0x30, 0x26, 0xc6, - 0xf3, 0x70, 0xdf, 0xb4, 0x86, 0x2f, 0x35, 0x17, 0xf7, 0xf5, 0x03, 0xdc, 0xa7, 0xa2, 0x94, 0xd4, - 0x1a, 0x07, 0xab, 0x0c, 0xaa, 0x3c, 0x87, 0x3a, 0xb1, 0xb6, 0xe7, 0xe8, 0x5d, 0xfc, 0x94, 0xea, - 0x90, 0xf8, 0x06, 0x5d, 0xd4, 0xc2, 0xfe, 0x57, 0xb6, 0xfb, 0x82, 0x4a, 0x56, 0x52, 0x2b, 0x04, - 0xb6, 0xcb, 0x40, 0x68, 0x11, 0x4a, 0x4c, 0x2e, 0xd3, 0xa0, 0x62, 0x95, 0x54, 0xba, 0xe3, 0x3d, - 0xd3, 0x08, 0xa6, 0x4c, 0xa7, 0xcb, 0xa5, 0x9a, 0x64, 0xbb, 0xef, 0x2a, 0x0a, 0xc0, 0x8e, 0xe5, - 0x7f, 0x78, 0xe3, 0x33, 0xbd, 0x3f, 0xc4, 0x68, 0x16, 0x26, 0x8e, 0xc9, 0x07, 0xe5, 0x5f, 0x50, - 0xd9, 0x40, 0xf9, 0x7d, 0x1e, 0x96, 0x1e, 0x13, 0x01, 0x3b, 0xba, 0x65, 0x1c, 0xd8, 0x2f, 0x3b, - 0xb8, 0x3b, 0x74, 0x4d, 0xff, 0x64, 0xd3, 0xb6, 0x7c, 0xfc, 0xd2, 0x47, 0x0f, 0x60, 0xda, 0x12, - 0xf2, 0x6a, 0xc2, 0x07, 0x08, 0x87, 0xca, 0xc6, 0x62, 0x68, 0xd8, 0xd8, 0x96, 0xd4, 0x86, 0x15, - 0x05, 0x78, 0xe8, 0x5e, 0xa8, 0x20, 0xc1, 0x25, 0x4f, 0xb9, 0x2c, 0x84, 0x5c, 0x3a, 0xdb, 0x54, - 0x12, 0xce, 0x43, 0x68, 0x4e, 0x70, 0xb8, 0x01, 0xe4, 0xb8, 0x68, 0xba, 0xa7, 0x0d, 0x3d, 0xec, - 0xd2, 0xbd, 0x56, 0x36, 0x66, 0x43, 0xea, 0x70, 0xab, 0x6a, 0xd9, 0x1d, 0x5a, 0x6d, 0x6f, 0xdf, - 0xc3, 0x2e, 0x3d, 0x55, 0xdc, 0x48, 0x9a, 0x6b, 0xdb, 0xfe, 0xa1, 0x27, 0x0c, 0x23, 0xc0, 0x2a, - 0x85, 0xa2, 0xab, 0x30, 0xe3, 0x0d, 0x1d, 0xa7, 0x8f, 0x07, 0xd8, 0xf2, 0xf5, 0xbe, 0xd6, 0x73, - 0xed, 0xa1, 0xe3, 0x35, 0x27, 0x56, 0x0a, 0x97, 0x0b, 0x2a, 0x92, 0xa7, 0x1e, 0xd2, 0x19, 0xb4, - 0x0c, 0xe0, 0xb8, 0xe6, 0xb1, 0xd9, 0xc7, 0x3d, 0x6c, 0x34, 0x8b, 0x94, 0xa9, 0x04, 0x51, 0xfe, - 0x27, 0x0f, 0x73, 0x74, 0x3f, 0x7b, 0xb6, 0xc1, 0x95, 0xcb, 0xcf, 0xe0, 0x3b, 0x50, 0xed, 0x52, - 0xf6, 0x9a, 0xa3, 0xbb, 0xd8, 0xf2, 0xb9, 0x2f, 0x4e, 0x31, 0xe0, 0x1e, 0x85, 0xa1, 0x3d, 0x68, - 0x78, 0xdc, 0x16, 0x5a, 0x97, 0x19, 0x83, 0x6b, 0xec, 0x62, 0xb8, 0xe7, 0x11, 0x96, 0x53, 0xeb, - 0x5e, 0xc2, 0x94, 0x93, 0xde, 0x89, 0xd7, 0xf5, 0xfb, 0xec, 0x10, 0x57, 0x36, 0xfe, 0x2e, 0xc6, - 0x28, 0x2e, 0xe8, 0x7a, 0x87, 0xa1, 0x6f, 0x5b, 0xbe, 0x7b, 0xa2, 0x0a, 0xe2, 0xd6, 0x6d, 0x98, - 0x92, 0x27, 0x50, 0x03, 0x0a, 0x2f, 0xf0, 0x09, 0xdf, 0x04, 0xf9, 0x0c, 0x5d, 0x8d, 0x1d, 0x21, - 0x36, 0xb8, 0x9d, 0xbf, 0x95, 0x53, 0x5c, 0x40, 0xe1, 0x2a, 0x4f, 0xb0, 0xaf, 0x1b, 0xba, 0xaf, - 0x23, 0x04, 0xe3, 0x34, 0x2a, 0x32, 0x16, 0xf4, 0x9b, 0x70, 0x1d, 0x72, 0x6f, 0x2f, 0xab, 0xe4, - 0x13, 0x9d, 0x83, 0x72, 0xe0, 0x56, 0x3c, 0x34, 0x86, 0x00, 0x12, 0xa2, 0x74, 0xdf, 0xc7, 0x03, - 0xc7, 0xa7, 0x06, 0xae, 0xaa, 0x62, 0xa8, 0xfc, 0x72, 0x1c, 0x1a, 0x09, 0x1b, 0xdc, 0x82, 0xd2, - 0x80, 0x2f, 0xcf, 0xdd, 0xf9, 0x9c, 0x14, 0xa7, 0x12, 0x22, 0xaa, 0x01, 0x36, 0x09, 0x03, 0xe4, - 0x80, 0x49, 0x61, 0x3c, 0x18, 0x13, 0xcb, 0xf6, 0xed, 0x9e, 0x66, 0x98, 0x2e, 0xee, 0xfa, 0xb6, - 0x7b, 0xc2, 0xc5, 0x9c, 0xea, 0xdb, 0xbd, 0x2d, 0x01, 0x43, 0x1b, 0x00, 0x86, 0xe5, 0x11, 0xa3, - 0x1e, 0x9a, 0x3d, 0x2a, 0x6c, 0x65, 0x63, 0x26, 0x5c, 0x3c, 0x88, 0xd5, 0x6a, 0xd9, 0xb0, 0x3c, - 0x2e, 0xee, 0x6d, 0xa8, 0x92, 0xd0, 0xa7, 0x0d, 0x58, 0x98, 0x65, 0x7e, 0x59, 0xd9, 0x98, 0x93, - 0x65, 0x0e, 0x82, 0xb0, 0x3a, 0xe5, 0x84, 0x03, 0x0f, 0xdd, 0x85, 0x22, 0x8d, 0x3d, 0x5e, 0xb3, - 0x48, 0x89, 0xde, 0x4b, 0xdb, 0x28, 0xb7, 0xf8, 0x63, 0x8a, 0xc8, 0x0c, 0xce, 0xa9, 0xd0, 0x13, - 0xa8, 0xe8, 0x96, 0x65, 0xfb, 0x3a, 0x3b, 0xb6, 0x93, 0x94, 0xc9, 0xfb, 0x23, 0x98, 0xb4, 0x43, - 0x6c, 0xc6, 0x49, 0xa6, 0x47, 0xff, 0x00, 0x13, 0xf4, 0x5c, 0x37, 0x4b, 0x74, 0xe7, 0x17, 0x5e, - 0xe3, 0x84, 0x2a, 0xc3, 0x6e, 0xfd, 0x23, 0x54, 0x24, 0xe1, 0xce, 0xe2, 0x74, 0xad, 0xbb, 0xd0, - 0x88, 0x8b, 0x74, 0x26, 0xa7, 0xfd, 0x14, 0x66, 0xd5, 0xa1, 0x15, 0x0a, 0x26, 0x92, 0x83, 0x0d, - 0x28, 0x72, 0x23, 0x32, 0x0f, 0x6a, 0x65, 0xeb, 0x44, 0xe5, 0x98, 0xca, 0x1d, 0x98, 0x8b, 0xf1, - 0xe2, 0xb9, 0xc3, 0xbb, 0x50, 0x73, 0x6c, 0x43, 0xf3, 0x18, 0x58, 0x33, 0x0d, 0x11, 0x15, 0x9c, - 0x00, 0x77, 0xc7, 0x20, 0xe4, 0x1d, 0xdf, 0x76, 0x92, 0xb2, 0x9c, 0x8e, 0xbc, 0x09, 0xf3, 0x71, - 0x72, 0xb6, 0xbc, 0xf2, 0x09, 0x2c, 0xa8, 0x78, 0x60, 0x1f, 0xe3, 0x37, 0x65, 0xdd, 0x82, 0x66, - 0x92, 0x41, 0xc8, 0x3c, 0x84, 0x76, 0x7c, 0xdd, 0x1f, 0x7a, 0x67, 0x63, 0x7e, 0x45, 0x66, 0xc0, - 0x2f, 0x45, 0xc6, 0x07, 0xd5, 0x20, 0x6f, 0x3a, 0x9c, 0x28, 0x6f, 0x3a, 0xca, 0x3d, 0x28, 0x07, - 0xb7, 0x11, 0xba, 0x1e, 0xe6, 0x2d, 0xf9, 0xd7, 0xdd, 0x59, 0x41, 0x4a, 0xf3, 0x38, 0x11, 0xb7, - 0xf9, 0x52, 0xd7, 0x01, 0x82, 0x78, 0x23, 0x2e, 0xc1, 0x99, 0x14, 0x86, 0xaa, 0x84, 0xa6, 0x7c, - 0x13, 0x89, 0x3e, 0x92, 0xd0, 0x46, 0x20, 0xb4, 0x11, 0x89, 0x46, 0xf9, 0x33, 0x45, 0xa3, 0xab, - 0x30, 0xe1, 0xf9, 0xba, 0xcf, 0x02, 0x62, 0x4d, 0xde, 0x5f, 0x74, 0x51, 0xac, 0x32, 0x3c, 0x74, - 0x1e, 0xa0, 0xeb, 0x62, 0xdd, 0xc7, 0x86, 0xa6, 0xb3, 0x50, 0x59, 0x50, 0xcb, 0x1c, 0xd2, 0xf6, - 0xd1, 0x47, 0x30, 0x29, 0xf2, 0x90, 0x09, 0x2a, 0xc8, 0x6a, 0x1a, 0xc7, 0x88, 0x09, 0x54, 0x41, - 0x11, 0x1e, 0xed, 0xe2, 0x6b, 0x8e, 0x36, 0x27, 0x64, 0xd8, 0x52, 0x80, 0x9a, 0xcc, 0x0e, 0x50, - 0x8c, 0xe4, 0x34, 0x01, 0xaa, 0x94, 0x1d, 0xa0, 0x38, 0x93, 0x91, 0x01, 0xea, 0xc7, 0x8c, 0x34, - 0xbb, 0xd0, 0x4c, 0x1e, 0x14, 0x1e, 0x20, 0x36, 0xa0, 0xe8, 0x51, 0xc8, 0xa8, 0x68, 0xc3, 0x69, - 0x38, 0xa6, 0xf2, 0x10, 0x66, 0x63, 0x6e, 0xc0, 0x72, 0xc1, 0xc0, 0x6b, 0x72, 0xa7, 0xf3, 0x1a, - 0xe5, 0x2f, 0x39, 0xd9, 0x8b, 0x1f, 0x98, 0x7d, 0x1f, 0xbb, 0x09, 0x2f, 0xbe, 0x21, 0xb8, 0x32, - 0x17, 0x5e, 0xce, 0xe4, 0xca, 0xb2, 0x34, 0xee, 0x90, 0xcf, 0xa0, 0x46, 0xed, 0xa8, 0x79, 0xb8, - 0x4f, 0x6f, 0x48, 0x9e, 0x9d, 0x7c, 0x90, 0x46, 0xce, 0x56, 0x66, 0x5e, 0xd0, 0xe1, 0xf8, 0xcc, - 0x84, 0xd5, 0xbe, 0x0c, 0x6b, 0xdd, 0x03, 0x94, 0x44, 0x3a, 0x93, 0x2d, 0x1e, 0x91, 0x30, 0x40, - 0x2a, 0x8c, 0x94, 0xb0, 0x7f, 0x48, 0xc5, 0x18, 0x65, 0x08, 0x26, 0xa8, 0xca, 0x31, 0x95, 0x9f, - 0x14, 0x00, 0xc2, 0xc9, 0xb7, 0xf8, 0xfc, 0xdf, 0x0a, 0xce, 0x22, 0xcb, 0x30, 0x56, 0xd2, 0x18, - 0xa6, 0x9e, 0xc2, 0x87, 0xd1, 0x53, 0xc8, 0x72, 0x8d, 0x8b, 0xa9, 0xe4, 0x6f, 0xed, 0xf9, 0xdb, - 0x82, 0xf9, 0xb8, 0xcd, 0xf9, 0xe9, 0x5b, 0x83, 0x09, 0xd3, 0xc7, 0x03, 0x56, 0x35, 0x47, 0xea, - 0x0e, 0x09, 0x99, 0xa1, 0x28, 0xab, 0x50, 0xde, 0x19, 0xe8, 0x3d, 0xdc, 0x71, 0x70, 0x97, 0x2c, - 0x66, 0x92, 0x01, 0x17, 0x80, 0x0d, 0x94, 0x0d, 0x28, 0x3d, 0xc2, 0x27, 0xec, 0x30, 0x9e, 0x52, - 0x40, 0xe5, 0x57, 0x39, 0x58, 0xa0, 0x71, 0x74, 0x53, 0xd4, 0xac, 0x2a, 0xf6, 0xec, 0xa1, 0xdb, - 0xc5, 0x1e, 0xb5, 0xaa, 0x33, 0xd4, 0x1c, 0xec, 0x9a, 0xb6, 0xc1, 0x2b, 0xbc, 0x72, 0xd7, 0x19, - 0xee, 0x51, 0x00, 0xa9, 0x6b, 0xc9, 0xf4, 0x97, 0x43, 0x9b, 0x3b, 0x58, 0x41, 0x2d, 0x75, 0x9d, - 0xe1, 0x3f, 0x91, 0xb1, 0xa0, 0xf5, 0x8e, 0x74, 0x17, 0x7b, 0xd4, 0x8f, 0x18, 0x6d, 0x87, 0x02, - 0xd0, 0x35, 0x98, 0x1b, 0xe0, 0x81, 0xed, 0x9e, 0x68, 0x7d, 0x73, 0x60, 0xfa, 0x9a, 0x69, 0x69, - 0x07, 0x27, 0x3e, 0xf6, 0xb8, 0xef, 0x20, 0x36, 0xf9, 0x98, 0xcc, 0xed, 0x58, 0xf7, 0xc9, 0x0c, - 0x52, 0xa0, 0x6a, 0xdb, 0x03, 0xcd, 0xeb, 0xda, 0x2e, 0xd6, 0x74, 0xe3, 0x39, 0xbd, 0x4a, 0x0a, - 0x6a, 0xc5, 0xb6, 0x07, 0x1d, 0x02, 0x6b, 0x1b, 0xcf, 0x15, 0x1d, 0xaa, 0x91, 0x7a, 0x8f, 0x14, - 0x01, 0xb4, 0xb0, 0xe3, 0x45, 0x00, 0xf9, 0x26, 0x30, 0xd7, 0xee, 0x0b, 0x3d, 0xd0, 0x6f, 0x02, - 0xf3, 0x4f, 0x1c, 0x51, 0x01, 0xd0, 0x6f, 0xa2, 0xb0, 0x3e, 0x3e, 0xe6, 0x45, 0x77, 0x59, 0x65, - 0x03, 0xc5, 0x00, 0xd8, 0xd4, 0x1d, 0xfd, 0xc0, 0xec, 0x9b, 0xfe, 0x09, 0xba, 0x02, 0x0d, 0xdd, - 0x30, 0xb4, 0xae, 0x80, 0x98, 0x58, 0xb4, 0x40, 0xea, 0xba, 0x61, 0x6c, 0x4a, 0x60, 0xf4, 0x3e, - 0x4c, 0x1b, 0xae, 0xed, 0x44, 0x71, 0x59, 0x4f, 0xa4, 0x41, 0x26, 0x64, 0x64, 0xe5, 0xcf, 0x05, - 0x38, 0x1f, 0x35, 0x4b, 0xbc, 0x86, 0xbe, 0x05, 0x53, 0xb1, 0x55, 0x63, 0xa5, 0x6b, 0x28, 0xa5, - 0x1a, 0xc1, 0x8c, 0xd5, 0x98, 0xf9, 0x78, 0x8d, 0x99, 0x5e, 0x9d, 0x17, 0x7e, 0x90, 0xea, 0x7c, - 0xfc, 0x7b, 0x55, 0xe7, 0x13, 0xa7, 0xab, 0xce, 0xdf, 0xa3, 0x3d, 0x2f, 0x41, 0x45, 0x4b, 0xaa, - 0x22, 0xeb, 0xcb, 0x04, 0x38, 0x96, 0xe8, 0x8d, 0xc5, 0xaa, 0xf8, 0xc9, 0xb3, 0x54, 0xf1, 0xa5, - 0xcc, 0x2a, 0x9e, 0x78, 0x85, 0xe3, 0xe8, 0xee, 0xc0, 0x76, 0x35, 0xc7, 0xb5, 0x0f, 0xcd, 0x3e, - 0x6e, 0x96, 0xa9, 0x08, 0x75, 0x01, 0xdf, 0x63, 0x60, 0xe5, 0x67, 0x39, 0x98, 0x8d, 0x1a, 0x9a, - 0x17, 0x67, 0x9f, 0x40, 0xd9, 0x15, 0x27, 0x91, 0x1b, 0x77, 0x35, 0x96, 0xfa, 0x24, 0x8f, 0xac, - 0x1a, 0xd2, 0x20, 0x35, 0xb3, 0xd6, 0xbf, 0x94, 0xc5, 0xe7, 0x75, 0xd5, 0xbe, 0xd2, 0x86, 0xe9, - 0x00, 0x79, 0x64, 0xa1, 0x2d, 0x15, 0xce, 0xf9, 0x68, 0xe1, 0x6c, 0x41, 0x71, 0x0b, 0x1f, 0x9b, - 0x5d, 0xfc, 0x83, 0xb4, 0xcf, 0x56, 0xa0, 0xe2, 0x60, 0x77, 0x60, 0x7a, 0x5e, 0xe0, 0xa5, 0x65, - 0x55, 0x06, 0x29, 0xdf, 0x4d, 0x40, 0x3d, 0xae, 0xdb, 0x9b, 0x89, 0x3a, 0x7d, 0x49, 0x3a, 0x37, - 0xf1, 0x0d, 0x4a, 0x17, 0xe3, 0x15, 0x11, 0x77, 0xf3, 0xf1, 0x3c, 0x3d, 0x88, 0xcd, 0x3c, 0x18, - 0x13, 0x0d, 0x74, 0xed, 0xc1, 0x40, 0xb7, 0x0c, 0xd1, 0xdd, 0xe4, 0x43, 0xa2, 0x2f, 0xdd, 0xed, - 0x91, 0xc3, 0x40, 0xc0, 0xf4, 0x1b, 0x5d, 0x80, 0x0a, 0x49, 0x76, 0x4d, 0x8b, 0xd6, 0xf9, 0xd4, - 0xd3, 0xcb, 0x2a, 0x70, 0xd0, 0x96, 0x49, 0x9c, 0x7a, 0x1c, 0x5b, 0xc7, 0xe2, 0x06, 0x94, 0xda, - 0x9f, 0x22, 0xe2, 0xab, 0x74, 0x1e, 0x5d, 0x82, 0xe2, 0xc0, 0x1e, 0x5a, 0xbe, 0x48, 0x7b, 0xeb, - 0x21, 0x26, 0x6d, 0x5a, 0xaa, 0x7c, 0x1a, 0xad, 0xc1, 0xa4, 0x41, 0xed, 0x20, 0x72, 0xdb, 0x86, - 0xd4, 0x2d, 0xa0, 0x13, 0xaa, 0x40, 0x40, 0x77, 0x82, 0xfb, 0xbb, 0x1c, 0xbf, 0x80, 0x63, 0xaa, - 0x4d, 0xbd, 0xc4, 0x1f, 0x47, 0x2f, 0x71, 0xa0, 0x3c, 0xd6, 0xb2, 0x79, 0x8c, 0x2e, 0xf5, 0x17, - 0xa1, 0xd4, 0xb7, 0x7b, 0xcc, 0x1d, 0x2a, 0xac, 0x21, 0xde, 0xb7, 0x7b, 0xd4, 0x1b, 0x66, 0x49, - 0xde, 0x62, 0x98, 0x56, 0x73, 0x8a, 0x9e, 0x63, 0x36, 0x20, 0x57, 0x11, 0xfd, 0xd0, 0x6c, 0xab, - 0x8b, 0x9b, 0x55, 0x3a, 0x55, 0xa6, 0x90, 0xa7, 0x56, 0x97, 0xde, 0x94, 0xbe, 0x7f, 0xd2, 0xac, - 0x51, 0x38, 0xf9, 0x24, 0x29, 0x27, 0xab, 0x38, 0xea, 0xf1, 0x94, 0x33, 0xed, 0xa4, 0xbe, 0x05, - 0xbd, 0x84, 0x5f, 0xe4, 0x60, 0x7e, 0x93, 0x66, 0x5b, 0x52, 0x48, 0x38, 0x43, 0x29, 0x8c, 0xae, - 0x05, 0x4d, 0x87, 0x44, 0x45, 0x1b, 0xdf, 0x2d, 0x47, 0x44, 0x6d, 0xa8, 0x09, 0xa6, 0x9c, 0xb4, - 0xf0, 0xda, 0x7e, 0x45, 0xd5, 0x93, 0x87, 0xca, 0xc7, 0xb0, 0x90, 0x90, 0x9a, 0x67, 0x46, 0xab, - 0x30, 0x15, 0xc6, 0x86, 0x40, 0xe8, 0x4a, 0x00, 0xdb, 0x31, 0x94, 0xdb, 0x30, 0xd7, 0xf1, 0x75, - 0xd7, 0x4f, 0x6c, 0xf9, 0x14, 0xb4, 0xb4, 0x65, 0x11, 0xa5, 0xe5, 0x5d, 0x85, 0x0e, 0xcc, 0x76, - 0x7c, 0xdb, 0x79, 0x03, 0xa6, 0xe4, 0xc4, 0xfb, 0xe6, 0x00, 0xdb, 0x43, 0x9f, 0x67, 0x43, 0x62, - 0xa8, 0x2c, 0xb0, 0x06, 0x4b, 0x72, 0xb5, 0x8f, 0x60, 0x9e, 0xf5, 0x37, 0xde, 0x64, 0x13, 0x8b, - 0xa2, 0xbb, 0x92, 0xe4, 0xbb, 0x0d, 0x33, 0x61, 0x50, 0x0f, 0x2b, 0xb4, 0xf5, 0x68, 0x85, 0xd6, - 0x4c, 0xb1, 0x72, 0xa4, 0x40, 0xfb, 0xdf, 0xbc, 0x14, 0x3b, 0x33, 0xea, 0xb3, 0xeb, 0xd1, 0xfa, - 0xec, 0x7c, 0x16, 0xcf, 0x48, 0x79, 0x96, 0xf4, 0xca, 0x42, 0x8a, 0x57, 0x76, 0x12, 0x45, 0xdc, - 0x78, 0xbc, 0xc5, 0x1c, 0x93, 0xee, 0x6f, 0x52, 0xc3, 0x7d, 0xca, 0x6a, 0xb8, 0x60, 0xe9, 0xa0, - 0xed, 0x74, 0x2d, 0x56, 0xc3, 0x2d, 0x66, 0xca, 0x19, 0x94, 0x70, 0xff, 0x3d, 0x0e, 0xe5, 0x60, - 0x2e, 0xa1, 0xdb, 0xa4, 0x9a, 0xf2, 0x29, 0x6a, 0x92, 0x6f, 0xb3, 0xc2, 0x1b, 0xdd, 0x66, 0xe3, - 0xaf, 0xbd, 0xcd, 0x96, 0xa0, 0x4c, 0x3f, 0x34, 0x17, 0x1f, 0xf2, 0xdb, 0xa9, 0x44, 0x01, 0x2a, - 0x3e, 0x0c, 0xdd, 0xaa, 0x78, 0x2a, 0xb7, 0x8a, 0x55, 0x8b, 0x93, 0xf1, 0x6a, 0xf1, 0x66, 0x70, - 0xdb, 0xb0, 0x8b, 0xe9, 0x42, 0x0a, 0xbf, 0xd4, 0x7b, 0xe6, 0x41, 0xf4, 0x9e, 0x61, 0x77, 0xd5, - 0xbb, 0x69, 0xd4, 0x6f, 0x6d, 0xad, 0xf8, 0x84, 0xd5, 0x8a, 0xb2, 0x6f, 0xf1, 0x88, 0x78, 0x1d, - 0x20, 0x38, 0xfc, 0xa2, 0x60, 0x9c, 0x49, 0xd9, 0x9b, 0x2a, 0xa1, 0x91, 0xf8, 0x12, 0x31, 0x41, - 0xd8, 0x22, 0x3d, 0x45, 0x7c, 0xf9, 0xb5, 0x9c, 0x39, 0x65, 0xf4, 0x18, 0x6f, 0x26, 0x7a, 0x0c, - 0xa7, 0xf4, 0xbd, 0xf5, 0x68, 0x8b, 0xe1, 0x8c, 0x3e, 0x93, 0xe8, 0x30, 0xd0, 0x3b, 0x5e, 0x77, - 0xf9, 0x34, 0xab, 0x0c, 0xcb, 0x1c, 0xd2, 0xf6, 0x49, 0x7a, 0x75, 0x68, 0x5a, 0xa6, 0x77, 0xc4, - 0xe6, 0x8b, 0x74, 0x1e, 0x04, 0xa8, 0x4d, 0x7f, 0x0a, 0xc6, 0x2f, 0x4d, 0x5f, 0xeb, 0xda, 0x06, - 0xa6, 0x1e, 0x39, 0xa1, 0x96, 0x08, 0x60, 0xd3, 0x36, 0x70, 0x78, 0x4e, 0x4a, 0x67, 0x3b, 0x27, - 0xe5, 0xd8, 0x39, 0x99, 0x87, 0xa2, 0x8b, 0x75, 0xcf, 0xb6, 0x9a, 0xc0, 0x7e, 0x51, 0x66, 0x23, - 0x72, 0x71, 0x0c, 0xb0, 0xe7, 0x91, 0x15, 0x78, 0x42, 0xc3, 0x87, 0x52, 0xe2, 0x35, 0x95, 0x99, - 0x78, 0x8d, 0xe8, 0x61, 0xc6, 0x12, 0xaf, 0x6a, 0x66, 0xe2, 0x75, 0x9a, 0x16, 0xa6, 0x94, 0x5a, - 0xd6, 0x46, 0xa7, 0x96, 0x72, 0x86, 0x56, 0x8f, 0x64, 0x68, 0x3f, 0xe6, 0xd1, 0x7a, 0x0c, 0x0b, - 0x89, 0xb3, 0xc0, 0xcf, 0xd6, 0xb5, 0x58, 0x17, 0x74, 0x31, 0x53, 0x45, 0x41, 0x13, 0xf4, 0xdf, - 0xa1, 0xbe, 0xfd, 0x12, 0x77, 0x3b, 0x27, 0x56, 0xf7, 0x0c, 0x29, 0x42, 0x03, 0x0a, 0xdd, 0x81, - 0xc1, 0xab, 0x7e, 0xf2, 0x29, 0x27, 0x0d, 0x85, 0x68, 0xd2, 0xa0, 0x41, 0x23, 0x5c, 0x81, 0x0b, - 0x3a, 0x4f, 0x04, 0x35, 0x08, 0x32, 0x61, 0x3e, 0xa5, 0xf2, 0x11, 0x87, 0x63, 0xd7, 0xa5, 0xdb, - 0x66, 0x70, 0xec, 0xba, 0x51, 0xb7, 0x2e, 0x44, 0xdd, 0x5a, 0x79, 0x0e, 0x15, 0xb2, 0xc0, 0xf7, - 0x12, 0x9f, 0x27, 0xcf, 0x85, 0x30, 0x79, 0x0e, 0x72, 0xf0, 0x71, 0x29, 0x07, 0x57, 0x56, 0x60, - 0x8a, 0xad, 0xc5, 0x37, 0xd2, 0x80, 0xc2, 0xd0, 0xed, 0x0b, 0xc3, 0x0d, 0xdd, 0xbe, 0xf2, 0xaf, - 0x50, 0x6d, 0xfb, 0xbe, 0xde, 0x3d, 0x3a, 0x83, 0x3c, 0xc1, 0x5a, 0x79, 0x39, 0xdf, 0x4f, 0xc8, - 0xa4, 0x28, 0x50, 0x13, 0xbc, 0x33, 0xd7, 0xdf, 0x05, 0xb4, 0x67, 0xbb, 0xfe, 0x03, 0xdb, 0xfd, - 0x4a, 0x77, 0x8d, 0xb3, 0xa5, 0xcf, 0x08, 0xc6, 0xf9, 0x2b, 0x93, 0xc2, 0xe5, 0x09, 0x95, 0x7e, - 0x2b, 0x97, 0x60, 0x26, 0xc2, 0x2f, 0x73, 0xe1, 0x5b, 0x50, 0xa1, 0x61, 0x84, 0xe7, 0x57, 0x57, - 0xe4, 0xd6, 0xde, 0xc8, 0x60, 0xa3, 0xdc, 0x87, 0x69, 0x72, 0x59, 0x50, 0x78, 0x10, 0xd8, 0x3f, - 0x88, 0x25, 0x21, 0x73, 0x31, 0x06, 0xb1, 0x04, 0xe4, 0xe7, 0x39, 0x98, 0xa0, 0xf0, 0x44, 0x68, - 0x5f, 0x82, 0xb2, 0x8b, 0x1d, 0x5b, 0xf3, 0xf5, 0x5e, 0xf0, 0x76, 0x87, 0x00, 0x9e, 0xe9, 0x3d, - 0x8f, 0x3e, 0x3d, 0x22, 0x93, 0x86, 0xd9, 0xc3, 0x9e, 0x2f, 0x1e, 0xf0, 0x54, 0x08, 0x6c, 0x8b, - 0x81, 0x88, 0x52, 0x3c, 0xf3, 0x3f, 0x58, 0x72, 0x31, 0xae, 0xd2, 0x6f, 0xf4, 0x1e, 0xfb, 0xfd, - 0x7d, 0x54, 0x23, 0x87, 0xfe, 0x2a, 0xdf, 0x82, 0x52, 0xac, 0x77, 0x13, 0x8c, 0x95, 0x3b, 0x80, - 0xe4, 0x5d, 0x73, 0xbd, 0x5e, 0x82, 0x22, 0x55, 0x8a, 0xb8, 0x1a, 0xeb, 0xb1, 0x6d, 0xab, 0x7c, - 0x5a, 0xf9, 0x04, 0x10, 0x53, 0x64, 0xe4, 0x3a, 0x3c, 0x83, 0xd6, 0x3f, 0x86, 0x99, 0x08, 0x03, - 0x2e, 0xc0, 0xc5, 0x28, 0x87, 0xc4, 0xfa, 0x9c, 0xfa, 0x37, 0x39, 0x80, 0xf6, 0xd0, 0x3f, 0xe2, - 0x9d, 0x08, 0x79, 0xa3, 0xb9, 0xe8, 0x46, 0xc9, 0x9c, 0xa3, 0x7b, 0xde, 0x57, 0xb6, 0x2b, 0xf2, - 0xbe, 0x60, 0x4c, 0x7b, 0x08, 0x43, 0xff, 0x48, 0xf4, 0x2b, 0xc9, 0x37, 0xba, 0x08, 0x35, 0xf6, - 0xec, 0x4a, 0xd3, 0x0d, 0xc3, 0xc5, 0x9e, 0xc7, 0x1b, 0x97, 0x55, 0x06, 0x6d, 0x33, 0x20, 0x41, - 0x33, 0x0d, 0x6c, 0xf9, 0xa6, 0x7f, 0xa2, 0xf9, 0xf6, 0x0b, 0x6c, 0xf1, 0x7c, 0xae, 0x2a, 0xa0, - 0xcf, 0x08, 0x90, 0xa0, 0xb9, 0xb8, 0x67, 0x7a, 0xbe, 0x2b, 0xd0, 0x44, 0x13, 0x8d, 0x43, 0x29, - 0x9a, 0xf2, 0x4d, 0x0e, 0x1a, 0x7b, 0xc3, 0x7e, 0x9f, 0x6d, 0xf2, 0xcc, 0xda, 0x44, 0x97, 0xf9, - 0x46, 0xf2, 0x71, 0x97, 0x08, 0x95, 0xc4, 0xb7, 0xf7, 0x03, 0x14, 0x9c, 0x7f, 0x0f, 0xd3, 0x92, - 0xac, 0xdc, 0x70, 0x91, 0x2b, 0x3b, 0x17, 0xbd, 0xb2, 0x89, 0xb7, 0xb0, 0x1a, 0xeb, 0x0d, 0xf7, - 0xa7, 0xcc, 0xc1, 0x4c, 0x84, 0x01, 0x2f, 0xd0, 0xd6, 0xa0, 0xca, 0x7f, 0xee, 0xe4, 0x8e, 0xb0, - 0x08, 0x25, 0x12, 0x68, 0xba, 0xa6, 0x21, 0x9a, 0xd5, 0x93, 0x8e, 0x6d, 0x6c, 0x9a, 0x86, 0xab, - 0x3c, 0x85, 0xaa, 0xca, 0xde, 0xdf, 0x71, 0xdc, 0xbb, 0x50, 0xe3, 0x3f, 0x8e, 0x6a, 0x91, 0xa7, - 0x02, 0x52, 0x5f, 0x35, 0xc2, 0x5c, 0xad, 0x5a, 0xf2, 0x50, 0xf9, 0x37, 0x68, 0xed, 0x3b, 0x06, - 0x49, 0xae, 0x64, 0xb6, 0x62, 0x73, 0x77, 0x41, 0xbc, 0x0d, 0xcc, 0xe4, 0x1e, 0xa5, 0xab, 0xba, - 0xf2, 0x50, 0x39, 0x0f, 0x4b, 0xa9, 0xdc, 0xf9, 0xce, 0x1d, 0x68, 0x84, 0x13, 0x86, 0x29, 0xba, - 0xf4, 0xb4, 0xfb, 0x9e, 0x93, 0xba, 0xef, 0xf3, 0xc1, 0x9d, 0xcc, 0x82, 0x3b, 0x1f, 0x49, 0x49, - 0x54, 0x21, 0x2b, 0x89, 0x1a, 0x8f, 0x24, 0x51, 0xca, 0xa3, 0x40, 0x7f, 0x3c, 0x89, 0xbd, 0x4d, - 0x53, 0x69, 0xb6, 0xb6, 0x88, 0x17, 0xad, 0xb4, 0xdd, 0x31, 0x14, 0x55, 0xc2, 0x56, 0xea, 0x50, - 0x8d, 0x44, 0x0e, 0xa5, 0x0d, 0xb5, 0x58, 0x24, 0xb8, 0x1a, 0xcb, 0x26, 0x92, 0x8a, 0x8b, 0xe5, - 0x12, 0xb3, 0x3c, 0x24, 0x3d, 0xf0, 0x76, 0xac, 0x43, 0x5b, 0x30, 0x7e, 0x07, 0x2a, 0xfb, 0x59, - 0x2f, 0xed, 0xc6, 0xc5, 0xcf, 0x37, 0xff, 0x5f, 0x80, 0x22, 0x23, 0x23, 0x8a, 0x61, 0xfd, 0x3a, - 0xae, 0x46, 0x3e, 0xa2, 0x97, 0x53, 0xd8, 0x3a, 0xa5, 0xdf, 0xe8, 0x63, 0xa8, 0x75, 0x75, 0x47, - 0xef, 0x92, 0x18, 0xc0, 0x7e, 0x77, 0x29, 0xc4, 0x2f, 0x0b, 0x69, 0x6d, 0xb5, 0x2a, 0x90, 0xd9, - 0x2f, 0x31, 0x77, 0xa1, 0xae, 0x1f, 0xeb, 0x66, 0x5f, 0x3f, 0xe8, 0x63, 0xe9, 0x67, 0x9b, 0x4c, - 0xf2, 0x5a, 0x80, 0xcd, 0xe8, 0x6f, 0x00, 0x0c, 0x3d, 0x6c, 0x70, 0xd2, 0x89, 0x51, 0xa4, 0x65, - 0x82, 0x18, 0xac, 0x6a, 0x5a, 0xb6, 0x81, 0x3d, 0x4d, 0x48, 0xc3, 0x5f, 0x04, 0x64, 0xad, 0xca, - 0xb0, 0x37, 0x39, 0x32, 0xba, 0x07, 0x0d, 0x4e, 0x1f, 0x88, 0x43, 0x33, 0xfd, 0x4c, 0x06, 0x7c, - 0xb9, 0xb6, 0xc0, 0x46, 0x1f, 0x42, 0x85, 0x73, 0x20, 0x52, 0xf1, 0x6a, 0x20, 0x83, 0x18, 0x18, - 0xe6, 0xbe, 0x87, 0x0d, 0xe5, 0x1e, 0xbf, 0x31, 0x84, 0x7d, 0xb9, 0x9f, 0x5c, 0x81, 0xc9, 0x43, - 0x4f, 0x33, 0xad, 0x43, 0x9b, 0x3b, 0x8a, 0xd4, 0x81, 0xe5, 0xa8, 0xc5, 0x43, 0xfa, 0x77, 0xed, - 0x1c, 0x94, 0xc4, 0x33, 0x57, 0x34, 0x09, 0x85, 0x67, 0x9b, 0x7b, 0x8d, 0x31, 0xf2, 0xb1, 0xbf, - 0xb5, 0xd7, 0xc8, 0xad, 0xdd, 0x86, 0x7a, 0xec, 0x77, 0x59, 0x34, 0x0d, 0xd5, 0x4e, 0x7b, 0x77, - 0xeb, 0xfe, 0xd3, 0xcf, 0x35, 0x75, 0xbb, 0xbd, 0xf5, 0x2f, 0x8d, 0x31, 0x34, 0x0b, 0x0d, 0x01, - 0xda, 0x7d, 0xfa, 0x8c, 0x41, 0x73, 0x6b, 0x2f, 0xa0, 0x16, 0x2d, 0xb8, 0xd0, 0x1c, 0x4c, 0x6f, - 0x3e, 0xdd, 0x7d, 0xd6, 0xde, 0xd9, 0xdd, 0x56, 0xb5, 0x4d, 0x75, 0xbb, 0xfd, 0x6c, 0x7b, 0xab, - 0x31, 0x16, 0x05, 0xab, 0xfb, 0xbb, 0xbb, 0x3b, 0xbb, 0x0f, 0x1b, 0x39, 0xc2, 0x35, 0x04, 0x6f, - 0x7f, 0xbe, 0x43, 0x90, 0xf3, 0x51, 0xe4, 0xfd, 0xdd, 0x47, 0xbb, 0x4f, 0xff, 0x79, 0xb7, 0x51, - 0xd8, 0xf8, 0x6d, 0x05, 0x6a, 0xe2, 0x08, 0x60, 0x97, 0x7a, 0xe7, 0x3d, 0x98, 0x14, 0x4f, 0x90, - 0xa5, 0x1a, 0x30, 0xfa, 0x60, 0xba, 0xb5, 0x98, 0x32, 0xc3, 0xc3, 0xc9, 0x18, 0x52, 0xe9, 0xf1, - 0x96, 0x7e, 0x07, 0x5f, 0x8e, 0x9c, 0xb7, 0xc4, 0x4f, 0xed, 0xad, 0x0b, 0x99, 0xf3, 0x01, 0xcf, - 0x7d, 0x72, 0xa8, 0xe5, 0x27, 0x4d, 0x48, 0x22, 0x4a, 0x7d, 0x2b, 0xd5, 0x5a, 0xc9, 0x46, 0x08, - 0xd8, 0x7e, 0x01, 0x8d, 0xf8, 0x73, 0x26, 0x24, 0xfd, 0xa8, 0x93, 0xf1, 0x56, 0xaa, 0xa5, 0x8c, - 0x42, 0x91, 0x99, 0x27, 0x9e, 0x04, 0xad, 0x8e, 0x78, 0xce, 0x91, 0x64, 0x9e, 0xf5, 0x4a, 0x84, - 0x29, 0x24, 0xfa, 0x1b, 0x36, 0x8a, 0xbc, 0xc3, 0x49, 0x79, 0xd1, 0x20, 0x2b, 0x24, 0xfd, 0xe7, - 0x6f, 0x65, 0x0c, 0x7d, 0x0e, 0xf5, 0x58, 0x07, 0x18, 0x49, 0x64, 0xe9, 0x2d, 0xed, 0xd6, 0xea, - 0x08, 0x8c, 0xa8, 0x05, 0xe5, 0x0e, 0x6f, 0xd4, 0x82, 0x29, 0x7d, 0xe3, 0xa8, 0x05, 0x53, 0x9b, - 0xc3, 0xd4, 0xd9, 0x22, 0x9d, 0x5c, 0xd9, 0xd9, 0xd2, 0xfa, 0xc6, 0xad, 0x0b, 0x99, 0xf3, 0xb2, - 0x12, 0x62, 0x7d, 0x5c, 0x59, 0x09, 0xe9, 0xfd, 0xe1, 0xd6, 0xea, 0x08, 0x8c, 0xb8, 0xd5, 0xc2, - 0x6e, 0x52, 0xdc, 0x6a, 0x89, 0x1e, 0x66, 0xdc, 0x6a, 0xc9, 0x46, 0x14, 0xb7, 0x5a, 0xac, 0x2f, - 0xb4, 0x92, 0x5d, 0x31, 0xa7, 0x58, 0x2d, 0xbd, 0x0c, 0x57, 0xc6, 0xd0, 0x26, 0x94, 0x44, 0xcd, - 0x8b, 0xa4, 0x43, 0x1f, 0xab, 0xb4, 0x5b, 0xad, 0xb4, 0xa9, 0x80, 0xc9, 0x4d, 0x18, 0x27, 0x50, - 0x34, 0x17, 0xc5, 0x12, 0xc4, 0xf3, 0x71, 0x70, 0x40, 0x78, 0x07, 0x8a, 0xac, 0x4c, 0x44, 0xd2, - 0x95, 0x1d, 0x29, 0x4a, 0x5b, 0xcd, 0xe4, 0x44, 0x40, 0xfe, 0x98, 0xfd, 0xd3, 0x02, 0xaf, 0xf8, - 0xd0, 0xb9, 0xe8, 0x33, 0xda, 0x68, 0x61, 0xd9, 0x3a, 0x9f, 0x31, 0x1b, 0x70, 0x33, 0x60, 0x26, - 0x25, 0x8d, 0x42, 0x52, 0x3b, 0x33, 0x3b, 0x87, 0x6b, 0x5d, 0x7c, 0x0d, 0x96, 0xbc, 0x65, 0x6e, - 0xc1, 0x85, 0x88, 0xf7, 0x4b, 0x86, 0x6b, 0x26, 0x27, 0x04, 0xf9, 0xc6, 0x7f, 0x15, 0x60, 0x8a, - 0xa5, 0xbc, 0x3c, 0x9c, 0xef, 0x00, 0x84, 0xc5, 0x19, 0x5a, 0x8a, 0x3a, 0x53, 0xa4, 0x50, 0x6d, - 0x9d, 0x4b, 0x9f, 0x94, 0xd5, 0x29, 0xd5, 0x59, 0xb2, 0x3a, 0x93, 0xf5, 0x9b, 0xac, 0xce, 0x94, - 0xe2, 0x4c, 0x19, 0x43, 0x0f, 0xa0, 0x1c, 0xa4, 0xfe, 0x48, 0x2e, 0x19, 0x62, 0xb5, 0x4b, 0x6b, - 0x29, 0x75, 0x4e, 0x96, 0x4a, 0xca, 0xe7, 0x65, 0xa9, 0x92, 0x75, 0x82, 0x2c, 0x55, 0x5a, 0x11, - 0x10, 0xee, 0x91, 0xa7, 0x70, 0xf1, 0x3d, 0x46, 0x12, 0xc2, 0xc4, 0x1e, 0xa3, 0xe9, 0x84, 0x32, - 0x76, 0xff, 0xdc, 0xb7, 0xdf, 0x2d, 0xe7, 0xfe, 0xf0, 0xdd, 0xf2, 0xd8, 0x7f, 0xbe, 0x5a, 0xce, - 0x7d, 0xfb, 0x6a, 0x39, 0xf7, 0xbb, 0x57, 0xcb, 0xb9, 0x3f, 0xbe, 0x5a, 0xce, 0x7d, 0xfd, 0xa7, - 0xe5, 0xb1, 0x83, 0x22, 0xfd, 0xf7, 0x98, 0xeb, 0x7f, 0x0d, 0x00, 0x00, 0xff, 0xff, 0x1f, 0x28, - 0x3f, 0xad, 0xd4, 0x34, 0x00, 0x00, + // 4063 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x3b, 0x4d, 0x6f, 0x1c, 0x47, + 0x76, 0x9c, 0x19, 0x7e, 0xcc, 0xbc, 0xe1, 0x7c, 0xb0, 0x48, 0x8a, 0xc3, 0x91, 0x44, 0x49, 0x6d, + 0xcb, 0xb2, 0xb4, 0x31, 0x15, 0x51, 0x8e, 0xad, 0x68, 0x57, 0xb6, 0xc6, 0x24, 0xe5, 0x70, 0x4d, + 0x51, 0x4c, 0x8f, 0xb8, 0x71, 0xb2, 0x09, 0x3a, 0xcd, 0xe9, 0xe2, 0xb0, 0xed, 0x99, 0xee, 0xde, + 0xee, 0x6a, 0x5a, 0x93, 0x53, 0x8e, 0x01, 0x82, 0x00, 0x8b, 0xe4, 0x96, 0x73, 0x80, 0x00, 0x9b, + 0x43, 0x2e, 0x39, 0xe7, 0xbc, 0x40, 0x12, 0x20, 0xb7, 0x24, 0xb7, 0xd8, 0x01, 0x16, 0x39, 0x05, + 0xf9, 0x09, 0x8b, 0xfa, 0xea, 0xae, 0xfe, 0x1a, 0x92, 0x5a, 0x61, 0x57, 0xb7, 0xae, 0x57, 0xef, + 0xbd, 0x7a, 0x55, 0xef, 0xd5, 0xab, 0xf7, 0x5e, 0x55, 0x43, 0xcd, 0xf4, 0xec, 0x4d, 0xcf, 0x77, + 0x89, 0x8b, 0xaa, 0x67, 0x0f, 0xcc, 0x91, 0x77, 0x6a, 0x3e, 0xe8, 0x7e, 0x30, 0xb4, 0xc9, 0x69, + 0x78, 0xbc, 0x39, 0x70, 0xc7, 0xf7, 0x87, 0xee, 0xd0, 0xbd, 0xcf, 0x10, 0x8e, 0xc3, 0x13, 0xd6, + 0x62, 0x0d, 0xf6, 0xc5, 0x09, 0xb5, 0x7b, 0xd0, 0xfc, 0x11, 0xf6, 0x03, 0xdb, 0x75, 0x74, 0xfc, + 0x93, 0x10, 0x07, 0x04, 0x75, 0x60, 0xe1, 0x8c, 0x43, 0x3a, 0xa5, 0x9b, 0xa5, 0xf7, 0x6b, 0xba, + 0x6c, 0x6a, 0x7f, 0x5f, 0x82, 0x56, 0x84, 0x1c, 0x78, 0xae, 0x13, 0xe0, 0x62, 0x6c, 0x74, 0x0b, + 0x16, 0xfd, 0xd0, 0x21, 0xf6, 0x18, 0x1b, 0x8e, 0x39, 0xc6, 0x9d, 0x32, 0xeb, 0xae, 0x0b, 0xd8, + 0x81, 0x39, 0xc6, 0xe8, 0x0e, 0xb4, 0x24, 0x8a, 0x64, 0x52, 0x61, 0x58, 0x4d, 0x01, 0x16, 0xa3, + 0xa1, 0x4d, 0x58, 0x96, 0x88, 0xa6, 0x67, 0x47, 0xc8, 0xb3, 0x0c, 0x79, 0x49, 0x74, 0xf5, 0x3c, + 0x5b, 0xe0, 0x6b, 0x3f, 0x86, 0xda, 0xce, 0x41, 0x7f, 0xdb, 0x75, 0x4e, 0xec, 0x21, 0x15, 0x31, + 0xc0, 0x3e, 0xa5, 0xe9, 0x94, 0x6e, 0x56, 0xa8, 0x88, 0xa2, 0x89, 0xba, 0x50, 0x0d, 0xb0, 0xe9, + 0x0f, 0x4e, 0x71, 0xd0, 0x29, 0xb3, 0xae, 0xa8, 0x4d, 0xa9, 0x5c, 0x8f, 0xd8, 0xae, 0x13, 0x74, + 0x2a, 0x9c, 0x4a, 0x34, 0xb5, 0xbf, 0x2d, 0x41, 0xfd, 0xd0, 0xf5, 0xc9, 0x73, 0xd3, 0xf3, 0x6c, + 0x67, 0x88, 0x36, 0xa1, 0xca, 0xd6, 0x72, 0xe0, 0x8e, 0xd8, 0x1a, 0x34, 0xb7, 0xd0, 0xa6, 0x54, + 0xc7, 0xe6, 0xa1, 0xe8, 0xd1, 0x23, 0x1c, 0x74, 0x1b, 0x9a, 0x03, 0xd7, 0x21, 0xa6, 0xed, 0x60, + 0xdf, 0xf0, 0x5c, 0x9f, 0xb0, 0xa5, 0x99, 0xd3, 0x1b, 0x11, 0x94, 0x72, 0x47, 0x57, 0xa1, 0x76, + 0xea, 0x06, 0x84, 0x63, 0x54, 0x18, 0x46, 0x95, 0x02, 0x58, 0xe7, 0x1a, 0x2c, 0xb0, 0x4e, 0xdb, + 0x13, 0x8b, 0x30, 0x4f, 0x9b, 0x7b, 0x9e, 0xf6, 0xd3, 0x12, 0xcc, 0x3d, 0x77, 0x43, 0x87, 0xa4, + 0x86, 0x31, 0xc9, 0xa9, 0x50, 0x90, 0x32, 0x8c, 0x49, 0x4e, 0xe3, 0x61, 0x28, 0x06, 0xd7, 0x11, + 0x1f, 0x86, 0x76, 0x76, 0xa1, 0xea, 0x63, 0xd3, 0x72, 0x9d, 0xd1, 0x84, 0x89, 0x50, 0xd5, 0xa3, + 0x36, 0x55, 0x5e, 0x80, 0x47, 0xb6, 0x13, 0xbe, 0x32, 0x7c, 0x3c, 0x32, 0x8f, 0xf1, 0x88, 0x89, + 0x52, 0xd5, 0x9b, 0x02, 0xac, 0x73, 0xa8, 0xf6, 0x15, 0xb4, 0xa8, 0xb6, 0x03, 0xcf, 0x1c, 0xe0, + 0x17, 0x6c, 0x0d, 0xa9, 0x6d, 0xb0, 0x41, 0x1d, 0x4c, 0xbe, 0x71, 0xfd, 0xaf, 0x99, 0x64, 0x55, + 0xbd, 0x4e, 0x61, 0x07, 0x1c, 0x84, 0xd6, 0xa1, 0xca, 0xe5, 0xb2, 0x2d, 0x26, 0x56, 0x55, 0x67, + 0x33, 0x3e, 0xb4, 0xad, 0xa8, 0xcb, 0xf6, 0x06, 0x42, 0xaa, 0x05, 0x3e, 0xfb, 0x81, 0xa6, 0x01, + 0xec, 0x39, 0xe4, 0xa3, 0x0f, 0x7f, 0x64, 0x8e, 0x42, 0x8c, 0x56, 0x60, 0xee, 0x8c, 0x7e, 0x30, + 0xfe, 0x15, 0x9d, 0x37, 0xb4, 0xff, 0x28, 0xc3, 0xd5, 0x7d, 0x2a, 0x60, 0xdf, 0x74, 0xac, 0x63, + 0xf7, 0x55, 0x1f, 0x0f, 0x42, 0xdf, 0x26, 0x93, 0x6d, 0xd7, 0x21, 0xf8, 0x15, 0x41, 0xcf, 0x60, + 0xc9, 0x91, 0xf2, 0x1a, 0xd2, 0x06, 0x28, 0x87, 0xfa, 0xd6, 0x7a, 0xac, 0xd8, 0xd4, 0x94, 0xf4, + 0xb6, 0x93, 0x04, 0x04, 0xe8, 0x69, 0xbc, 0x40, 0x92, 0x4b, 0x99, 0x71, 0x59, 0x8b, 0xb9, 0xf4, + 0x77, 0x99, 0x24, 0x82, 0x87, 0x5c, 0x39, 0xc9, 0xe1, 0x43, 0xa0, 0xdb, 0xc5, 0x30, 0x03, 0x23, + 0x0c, 0xb0, 0xcf, 0xe6, 0x5a, 0xdf, 0x5a, 0x89, 0xa9, 0xe3, 0xa9, 0xea, 0x35, 0x3f, 0x74, 0x7a, + 0xc1, 0x51, 0x80, 0x7d, 0xb6, 0xab, 0x84, 0x92, 0x0c, 0xdf, 0x75, 0xc9, 0x49, 0x20, 0x15, 0x23, + 0xc1, 0x3a, 0x83, 0xa2, 0xfb, 0xb0, 0x1c, 0x84, 0x9e, 0x37, 0xc2, 0x63, 0xec, 0x10, 0x73, 0x64, + 0x0c, 0x7d, 0x37, 0xf4, 0x82, 0xce, 0xdc, 0xcd, 0xca, 0xfb, 0x15, 0x1d, 0xa9, 0x5d, 0x9f, 0xb3, + 0x1e, 0xb4, 0x01, 0xe0, 0xf9, 0xf6, 0x99, 0x3d, 0xc2, 0x43, 0x6c, 0x75, 0xe6, 0x19, 0x53, 0x05, + 0xa2, 0xfd, 0x75, 0x19, 0x56, 0xd9, 0x7c, 0x0e, 0x5d, 0x4b, 0x2c, 0xae, 0xd8, 0x83, 0xef, 0x40, + 0x63, 0xc0, 0xd8, 0x1b, 0x9e, 0xe9, 0x63, 0x87, 0x08, 0x5b, 0x5c, 0xe4, 0xc0, 0x43, 0x06, 0x43, + 0x87, 0xd0, 0x0e, 0x84, 0x2e, 0x8c, 0x01, 0x57, 0x86, 0x58, 0xb1, 0xdb, 0xf1, 0x9c, 0xa7, 0x68, + 0x4e, 0x6f, 0x05, 0x19, 0x55, 0x2e, 0x04, 0x93, 0x60, 0x40, 0x46, 0x7c, 0x13, 0xd7, 0xb7, 0x7e, + 0x2b, 0xc5, 0x28, 0x2d, 0xe8, 0x66, 0x9f, 0xa3, 0xef, 0x3a, 0xc4, 0x9f, 0xe8, 0x92, 0xb8, 0xfb, + 0x18, 0x16, 0xd5, 0x0e, 0xd4, 0x86, 0xca, 0xd7, 0x78, 0x22, 0x26, 0x41, 0x3f, 0x63, 0x53, 0xe3, + 0x5b, 0x88, 0x37, 0x1e, 0x97, 0x1f, 0x95, 0x34, 0x1f, 0x50, 0x3c, 0xca, 0x73, 0x4c, 0x4c, 0xcb, + 0x24, 0x26, 0x42, 0x30, 0xcb, 0xbc, 0x22, 0x67, 0xc1, 0xbe, 0x29, 0xd7, 0x50, 0x58, 0x7b, 0x4d, + 0xa7, 0x9f, 0xe8, 0x1a, 0xd4, 0x22, 0xb3, 0x12, 0xae, 0x31, 0x06, 0x50, 0x17, 0x65, 0x12, 0x82, + 0xc7, 0x1e, 0x61, 0x0a, 0x6e, 0xe8, 0xb2, 0xa9, 0xfd, 0xf3, 0x2c, 0xb4, 0x33, 0x3a, 0x78, 0x04, + 0xd5, 0xb1, 0x18, 0x5e, 0x98, 0xf3, 0x35, 0xc5, 0x4f, 0x65, 0x44, 0xd4, 0x23, 0x6c, 0xea, 0x06, + 0xe8, 0x06, 0x53, 0xdc, 0x78, 0xd4, 0xa6, 0x9a, 0x1d, 0xb9, 0x43, 0xc3, 0xb2, 0x7d, 0x3c, 0x20, + 0xae, 0x3f, 0x11, 0x62, 0x2e, 0x8e, 0xdc, 0xe1, 0x8e, 0x84, 0xa1, 0x2d, 0x00, 0xcb, 0x09, 0xa8, + 0x52, 0x4f, 0xec, 0x21, 0x13, 0xb6, 0xbe, 0xb5, 0x1c, 0x0f, 0x1e, 0xf9, 0x6a, 0xbd, 0x66, 0x39, + 0x81, 0x10, 0xf7, 0x31, 0x34, 0xa8, 0xeb, 0x33, 0xc6, 0xdc, 0xcd, 0x72, 0xbb, 0xac, 0x6f, 0xad, + 0xaa, 0x32, 0x47, 0x4e, 0x58, 0x5f, 0xf4, 0xe2, 0x46, 0x80, 0x3e, 0x81, 0x79, 0xe6, 0x7b, 0x82, + 0xce, 0x3c, 0x23, 0x7a, 0x2f, 0x6f, 0xa2, 0x42, 0xe3, 0xfb, 0x0c, 0x91, 0x2b, 0x5c, 0x50, 0xa1, + 0xe7, 0x50, 0x37, 0x1d, 0xc7, 0x25, 0x26, 0xdf, 0xb6, 0x0b, 0x8c, 0xc9, 0xf7, 0xa6, 0x30, 0xe9, + 0xc5, 0xd8, 0x9c, 0x93, 0x4a, 0x8f, 0x7e, 0x07, 0xe6, 0xd8, 0xbe, 0xee, 0x54, 0xd9, 0xcc, 0x6f, + 0x9c, 0x63, 0x84, 0x3a, 0xc7, 0xee, 0xfe, 0x2e, 0xd4, 0x15, 0xe1, 0x2e, 0x63, 0x74, 0xdd, 0x4f, + 0xa0, 0x9d, 0x16, 0xe9, 0x52, 0x46, 0xfb, 0x43, 0x58, 0xd1, 0x43, 0x27, 0x16, 0x4c, 0x06, 0x07, + 0x5b, 0x30, 0x2f, 0x94, 0xc8, 0x2d, 0xa8, 0x5b, 0xbc, 0x26, 0xba, 0xc0, 0xd4, 0x9e, 0xc0, 0x6a, + 0x8a, 0x97, 0x88, 0x1d, 0xde, 0x85, 0xa6, 0xe7, 0x5a, 0x46, 0xc0, 0xc1, 0x86, 0x6d, 0x49, 0xaf, + 0xe0, 0x45, 0xb8, 0x7b, 0x16, 0x25, 0xef, 0x13, 0xd7, 0xcb, 0xca, 0x72, 0x31, 0xf2, 0x0e, 0x5c, + 0x49, 0x93, 0xf3, 0xe1, 0xb5, 0x4f, 0x61, 0x4d, 0xc7, 0x63, 0xf7, 0x0c, 0xbf, 0x2e, 0xeb, 0x2e, + 0x74, 0xb2, 0x0c, 0x62, 0xe6, 0x31, 0xb4, 0x4f, 0x4c, 0x12, 0x06, 0x97, 0x63, 0x7e, 0x57, 0x65, + 0x20, 0x0e, 0x45, 0xce, 0x07, 0x35, 0xa1, 0x6c, 0x7b, 0x82, 0xa8, 0x6c, 0x7b, 0xda, 0x53, 0xa8, + 0x45, 0xa7, 0x11, 0x7a, 0x18, 0xc7, 0x2d, 0xe5, 0xf3, 0xce, 0xac, 0x28, 0xa4, 0xd9, 0xcf, 0xf8, + 0x6d, 0x31, 0xd4, 0x43, 0x80, 0xc8, 0xdf, 0xc8, 0x43, 0x70, 0x39, 0x87, 0xa1, 0xae, 0xa0, 0x69, + 0x3f, 0x4b, 0x78, 0x1f, 0x45, 0x68, 0x2b, 0x12, 0xda, 0x4a, 0x78, 0xa3, 0xf2, 0xa5, 0xbc, 0xd1, + 0x7d, 0x98, 0x0b, 0x88, 0x49, 0xb8, 0x43, 0x6c, 0xaa, 0xf3, 0x4b, 0x0e, 0x8a, 0x75, 0x8e, 0x87, + 0xae, 0x03, 0x0c, 0x7c, 0x6c, 0x12, 0x6c, 0x19, 0x26, 0x77, 0x95, 0x15, 0xbd, 0x26, 0x20, 0x3d, + 0x82, 0xbe, 0x0f, 0x0b, 0x32, 0x0e, 0x99, 0x63, 0x82, 0xdc, 0xca, 0xe3, 0x98, 0x50, 0x81, 0x2e, + 0x29, 0xe2, 0xad, 0x3d, 0x7f, 0xce, 0xd6, 0x16, 0x84, 0x1c, 0x5b, 0x71, 0x50, 0x0b, 0xc5, 0x0e, + 0x8a, 0x93, 0x5c, 0xc4, 0x41, 0x55, 0x8b, 0x1d, 0x94, 0x60, 0x32, 0xd5, 0x41, 0xfd, 0x26, 0x3d, + 0xcd, 0x01, 0x74, 0xb2, 0x1b, 0x45, 0x38, 0x88, 0x2d, 0x98, 0x0f, 0x18, 0x64, 0x9a, 0xb7, 0x11, + 0x34, 0x02, 0x53, 0xfb, 0x1c, 0x56, 0x52, 0x66, 0xc0, 0x63, 0xc1, 0xc8, 0x6a, 0x4a, 0x17, 0xb3, + 0x1a, 0xed, 0xff, 0x4b, 0xaa, 0x15, 0x3f, 0xb3, 0x47, 0x04, 0xfb, 0x19, 0x2b, 0xfe, 0x50, 0x72, + 0xe5, 0x26, 0xbc, 0x51, 0xc8, 0x95, 0x47, 0x69, 0xc2, 0x20, 0x5f, 0x42, 0x93, 0xe9, 0xd1, 0x08, + 0xf0, 0x88, 0x9d, 0x90, 0x22, 0x3a, 0xf9, 0x20, 0x8f, 0x9c, 0x8f, 0xcc, 0xad, 0xa0, 0x2f, 0xf0, + 0xb9, 0x0a, 0x1b, 0x23, 0x15, 0xd6, 0x7d, 0x0a, 0x28, 0x8b, 0x74, 0x29, 0x5d, 0x7c, 0x41, 0xdd, + 0x00, 0xcd, 0x30, 0x72, 0xdc, 0xfe, 0x09, 0x13, 0x63, 0x9a, 0x22, 0xb8, 0xa0, 0xba, 0xc0, 0xd4, + 0xfe, 0xae, 0x02, 0x10, 0x77, 0xbe, 0xc5, 0xfb, 0xff, 0x51, 0xb4, 0x17, 0x79, 0x84, 0x71, 0x33, + 0x8f, 0x61, 0xee, 0x2e, 0xfc, 0x3c, 0xb9, 0x0b, 0x79, 0xac, 0x71, 0x3b, 0x97, 0xfc, 0xad, 0xdd, + 0x7f, 0x3b, 0x70, 0x25, 0xad, 0x73, 0xb1, 0xfb, 0xee, 0xc1, 0x9c, 0x4d, 0xf0, 0x98, 0x67, 0xcd, + 0x89, 0xbc, 0x43, 0x41, 0xe6, 0x28, 0xda, 0x2d, 0xa8, 0xed, 0x8d, 0xcd, 0x21, 0xee, 0x7b, 0x78, + 0x40, 0x07, 0xb3, 0x69, 0x43, 0x08, 0xc0, 0x1b, 0xda, 0x16, 0x54, 0xbf, 0xc0, 0x13, 0xbe, 0x19, + 0x2f, 0x28, 0xa0, 0xf6, 0x2f, 0x25, 0x58, 0x63, 0x7e, 0x74, 0x5b, 0xe6, 0xac, 0x3a, 0x0e, 0xdc, + 0xd0, 0x1f, 0xe0, 0x80, 0x69, 0xd5, 0x0b, 0x0d, 0x0f, 0xfb, 0xb6, 0x6b, 0x89, 0x0c, 0xaf, 0x36, + 0xf0, 0xc2, 0x43, 0x06, 0xa0, 0x79, 0x2d, 0xed, 0xfe, 0x49, 0xe8, 0x0a, 0x03, 0xab, 0xe8, 0xd5, + 0x81, 0x17, 0xfe, 0x3e, 0x6d, 0x4b, 0xda, 0xe0, 0xd4, 0xf4, 0x71, 0xc0, 0xec, 0x88, 0xd3, 0xf6, + 0x19, 0x00, 0x3d, 0x80, 0xd5, 0x31, 0x1e, 0xbb, 0xfe, 0xc4, 0x18, 0xd9, 0x63, 0x9b, 0x18, 0xb6, + 0x63, 0x1c, 0x4f, 0x08, 0x0e, 0x84, 0xed, 0x20, 0xde, 0xb9, 0x4f, 0xfb, 0xf6, 0x9c, 0xcf, 0x68, + 0x0f, 0xd2, 0xa0, 0xe1, 0xba, 0x63, 0x23, 0x18, 0xb8, 0x3e, 0x36, 0x4c, 0xeb, 0x2b, 0x76, 0x94, + 0x54, 0xf4, 0xba, 0xeb, 0x8e, 0xfb, 0x14, 0xd6, 0xb3, 0xbe, 0xd2, 0x4c, 0x68, 0x24, 0xf2, 0x3d, + 0x9a, 0x04, 0xb0, 0xc4, 0x4e, 0x24, 0x01, 0xf4, 0x9b, 0xc2, 0x7c, 0x77, 0x24, 0xd7, 0x81, 0x7d, + 0x53, 0x18, 0x99, 0x78, 0x32, 0x03, 0x60, 0xdf, 0x74, 0xc1, 0x46, 0xf8, 0x4c, 0x24, 0xdd, 0x35, + 0x9d, 0x37, 0x34, 0x0b, 0x60, 0xdb, 0xf4, 0xcc, 0x63, 0x7b, 0x64, 0x93, 0x09, 0xba, 0x0b, 0x6d, + 0xd3, 0xb2, 0x8c, 0x81, 0x84, 0xd8, 0x58, 0x96, 0x40, 0x5a, 0xa6, 0x65, 0x6d, 0x2b, 0x60, 0xf4, + 0x3d, 0x58, 0xb2, 0x7c, 0xd7, 0x4b, 0xe2, 0xf2, 0x9a, 0x48, 0x9b, 0x76, 0xa8, 0xc8, 0xda, 0x2f, + 0x2a, 0x70, 0x3d, 0xa9, 0x96, 0x74, 0x0e, 0xfd, 0x08, 0x16, 0x53, 0xa3, 0xa6, 0x52, 0xd7, 0x58, + 0x4a, 0x3d, 0x81, 0x99, 0xca, 0x31, 0xcb, 0xe9, 0x1c, 0x33, 0x3f, 0x3b, 0xaf, 0xbc, 0x91, 0xec, + 0x7c, 0xf6, 0x57, 0xca, 0xce, 0xe7, 0x2e, 0x96, 0x9d, 0xbf, 0xc7, 0x6a, 0x5e, 0x92, 0x8a, 0xa5, + 0x54, 0xf3, 0xbc, 0x2e, 0x13, 0xe1, 0x38, 0xb2, 0x36, 0x96, 0xca, 0xe2, 0x17, 0x2e, 0x93, 0xc5, + 0x57, 0x0b, 0xb3, 0x78, 0x6a, 0x15, 0x9e, 0x67, 0xfa, 0x63, 0xd7, 0x37, 0x3c, 0xdf, 0x3d, 0xb1, + 0x47, 0xb8, 0x53, 0x63, 0x22, 0xb4, 0x24, 0xfc, 0x90, 0x83, 0xb5, 0x7f, 0x28, 0xc1, 0x4a, 0x52, + 0xd1, 0x22, 0x39, 0xfb, 0x14, 0x6a, 0xbe, 0xdc, 0x89, 0x42, 0xb9, 0xb7, 0x52, 0xa1, 0x4f, 0x76, + 0xcb, 0xea, 0x31, 0x0d, 0xd2, 0x0b, 0x73, 0xfd, 0x3b, 0x45, 0x7c, 0xce, 0xcb, 0xf6, 0xb5, 0x1e, + 0x2c, 0x45, 0xc8, 0x53, 0x13, 0x6d, 0x25, 0x71, 0x2e, 0x27, 0x13, 0x67, 0x07, 0xe6, 0x77, 0xf0, + 0x99, 0x3d, 0xc0, 0x6f, 0xa4, 0x7c, 0x76, 0x13, 0xea, 0x1e, 0xf6, 0xc7, 0x76, 0x10, 0x44, 0x56, + 0x5a, 0xd3, 0x55, 0x90, 0xf6, 0xed, 0x1c, 0xb4, 0xd2, 0x6b, 0xfb, 0x71, 0x26, 0x4f, 0xbf, 0xaa, + 0xec, 0x9b, 0xf4, 0x04, 0x95, 0x83, 0xf1, 0xae, 0xf4, 0xbb, 0xe5, 0x74, 0x9c, 0x1e, 0xf9, 0x66, + 0xe1, 0x8c, 0xe9, 0x0a, 0x0c, 0xdc, 0xf1, 0xd8, 0x74, 0x2c, 0x59, 0xdd, 0x14, 0x4d, 0xba, 0x5e, + 0xa6, 0x3f, 0xa4, 0x9b, 0x81, 0x82, 0xd9, 0x37, 0xba, 0x01, 0x75, 0x1a, 0xec, 0xda, 0x0e, 0xcb, + 0xf3, 0x99, 0xa5, 0xd7, 0x74, 0x10, 0xa0, 0x1d, 0x9b, 0x1a, 0xf5, 0x2c, 0x76, 0xce, 0xe4, 0x09, + 0xa8, 0x94, 0x3f, 0xa5, 0xc7, 0xd7, 0x59, 0x3f, 0xba, 0x03, 0xf3, 0x63, 0x37, 0x74, 0x88, 0x0c, + 0x7b, 0x5b, 0x31, 0x26, 0x2b, 0x5a, 0xea, 0xa2, 0x1b, 0xdd, 0x83, 0x05, 0x8b, 0xe9, 0x41, 0xc6, + 0xb6, 0x6d, 0xa5, 0x5a, 0xc0, 0x3a, 0x74, 0x89, 0x80, 0x9e, 0x44, 0xe7, 0x77, 0x2d, 0x7d, 0x00, + 0xa7, 0x96, 0x36, 0xf7, 0x10, 0xdf, 0x4f, 0x1e, 0xe2, 0xc0, 0x78, 0xdc, 0x2b, 0xe6, 0x31, 0x3d, + 0xd5, 0x5f, 0x87, 0xea, 0xc8, 0x1d, 0x72, 0x73, 0xa8, 0xf3, 0x82, 0xf8, 0xc8, 0x1d, 0x32, 0x6b, + 0x58, 0xa1, 0x71, 0x8b, 0x65, 0x3b, 0x9d, 0x45, 0xb6, 0x8f, 0x79, 0x83, 0x1e, 0x45, 0xec, 0xc3, + 0x70, 0x9d, 0x01, 0xee, 0x34, 0x58, 0x57, 0x8d, 0x41, 0x5e, 0x38, 0x03, 0x76, 0x52, 0x12, 0x32, + 0xe9, 0x34, 0x19, 0x9c, 0x7e, 0xd2, 0x90, 0x93, 0x67, 0x1c, 0xad, 0x74, 0xc8, 0x99, 0xb7, 0x53, + 0xdf, 0x82, 0x5a, 0xc2, 0x3f, 0x95, 0xe0, 0xca, 0x36, 0x8b, 0xb6, 0x14, 0x97, 0x70, 0x89, 0x54, + 0x18, 0x3d, 0x88, 0x8a, 0x0e, 0x99, 0x8c, 0x36, 0x3d, 0x5b, 0x81, 0x88, 0x7a, 0xd0, 0x94, 0x4c, + 0x05, 0x69, 0xe5, 0xdc, 0x7a, 0x45, 0x23, 0x50, 0x9b, 0xda, 0x0f, 0x60, 0x2d, 0x23, 0xb5, 0x88, + 0x8c, 0x6e, 0xc1, 0x62, 0xec, 0x1b, 0x22, 0xa1, 0xeb, 0x11, 0x6c, 0xcf, 0xd2, 0x1e, 0xc3, 0x6a, + 0x9f, 0x98, 0x3e, 0xc9, 0x4c, 0xf9, 0x02, 0xb4, 0xac, 0x64, 0x91, 0xa4, 0x15, 0x55, 0x85, 0x3e, + 0xac, 0xf4, 0x89, 0xeb, 0xbd, 0x06, 0x53, 0xba, 0xe3, 0x89, 0x3d, 0xc6, 0x6e, 0x48, 0x44, 0x34, + 0x24, 0x9b, 0xda, 0x1a, 0x2f, 0xb0, 0x64, 0x47, 0xfb, 0x3e, 0x5c, 0xe1, 0xf5, 0x8d, 0xd7, 0x99, + 0xc4, 0xba, 0xac, 0xae, 0x64, 0xf9, 0xee, 0xc2, 0x72, 0xec, 0xd4, 0xe3, 0x0c, 0x6d, 0x33, 0x99, + 0xa1, 0x75, 0x72, 0xb4, 0x9c, 0x48, 0xd0, 0xfe, 0xa6, 0xac, 0xf8, 0xce, 0x82, 0xfc, 0xec, 0x61, + 0x32, 0x3f, 0xbb, 0x5e, 0xc4, 0x33, 0x91, 0x9e, 0x65, 0xad, 0xb2, 0x92, 0x63, 0x95, 0xfd, 0x4c, + 0x12, 0x37, 0x9b, 0x2e, 0x31, 0xa7, 0xa4, 0xfb, 0xb5, 0xe4, 0x70, 0x3f, 0xe4, 0x39, 0x5c, 0x34, + 0x74, 0x54, 0x76, 0x7a, 0x90, 0xca, 0xe1, 0xd6, 0x0b, 0xe5, 0x8c, 0x52, 0xb8, 0xbf, 0x9a, 0x85, + 0x5a, 0xd4, 0x97, 0x59, 0xdb, 0xec, 0x32, 0x95, 0x73, 0x96, 0x49, 0x3d, 0xcd, 0x2a, 0xaf, 0x75, + 0x9a, 0xcd, 0x9e, 0x7b, 0x9a, 0x5d, 0x85, 0x1a, 0xfb, 0x30, 0x7c, 0x7c, 0x22, 0x4e, 0xa7, 0x2a, + 0x03, 0xe8, 0xf8, 0x24, 0x36, 0xab, 0xf9, 0x0b, 0x99, 0x55, 0x2a, 0x5b, 0x5c, 0x48, 0x67, 0x8b, + 0x1f, 0x47, 0xa7, 0x0d, 0x3f, 0x98, 0x6e, 0xe4, 0xf0, 0xcb, 0x3d, 0x67, 0x9e, 0x25, 0xcf, 0x19, + 0x7e, 0x56, 0xbd, 0x9b, 0x47, 0xfd, 0xd6, 0xe6, 0x8a, 0xcf, 0x79, 0xae, 0xa8, 0xda, 0x96, 0xf0, + 0x88, 0x0f, 0x01, 0xa2, 0xcd, 0x2f, 0x13, 0xc6, 0xe5, 0x9c, 0xb9, 0xe9, 0x0a, 0x1a, 0xf5, 0x2f, + 0x09, 0x15, 0xc4, 0x25, 0xd2, 0x0b, 0xf8, 0x97, 0x7f, 0x55, 0x23, 0xa7, 0x82, 0x1a, 0xe3, 0xc7, + 0x99, 0x1a, 0xc3, 0x05, 0x6d, 0x6f, 0x33, 0x59, 0x62, 0xb8, 0xa4, 0xcd, 0x64, 0x2a, 0x0c, 0xec, + 0x8c, 0x37, 0x7d, 0xd1, 0xcd, 0x33, 0xc3, 0x9a, 0x80, 0xf4, 0x08, 0x0d, 0xaf, 0x4e, 0x6c, 0xc7, + 0x0e, 0x4e, 0x79, 0xff, 0x3c, 0xeb, 0x07, 0x09, 0xea, 0xb1, 0xab, 0x60, 0xfc, 0xca, 0x26, 0xc6, + 0xc0, 0xb5, 0x30, 0xb3, 0xc8, 0x39, 0xbd, 0x4a, 0x01, 0xdb, 0xae, 0x85, 0xe3, 0x7d, 0x52, 0xbd, + 0xdc, 0x3e, 0xa9, 0xa5, 0xf6, 0xc9, 0x15, 0x98, 0xf7, 0xb1, 0x19, 0xb8, 0x4e, 0x07, 0xf8, 0x8d, + 0x32, 0x6f, 0xd1, 0x83, 0x63, 0x8c, 0x83, 0x80, 0x8e, 0x20, 0x02, 0x1a, 0xd1, 0x54, 0x02, 0xaf, + 0xc5, 0xc2, 0xc0, 0x6b, 0x4a, 0x0d, 0x33, 0x15, 0x78, 0x35, 0x0a, 0x03, 0xaf, 0x8b, 0x94, 0x30, + 0x95, 0xd0, 0xb2, 0x39, 0x3d, 0xb4, 0x54, 0x23, 0xb4, 0x56, 0x22, 0x42, 0xfb, 0x4d, 0x6e, 0xad, + 0x7d, 0x58, 0xcb, 0xec, 0x05, 0xb1, 0xb7, 0x1e, 0xa4, 0xaa, 0xa0, 0xeb, 0x85, 0x4b, 0x14, 0x15, + 0x41, 0xff, 0x14, 0x5a, 0xbb, 0xaf, 0xf0, 0xa0, 0x3f, 0x71, 0x06, 0x97, 0x08, 0x11, 0xda, 0x50, + 0x19, 0x8c, 0x2d, 0x91, 0xf5, 0xd3, 0x4f, 0x35, 0x68, 0xa8, 0x24, 0x83, 0x06, 0x03, 0xda, 0xf1, + 0x08, 0x42, 0xd0, 0x2b, 0x54, 0x50, 0x8b, 0x22, 0x53, 0xe6, 0x8b, 0xba, 0x68, 0x09, 0x38, 0xf6, + 0x7d, 0x36, 0x6d, 0x0e, 0xc7, 0xbe, 0x9f, 0x34, 0xeb, 0x4a, 0xd2, 0xac, 0xb5, 0xaf, 0xa0, 0x4e, + 0x07, 0xf8, 0x95, 0xc4, 0x17, 0xc1, 0x73, 0x25, 0x0e, 0x9e, 0xa3, 0x18, 0x7c, 0x56, 0x89, 0xc1, + 0xb5, 0x9b, 0xb0, 0xc8, 0xc7, 0x12, 0x13, 0x69, 0x43, 0x25, 0xf4, 0x47, 0x52, 0x71, 0xa1, 0x3f, + 0xd2, 0xfe, 0x08, 0x1a, 0x3d, 0x42, 0xcc, 0xc1, 0xe9, 0x25, 0xe4, 0x89, 0xc6, 0x2a, 0xab, 0xf1, + 0x7e, 0x46, 0x26, 0x4d, 0x83, 0xa6, 0xe4, 0x5d, 0x38, 0xfe, 0x01, 0xa0, 0x43, 0xd7, 0x27, 0xcf, + 0x5c, 0xff, 0x1b, 0xd3, 0xb7, 0x2e, 0x17, 0x3e, 0x23, 0x98, 0x15, 0xaf, 0x4c, 0x2a, 0xef, 0xcf, + 0xe9, 0xec, 0x5b, 0xbb, 0x03, 0xcb, 0x09, 0x7e, 0x85, 0x03, 0x3f, 0x82, 0x3a, 0x73, 0x23, 0x22, + 0xbe, 0xba, 0xab, 0x96, 0xf6, 0xa6, 0x3a, 0x1b, 0xed, 0x33, 0x58, 0xa2, 0x87, 0x05, 0x83, 0x47, + 0x8e, 0xfd, 0x83, 0x54, 0x10, 0xb2, 0x9a, 0x62, 0x90, 0x0a, 0x40, 0xfe, 0xb1, 0x04, 0x73, 0x0c, + 0x9e, 0x71, 0xed, 0x57, 0xa1, 0xe6, 0x63, 0xcf, 0x35, 0x88, 0x39, 0x8c, 0xde, 0xee, 0x50, 0xc0, + 0x4b, 0x73, 0x18, 0xb0, 0xa7, 0x47, 0xb4, 0xd3, 0xb2, 0x87, 0x38, 0x20, 0xf2, 0x01, 0x4f, 0x9d, + 0xc2, 0x76, 0x38, 0x88, 0x2e, 0x4a, 0x60, 0xff, 0x19, 0x0f, 0x2e, 0x66, 0x75, 0xf6, 0x8d, 0xde, + 0xe3, 0xf7, 0xef, 0xd3, 0x0a, 0x39, 0xec, 0x56, 0xbe, 0x0b, 0xd5, 0x54, 0xed, 0x26, 0x6a, 0x6b, + 0x4f, 0x00, 0xa9, 0xb3, 0x16, 0xeb, 0x7a, 0x07, 0xe6, 0xd9, 0xa2, 0xc8, 0xa3, 0xb1, 0x95, 0x9a, + 0xb6, 0x2e, 0xba, 0xb5, 0x4f, 0x01, 0xf1, 0x85, 0x4c, 0x1c, 0x87, 0x97, 0x58, 0xf5, 0x1f, 0xc0, + 0x72, 0x82, 0x81, 0x10, 0xe0, 0x76, 0x92, 0x43, 0x66, 0x7c, 0x41, 0xfd, 0x6f, 0x25, 0x80, 0x5e, + 0x48, 0x4e, 0x45, 0x25, 0x42, 0x9d, 0x68, 0x29, 0x39, 0x51, 0xda, 0xe7, 0x99, 0x41, 0xf0, 0x8d, + 0xeb, 0xcb, 0xb8, 0x2f, 0x6a, 0xb3, 0x1a, 0x42, 0x48, 0x4e, 0x65, 0xbd, 0x92, 0x7e, 0xa3, 0xdb, + 0xd0, 0xe4, 0xcf, 0xae, 0x0c, 0xd3, 0xb2, 0x7c, 0x1c, 0x04, 0xa2, 0x70, 0xd9, 0xe0, 0xd0, 0x1e, + 0x07, 0x52, 0x34, 0xdb, 0xc2, 0x0e, 0xb1, 0xc9, 0xc4, 0x20, 0xee, 0xd7, 0xd8, 0x11, 0xf1, 0x5c, + 0x43, 0x42, 0x5f, 0x52, 0x20, 0x45, 0xf3, 0xf1, 0xd0, 0x0e, 0x88, 0x2f, 0xd1, 0x64, 0x11, 0x4d, + 0x40, 0x19, 0x9a, 0xf6, 0xb3, 0x12, 0xb4, 0x0f, 0xc3, 0xd1, 0x88, 0x4f, 0xf2, 0xd2, 0xab, 0x89, + 0xde, 0x17, 0x13, 0x29, 0xa7, 0x4d, 0x22, 0x5e, 0x24, 0x31, 0xbd, 0x37, 0x90, 0x70, 0xfe, 0x36, + 0x2c, 0x29, 0xb2, 0x0a, 0xc5, 0x25, 0x8e, 0xec, 0x52, 0xf2, 0xc8, 0xa6, 0xd6, 0xc2, 0x73, 0xac, + 0xd7, 0x9c, 0x9f, 0xb6, 0x0a, 0xcb, 0x09, 0x06, 0x22, 0x41, 0xbb, 0x07, 0x0d, 0x71, 0xdd, 0x29, + 0x0c, 0x61, 0x1d, 0xaa, 0xd4, 0xd1, 0x0c, 0x6c, 0x4b, 0x16, 0xab, 0x17, 0x3c, 0xd7, 0xda, 0xb6, + 0x2d, 0x5f, 0x7b, 0x01, 0x0d, 0x9d, 0xbf, 0xbf, 0x13, 0xb8, 0x9f, 0x40, 0x53, 0x5c, 0x8e, 0x1a, + 0x89, 0xa7, 0x02, 0x4a, 0x5d, 0x35, 0xc1, 0x5c, 0x6f, 0x38, 0x6a, 0x53, 0xfb, 0x63, 0xe8, 0x1e, + 0x79, 0x16, 0x0d, 0xae, 0x54, 0xb6, 0x72, 0x72, 0x9f, 0x80, 0x7c, 0x1b, 0x58, 0xc8, 0x3d, 0x49, + 0xd7, 0xf0, 0xd5, 0xa6, 0x76, 0x1d, 0xae, 0xe6, 0x72, 0x17, 0x33, 0xf7, 0xa0, 0x1d, 0x77, 0x58, + 0xb6, 0xac, 0xd2, 0xb3, 0xea, 0x7b, 0x49, 0xa9, 0xbe, 0x5f, 0x89, 0xce, 0x64, 0xee, 0xdc, 0x45, + 0x4b, 0x09, 0xa2, 0x2a, 0x45, 0x41, 0xd4, 0x6c, 0x22, 0x88, 0xd2, 0xbe, 0x88, 0xd6, 0x4f, 0x04, + 0xb1, 0x8f, 0x59, 0x28, 0xcd, 0xc7, 0x96, 0xfe, 0xa2, 0x9b, 0x37, 0x3b, 0x8e, 0xa2, 0x2b, 0xd8, + 0x5a, 0x0b, 0x1a, 0x09, 0xcf, 0xa1, 0xf5, 0xa0, 0x99, 0xf2, 0x04, 0xf7, 0x53, 0xd1, 0x44, 0x76, + 0xe1, 0x52, 0xb1, 0xc4, 0x8a, 0x70, 0x49, 0xcf, 0x82, 0x3d, 0xe7, 0xc4, 0x95, 0x8c, 0xdf, 0x81, + 0xfa, 0x51, 0xd1, 0x4b, 0xbb, 0x59, 0x79, 0x7d, 0x73, 0x07, 0x96, 0xfa, 0xc4, 0xf5, 0xcd, 0x21, + 0xde, 0x63, 0xbb, 0xf7, 0xc4, 0xe6, 0x17, 0x1c, 0x61, 0x18, 0xf9, 0x72, 0xf6, 0xad, 0xfd, 0x57, + 0x09, 0x5a, 0xcf, 0xec, 0x11, 0x0e, 0x26, 0x01, 0xc1, 0xe3, 0x23, 0x16, 0x5d, 0x5e, 0x83, 0x1a, + 0x95, 0x26, 0x20, 0xe6, 0xd8, 0x93, 0xd7, 0x3b, 0x11, 0x80, 0xae, 0x52, 0xc0, 0x59, 0xcb, 0xc4, + 0x33, 0x11, 0xdc, 0x67, 0x86, 0xa5, 0xf1, 0xb6, 0x00, 0xa1, 0x0f, 0x01, 0xc2, 0x00, 0x5b, 0xe2, + 0x4e, 0xa7, 0x92, 0x3e, 0x88, 0x8e, 0xd4, 0xc2, 0x3d, 0x45, 0xe4, 0x37, 0x3c, 0x1f, 0x41, 0xdd, + 0x76, 0x5c, 0x0b, 0xb3, 0xc2, 0xbd, 0x25, 0xb2, 0xd2, 0x02, 0x32, 0xe0, 0x98, 0x47, 0x01, 0xb6, + 0xb4, 0x3f, 0x11, 0x1e, 0x59, 0xae, 0x9f, 0xd0, 0xc3, 0x33, 0x58, 0xe2, 0x1b, 0xfb, 0x24, 0x9a, + 0xb7, 0xd4, 0xb6, 0x12, 0xe0, 0xa5, 0x16, 0x45, 0x6f, 0xdb, 0xe2, 0x94, 0x94, 0x24, 0xda, 0x63, + 0x58, 0x4d, 0x44, 0x81, 0x97, 0xc9, 0xa1, 0x7e, 0x2f, 0x95, 0x80, 0xc5, 0x56, 0x22, 0x12, 0x20, + 0x69, 0x24, 0x45, 0x09, 0x50, 0xc0, 0x13, 0xa0, 0x40, 0xeb, 0xc3, 0x7a, 0x22, 0x33, 0x4c, 0x48, + 0xf2, 0x51, 0xea, 0xd0, 0xdf, 0x28, 0xe2, 0x96, 0x3a, 0xfd, 0xff, 0xb7, 0x04, 0x2b, 0x79, 0x08, + 0xaf, 0x59, 0x89, 0xf8, 0xb2, 0xe0, 0xd6, 0xfd, 0xc1, 0x74, 0x71, 0x7e, 0x2d, 0x55, 0x9b, 0x7d, + 0xe8, 0xe6, 0xad, 0x5f, 0x56, 0x1b, 0x95, 0x8b, 0x68, 0xe3, 0xff, 0xca, 0x4a, 0x85, 0xad, 0x47, + 0x88, 0x6f, 0x1f, 0x87, 0xd4, 0x84, 0xdf, 0x58, 0x7e, 0xdc, 0x8b, 0x32, 0x3f, 0xbe, 0x84, 0x77, + 0x73, 0xc8, 0xe2, 0x71, 0x73, 0xb3, 0xbf, 0xc3, 0x64, 0xf6, 0xc7, 0x6b, 0x67, 0x9b, 0xd3, 0xf9, + 0xbc, 0xb5, 0x85, 0x91, 0x5f, 0x94, 0xa0, 0x99, 0x54, 0x05, 0x7a, 0x02, 0x60, 0x46, 0x92, 0x0b, + 0xc3, 0xbf, 0x3e, 0x75, 0x7a, 0xba, 0x42, 0x80, 0xde, 0x85, 0xca, 0xc0, 0x0b, 0x85, 0x56, 0x94, + 0x0b, 0x95, 0x6d, 0x2f, 0xe4, 0x9e, 0x80, 0x76, 0xd3, 0x70, 0x9a, 0xdf, 0x45, 0x67, 0xbd, 0xd8, + 0x73, 0x06, 0xe7, 0xb8, 0x02, 0x09, 0x3d, 0x85, 0xe6, 0x37, 0xbe, 0x4d, 0xcc, 0xe3, 0x11, 0x36, + 0x46, 0xe6, 0x04, 0xfb, 0xc2, 0x8b, 0x4d, 0x71, 0x38, 0x0d, 0x49, 0xb0, 0x4f, 0xf1, 0xb5, 0x33, + 0xa8, 0x4a, 0x09, 0xce, 0x71, 0xd0, 0xfb, 0xb0, 0x16, 0x52, 0x34, 0x83, 0xdd, 0x88, 0x3b, 0xa6, + 0xe3, 0x1a, 0x01, 0xa6, 0x47, 0x95, 0x7c, 0x97, 0x56, 0xe0, 0x3a, 0x57, 0x18, 0xd5, 0xb6, 0xeb, + 0xe3, 0x03, 0xd3, 0x71, 0xfb, 0x9c, 0x44, 0x73, 0xa0, 0xae, 0x4c, 0xe8, 0x9c, 0xa1, 0x7b, 0xb0, + 0x24, 0xaf, 0xab, 0x02, 0x4c, 0x84, 0x9b, 0x9f, 0x3a, 0x68, 0x4b, 0xe0, 0xf7, 0x31, 0x61, 0xce, + 0xfe, 0xde, 0x35, 0xa8, 0xca, 0x97, 0xfb, 0x68, 0x01, 0x2a, 0x2f, 0xb7, 0x0f, 0xdb, 0x33, 0xf4, + 0xe3, 0x68, 0xe7, 0xb0, 0x5d, 0xba, 0xf7, 0x18, 0x5a, 0xa9, 0xa7, 0x26, 0x68, 0x09, 0x1a, 0xfd, + 0xde, 0xc1, 0xce, 0x67, 0x2f, 0xbe, 0x34, 0xf4, 0xdd, 0xde, 0xce, 0x1f, 0xb6, 0x67, 0xd0, 0x0a, + 0xb4, 0x25, 0xe8, 0xe0, 0xc5, 0x4b, 0x0e, 0x2d, 0xdd, 0xfb, 0x3a, 0x65, 0x29, 0x18, 0xad, 0xc2, + 0xd2, 0xf6, 0x8b, 0x83, 0x97, 0xbd, 0xbd, 0x83, 0x5d, 0xdd, 0xd8, 0xd6, 0x77, 0x7b, 0x2f, 0x77, + 0x77, 0xda, 0x33, 0x49, 0xb0, 0x7e, 0x74, 0x70, 0xb0, 0x77, 0xf0, 0x79, 0xbb, 0x44, 0xb9, 0xc6, + 0xe0, 0xdd, 0x2f, 0xf7, 0x28, 0x72, 0x39, 0x89, 0x7c, 0x74, 0xf0, 0xc5, 0xc1, 0x8b, 0x3f, 0x38, + 0x68, 0x57, 0xb6, 0xfe, 0xa2, 0x01, 0x4d, 0x79, 0xaa, 0x63, 0x9f, 0xdd, 0x6b, 0x3e, 0x85, 0x05, + 0xf9, 0x57, 0x85, 0xe2, 0x47, 0x92, 0xff, 0x80, 0x74, 0xd7, 0x73, 0x7a, 0x44, 0x84, 0x34, 0x83, + 0x74, 0x16, 0xb1, 0x28, 0x4f, 0x7b, 0x36, 0x12, 0x21, 0x44, 0xe6, 0xf5, 0x50, 0xf7, 0x46, 0x61, + 0x7f, 0xc4, 0xf3, 0x88, 0xc6, 0x29, 0xea, 0x2b, 0x4d, 0x74, 0x23, 0x71, 0x98, 0x67, 0x9f, 0x7f, + 0x76, 0x6f, 0x16, 0x23, 0x44, 0x6c, 0x7f, 0x0c, 0xed, 0xf4, 0x0b, 0x4d, 0xa4, 0xdc, 0x53, 0x17, + 0x3c, 0xff, 0xec, 0x6a, 0xd3, 0x50, 0x54, 0xe6, 0x99, 0x57, 0x8e, 0xb7, 0xa6, 0xbc, 0x50, 0xcb, + 0x32, 0x2f, 0x7a, 0xf8, 0xc6, 0x17, 0x24, 0xf9, 0x2c, 0x07, 0x25, 0x9e, 0x16, 0xe6, 0x3c, 0xd2, + 0x52, 0x17, 0x24, 0xff, 0x45, 0x8f, 0x36, 0x83, 0xbe, 0x84, 0x56, 0xea, 0x52, 0x0b, 0x29, 0x64, + 0xf9, 0xb7, 0x74, 0xdd, 0x5b, 0x53, 0x30, 0x92, 0x1a, 0x54, 0x2f, 0xad, 0x92, 0x1a, 0xcc, 0xb9, + 0x0a, 0x4b, 0x6a, 0x30, 0xf7, 0xbe, 0x8b, 0x19, 0x5b, 0xe2, 0x72, 0x4a, 0x35, 0xb6, 0xbc, 0xab, + 0xb0, 0xee, 0x8d, 0xc2, 0x7e, 0x75, 0x11, 0x52, 0x57, 0x53, 0xea, 0x22, 0xe4, 0x5f, 0x79, 0x75, + 0x6f, 0x4d, 0xc1, 0x48, 0x6b, 0x2d, 0x2e, 0x90, 0xa7, 0xb5, 0x96, 0xb9, 0x96, 0x49, 0x6b, 0x2d, + 0x5b, 0x5b, 0x17, 0x5a, 0x4b, 0x95, 0xba, 0x6f, 0x16, 0x17, 0x01, 0x73, 0xb4, 0x96, 0x5f, 0x59, + 0xd4, 0x66, 0xd0, 0x36, 0x54, 0x65, 0x19, 0x0f, 0x29, 0x9b, 0x3e, 0x55, 0x3c, 0xec, 0x76, 0xf3, + 0xba, 0x22, 0x26, 0x1f, 0xc3, 0x2c, 0x85, 0xa2, 0xd5, 0x24, 0x96, 0x24, 0xbe, 0x92, 0x06, 0x47, + 0x84, 0x4f, 0x60, 0x9e, 0x57, 0xbe, 0x90, 0x92, 0x85, 0x24, 0xea, 0x6c, 0xdd, 0x4e, 0xb6, 0x23, + 0x22, 0xdf, 0xe7, 0xff, 0x61, 0x89, 0x22, 0x16, 0xba, 0x96, 0xfc, 0x33, 0x20, 0x59, 0x2b, 0xeb, + 0x5e, 0x2f, 0xe8, 0x55, 0x75, 0x97, 0x3a, 0xc2, 0x6f, 0x14, 0xc6, 0x59, 0x59, 0xdd, 0xe5, 0x47, + 0x6e, 0xda, 0x0c, 0x32, 0x79, 0x41, 0x28, 0xc5, 0xfa, 0x9d, 0x02, 0xad, 0x27, 0xd8, 0xbf, 0x3b, + 0x1d, 0x29, 0x1a, 0xc2, 0x82, 0xe5, 0x9c, 0x9c, 0x16, 0x29, 0xe4, 0xc5, 0x09, 0x75, 0xf7, 0xf6, + 0x39, 0x58, 0xaa, 0xb2, 0x84, 0xed, 0xad, 0x25, 0xf6, 0xad, 0x62, 0x72, 0x9d, 0x6c, 0x87, 0x24, + 0xdf, 0xfa, 0xcb, 0x0a, 0x2c, 0xf2, 0xfa, 0x83, 0x38, 0x88, 0xf6, 0x00, 0xe2, 0x4a, 0x19, 0xba, + 0x9a, 0x9c, 0x6b, 0xa2, 0x6a, 0xd8, 0xbd, 0x96, 0xdf, 0xa9, 0x1a, 0x82, 0x52, 0xf4, 0x52, 0x0d, + 0x21, 0x5b, 0x4c, 0x53, 0x0d, 0x21, 0xa7, 0x52, 0xa6, 0xcd, 0xa0, 0x67, 0x50, 0x8b, 0xea, 0x30, + 0x48, 0xad, 0xdf, 0xa4, 0x0a, 0x49, 0xdd, 0xab, 0xb9, 0x7d, 0xaa, 0x54, 0x4a, 0x71, 0x45, 0x95, + 0x2a, 0x5b, 0xb4, 0x51, 0xa5, 0xca, 0xab, 0xc8, 0xc4, 0x73, 0xe4, 0x69, 0x64, 0x66, 0x8e, 0x89, + 0xec, 0x3c, 0x33, 0xc7, 0x64, 0xee, 0xa9, 0xcd, 0x7c, 0x76, 0xed, 0xe7, 0xdf, 0x6e, 0x94, 0xfe, + 0xf3, 0xdb, 0x8d, 0x99, 0x3f, 0xff, 0x6e, 0xa3, 0xf4, 0xf3, 0xef, 0x36, 0x4a, 0xff, 0xfe, 0xdd, + 0x46, 0xe9, 0xbf, 0xbf, 0xdb, 0x28, 0xfd, 0xf4, 0x7f, 0x36, 0x66, 0x8e, 0xe7, 0xd9, 0xbf, 0x8a, + 0x0f, 0x7f, 0x19, 0x00, 0x00, 0xff, 0xff, 0x2e, 0xab, 0x55, 0x76, 0x61, 0x3a, 0x00, 0x00, } diff --git a/vendor/k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/api.proto b/vendor/k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime/api.proto similarity index 91% rename from vendor/k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/api.proto rename to vendor/k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime/api.proto index c663ef83..cdd551d5 100644 --- a/vendor/k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/api.proto +++ b/vendor/k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime/api.proto @@ -71,6 +71,12 @@ service RuntimeService { // PortForward prepares a streaming endpoint to forward ports from a PodSandbox. rpc PortForward(PortForwardRequest) returns (PortForwardResponse) {} + // ContainerStats returns stats of the container. If the container does not + // exist, the call returns an error. + rpc ContainerStats(ContainerStatsRequest) returns (ContainerStatsResponse) {} + // ListContainerStats returns stats of all running containers. + rpc ListContainerStats(ListContainerStatsRequest) returns (ListContainerStatsResponse) {} + // UpdateRuntimeConfig updates the runtime configuration based on the given request. rpc UpdateRuntimeConfig(UpdateRuntimeConfigRequest) returns (UpdateRuntimeConfigResponse) {} @@ -971,33 +977,105 @@ message UInt64Value { uint64 value = 1; } -// FsInfo contains data about filesystem usage. -message FsInfo { - // The block device name associated with the filesystem. - string device = 1; - // The root directory for the images. - string path = 2; - // CapacityBytes represents the total capacity (bytes) of the filesystems - // underlying storage. - UInt64Value capacity_bytes = 3; - // AvailableBytes represents the storage space available (bytes) for the - // filesystem. - UInt64Value available_bytes = 4; +// StorageIdentifier uniquely identify the storage.. +message StorageIdentifier{ + // UUID of the device. + string uuid = 1; +} + +// FilesystemUsage provides the filesystem usage information. +message FilesystemUsage { + // Timestamp in nanoseconds at which the information were collected. Must be > 0. + int64 timestamp = 1; + // The underlying storage of the filesystem. + StorageIdentifier storage_id = 2; // UsedBytes represents the bytes used for images on the filesystem. // This may differ from the total bytes used on the filesystem and may not // equal CapacityBytes - AvailableBytes. - UInt64Value used_bytes = 5; - // InodesCapacity represents the total inodes in the filesystem. - UInt64Value inodes_capacity = 6; - // InodesAvailable represents the free inodes in the filesystem. - UInt64Value inodes_available = 7; + UInt64Value used_bytes = 3; // InodesUsed represents the inodes used by the images. // This may not equal InodesCapacity - InodesAvailable because the underlying // filesystem may also be used for purposes other than storing images. - UInt64Value inodes_used = 8; + UInt64Value inodes_used = 4; } message ImageFsInfoResponse { - // filesystem information of images. - FsInfo fs_info = 1; + // Information of image filesystem(s). + repeated FilesystemUsage image_filesystems = 1; +} + +message ContainerStatsRequest{ + // ID of the container for which to retrieve stats. + string container_id = 1; +} + +message ContainerStatsResponse { + // Stats of the container. + ContainerStats stats = 1; +} + +message ListContainerStatsRequest{ + // Filter for the list request. + ContainerStatsFilter filter = 1; +} + +// ContainerStatsFilter is used to filter containers. +// All those fields are combined with 'AND' +message ContainerStatsFilter { + // ID of the container. + string id = 1; + // ID of the PodSandbox. + string pod_sandbox_id = 2; + // LabelSelector to select matches. + // Only api.MatchLabels is supported for now and the requirements + // are ANDed. MatchExpressions is not supported yet. + map label_selector = 3; +} + +message ListContainerStatsResponse { + // Stats of the container. + repeated ContainerStats stats = 1; +} + +// ContainerAttributes provides basic information of the container. +message ContainerAttributes { + // ID of the container. + string id = 1; + // Metadata of the container. + ContainerMetadata metadata = 2; + // Key-value pairs that may be used to scope and select individual resources. + map labels = 3; + // Unstructured key-value map holding arbitrary metadata. + // Annotations MUST NOT be altered by the runtime; the value of this field + // MUST be identical to that of the corresponding ContainerConfig used to + // instantiate the Container this status represents. + map annotations = 4; +} + +// ContainerStats provides the resource usage statistics for a container. +message ContainerStats { + // Information of the container. + ContainerAttributes attributes = 1; + // CPU usage gathered from the container. + CpuUsage cpu = 2; + // Memory usage gathered from the container. + MemoryUsage memory = 3; + // Usage of the writeable layer. + FilesystemUsage writable_layer = 4; +} + +// CpuUsage provides the CPU usage information. +message CpuUsage { + // Timestamp in nanoseconds at which the information were collected. Must be > 0. + int64 timestamp = 1; + // Cumulative CPU usage (sum across all cores) since object creation. + UInt64Value usage_core_nano_seconds = 2; +} + +// MemoryUsage provides the memory usage information. +message MemoryUsage { + // Timestamp in nanoseconds at which the information were collected. Must be > 0. + int64 timestamp = 1; + // The amount of working set memory in bytes. + UInt64Value working_set_bytes = 2; } diff --git a/vendor/k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/constants.go b/vendor/k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime/constants.go similarity index 100% rename from vendor/k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/constants.go rename to vendor/k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime/constants.go diff --git a/vendor/k8s.io/kubernetes/pkg/kubelet/container/container_gc.go b/vendor/k8s.io/kubernetes/pkg/kubelet/container/container_gc.go index a66acc9e..be2fac4b 100644 --- a/vendor/k8s.io/kubernetes/pkg/kubelet/container/container_gc.go +++ b/vendor/k8s.io/kubernetes/pkg/kubelet/container/container_gc.go @@ -39,7 +39,15 @@ type ContainerGCPolicy struct { // Implementation is thread-compatible. type ContainerGC interface { // Garbage collect containers. - GarbageCollect(allSourcesReady bool) error + GarbageCollect() error + // Deletes all unused containers, including containers belonging to pods that are terminated but not deleted + DeleteAllUnusedContainers() error +} + +// SourcesReadyProvider knows how to determine if configuration sources are ready +type SourcesReadyProvider interface { + // AllReady returns true if the currently configured sources have all been seen. + AllReady() bool } // TODO(vmarmol): Preferentially remove pod infra containers. @@ -49,20 +57,28 @@ type realContainerGC struct { // Policy for garbage collection. policy ContainerGCPolicy + + // sourcesReadyProvider provides the readyness of kubelet configuration sources. + sourcesReadyProvider SourcesReadyProvider } // New ContainerGC instance with the specified policy. -func NewContainerGC(runtime Runtime, policy ContainerGCPolicy) (ContainerGC, error) { +func NewContainerGC(runtime Runtime, policy ContainerGCPolicy, sourcesReadyProvider SourcesReadyProvider) (ContainerGC, error) { if policy.MinAge < 0 { return nil, fmt.Errorf("invalid minimum garbage collection age: %v", policy.MinAge) } return &realContainerGC{ - runtime: runtime, - policy: policy, + runtime: runtime, + policy: policy, + sourcesReadyProvider: sourcesReadyProvider, }, nil } -func (cgc *realContainerGC) GarbageCollect(allSourcesReady bool) error { - return cgc.runtime.GarbageCollect(cgc.policy, allSourcesReady) +func (cgc *realContainerGC) GarbageCollect() error { + return cgc.runtime.GarbageCollect(cgc.policy, cgc.sourcesReadyProvider.AllReady(), false) +} + +func (cgc *realContainerGC) DeleteAllUnusedContainers() error { + return cgc.runtime.GarbageCollect(cgc.policy, cgc.sourcesReadyProvider.AllReady(), true) } diff --git a/vendor/k8s.io/kubernetes/pkg/kubelet/container/container_reference_manager.go b/vendor/k8s.io/kubernetes/pkg/kubelet/container/container_reference_manager.go index 1b671068..8383e77d 100644 --- a/vendor/k8s.io/kubernetes/pkg/kubelet/container/container_reference_manager.go +++ b/vendor/k8s.io/kubernetes/pkg/kubelet/container/container_reference_manager.go @@ -38,6 +38,7 @@ func NewRefManager() *RefManager { } // SetRef stores a reference to a pod's container, associating it with the given container ID. +// TODO: move this to client-go v1.ObjectReference func (c *RefManager) SetRef(id ContainerID, ref *v1.ObjectReference) { c.Lock() defer c.Unlock() @@ -52,6 +53,7 @@ func (c *RefManager) ClearRef(id ContainerID) { } // GetRef returns the container reference of the given ID, or (nil, false) if none is stored. +// TODO: move this to client-go v1.ObjectReference func (c *RefManager) GetRef(id ContainerID) (ref *v1.ObjectReference, ok bool) { c.RLock() defer c.RUnlock() diff --git a/vendor/k8s.io/kubernetes/pkg/kubelet/container/helpers.go b/vendor/k8s.io/kubernetes/pkg/kubelet/container/helpers.go index acbd8ce1..7930fed5 100644 --- a/vendor/k8s.io/kubernetes/pkg/kubelet/container/helpers.go +++ b/vendor/k8s.io/kubernetes/pkg/kubelet/container/helpers.go @@ -32,7 +32,7 @@ import ( clientv1 "k8s.io/client-go/pkg/api/v1" "k8s.io/client-go/tools/record" "k8s.io/kubernetes/pkg/api/v1" - runtimeapi "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1" + runtimeapi "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" "k8s.io/kubernetes/pkg/kubelet/events" "k8s.io/kubernetes/pkg/kubelet/util/format" "k8s.io/kubernetes/pkg/kubelet/util/ioutils" diff --git a/vendor/k8s.io/kubernetes/pkg/kubelet/container/runtime.go b/vendor/k8s.io/kubernetes/pkg/kubelet/container/runtime.go index 661a0ecc..c3403ad5 100644 --- a/vendor/k8s.io/kubernetes/pkg/kubelet/container/runtime.go +++ b/vendor/k8s.io/kubernetes/pkg/kubelet/container/runtime.go @@ -29,7 +29,7 @@ import ( "k8s.io/client-go/tools/remotecommand" "k8s.io/client-go/util/flowcontrol" "k8s.io/kubernetes/pkg/api/v1" - runtimeapi "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1" + runtimeapi "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" "k8s.io/kubernetes/pkg/volume" ) @@ -82,8 +82,10 @@ type Runtime interface { // complete list of pods from all avialble sources (e.g., apiserver, http, // file). In this case, garbage collector should refrain itself from aggressive // behavior such as removing all containers of unrecognized pods (yet). + // If evictNonDeletedPods is set to true, containers and sandboxes belonging to pods + // that are terminated, but not deleted will be evicted. Otherwise, only deleted pods will be GC'd. // TODO: Revisit this method and make it cleaner. - GarbageCollect(gcPolicy ContainerGCPolicy, allSourcesReady bool) error + GarbageCollect(gcPolicy ContainerGCPolicy, allSourcesReady bool, evictNonDeletedPods bool) error // Syncs the running pod into the desired pod. SyncPod(pod *v1.Pod, apiPodStatus v1.PodStatus, podStatus *PodStatus, pullSecrets []v1.Secret, backOff *flowcontrol.Backoff) PodSyncResult // KillPod kills all the containers of a pod. Pod may be nil, running pod must not be. diff --git a/vendor/k8s.io/kubernetes/pkg/kubelet/events/event.go b/vendor/k8s.io/kubernetes/pkg/kubelet/events/event.go index d7ef72b5..0a0efc20 100644 --- a/vendor/k8s.io/kubernetes/pkg/kubelet/events/event.go +++ b/vendor/k8s.io/kubernetes/pkg/kubelet/events/event.go @@ -47,6 +47,7 @@ const ( NodeNotSchedulable = "NodeNotSchedulable" StartingKubelet = "Starting" KubeletSetupFailed = "KubeletSetupFailed" + FailedAttachVolume = "FailedAttachVolume" FailedDetachVolume = "FailedDetachVolume" FailedMountVolume = "FailedMount" FailedUnMountVolume = "FailedUnMount" diff --git a/vendor/k8s.io/kubernetes/pkg/kubelet/server/streaming/server.go b/vendor/k8s.io/kubernetes/pkg/kubelet/server/streaming/server.go index 3650fdee..875e4446 100644 --- a/vendor/k8s.io/kubernetes/pkg/kubelet/server/streaming/server.go +++ b/vendor/k8s.io/kubernetes/pkg/kubelet/server/streaming/server.go @@ -33,7 +33,7 @@ import ( "k8s.io/apimachinery/pkg/types" remotecommandconsts "k8s.io/apimachinery/pkg/util/remotecommand" "k8s.io/client-go/tools/remotecommand" - runtimeapi "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1" + runtimeapi "k8s.io/kubernetes/pkg/kubelet/apis/cri/v1alpha1/runtime" "k8s.io/kubernetes/pkg/kubelet/server/portforward" remotecommandserver "k8s.io/kubernetes/pkg/kubelet/server/remotecommand" ) diff --git a/vendor/k8s.io/kubernetes/pkg/util/exec/fake_exec.go b/vendor/k8s.io/kubernetes/pkg/util/exec/fake_exec.go index e3741dca..c7fcd6ce 100644 --- a/vendor/k8s.io/kubernetes/pkg/util/exec/fake_exec.go +++ b/vendor/k8s.io/kubernetes/pkg/util/exec/fake_exec.go @@ -49,6 +49,9 @@ type FakeCmd struct { CombinedOutputScript []FakeCombinedOutputAction CombinedOutputCalls int CombinedOutputLog [][]string + RunScript []FakeRunAction + RunCalls int + RunLog [][]string Dirs []string Stdin io.Reader Stdout io.Writer @@ -61,6 +64,7 @@ func InitFakeCmd(fake *FakeCmd, cmd string, args ...string) Cmd { } type FakeCombinedOutputAction func() ([]byte, error) +type FakeRunAction func() ([]byte, []byte, error) func (fake *FakeCmd) SetDir(dir string) { fake.Dirs = append(fake.Dirs, dir) @@ -79,7 +83,23 @@ func (fake *FakeCmd) SetStderr(out io.Writer) { } func (fake *FakeCmd) Run() error { - return fmt.Errorf("unimplemented") + if fake.RunCalls > len(fake.RunScript)-1 { + panic("ran out of Run() actions") + } + if fake.RunLog == nil { + fake.RunLog = [][]string{} + } + i := fake.RunCalls + fake.RunLog = append(fake.RunLog, append([]string{}, fake.Argv...)) + fake.RunCalls++ + stdout, stderr, err := fake.RunScript[i]() + if stdout != nil { + fake.Stdout.Write(stdout) + } + if stderr != nil { + fake.Stderr.Write(stderr) + } + return err } func (fake *FakeCmd) CombinedOutput() ([]byte, error) { diff --git a/vendor/k8s.io/kubernetes/pkg/volume/plugins.go b/vendor/k8s.io/kubernetes/pkg/volume/plugins.go index 23dec329..41721d1e 100644 --- a/vendor/k8s.io/kubernetes/pkg/volume/plugins.go +++ b/vendor/k8s.io/kubernetes/pkg/volume/plugins.go @@ -232,12 +232,19 @@ type VolumeHost interface { // Returns a function that returns a secret. GetSecretFunc() func(namespace, name string) (*v1.Secret, error) + + // Returns a function that returns a configmap. + GetConfigMapFunc() func(namespace, name string) (*v1.ConfigMap, error) + + // Returns the labels on the node + GetNodeLabels() (map[string]string, error) } // VolumePluginMgr tracks registered plugins. type VolumePluginMgr struct { mutex sync.Mutex plugins map[string]VolumePlugin + Host VolumeHost } // Spec is an internal representation of a volume. All API volume types translate to Spec. @@ -336,6 +343,7 @@ func (pm *VolumePluginMgr) InitPlugins(plugins []VolumePlugin, host VolumeHost) pm.mutex.Lock() defer pm.mutex.Unlock() + pm.Host = host if pm.plugins == nil { pm.plugins = map[string]VolumePlugin{} } diff --git a/vendor/k8s.io/kubernetes/pkg/volume/util.go b/vendor/k8s.io/kubernetes/pkg/volume/util.go index 64deeeb2..2e561036 100644 --- a/vendor/k8s.io/kubernetes/pkg/volume/util.go +++ b/vendor/k8s.io/kubernetes/pkg/volume/util.go @@ -410,3 +410,47 @@ func JoinMountOptions(userOptions []string, systemOptions []string) []string { } return allMountOptions.UnsortedList() } + +// ZonesToSet converts a string containing a comma separated list of zones to set +func ZonesToSet(zonesString string) (sets.String, error) { + zonesSlice := strings.Split(zonesString, ",") + zonesSet := make(sets.String) + for _, zone := range zonesSlice { + trimmedZone := strings.TrimSpace(zone) + if trimmedZone == "" { + return make(sets.String), fmt.Errorf("comma separated list of zones (%q) must not contain an empty zone", zonesString) + } + zonesSet.Insert(trimmedZone) + } + return zonesSet, nil +} + +// ValidateZone returns: +// - an error in case zone is an empty string or contains only any combination of spaces and tab characters +// - nil otherwise +func ValidateZone(zone string) error { + if strings.TrimSpace(zone) == "" { + return fmt.Errorf("the provided %q zone is not valid, it's an empty string or contains only spaces and tab characters", zone) + } + return nil +} + +// AccessModesContains returns whether the requested mode is contained by modes +func AccessModesContains(modes []v1.PersistentVolumeAccessMode, mode v1.PersistentVolumeAccessMode) bool { + for _, m := range modes { + if m == mode { + return true + } + } + return false +} + +// AccessModesContainedInAll returns whether all of the requested modes are contained by modes +func AccessModesContainedInAll(indexedModes []v1.PersistentVolumeAccessMode, requestedModes []v1.PersistentVolumeAccessMode) bool { + for _, mode := range requestedModes { + if !AccessModesContains(indexedModes, mode) { + return false + } + } + return true +} diff --git a/vendor/k8s.io/kubernetes/pkg/volume/util/util.go b/vendor/k8s.io/kubernetes/pkg/volume/util/util.go index 97561e7e..a9ab2845 100644 --- a/vendor/k8s.io/kubernetes/pkg/volume/util/util.go +++ b/vendor/k8s.io/kubernetes/pkg/volume/util/util.go @@ -23,6 +23,7 @@ import ( "github.com/golang/glog" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/labels" "k8s.io/kubernetes/pkg/api/v1" v1helper "k8s.io/kubernetes/pkg/api/v1/helper" storage "k8s.io/kubernetes/pkg/apis/storage/v1" @@ -164,3 +165,30 @@ func GetClassForVolume(kubeClient clientset.Interface, pv *v1.PersistentVolume) } return class, nil } + +// CheckNodeAffinity looks at the PV node affinity, and checks if the node has the same corresponding labels +// This ensures that we don't mount a volume that doesn't belong to this node +func CheckNodeAffinity(pv *v1.PersistentVolume, nodeLabels map[string]string) error { + affinity, err := v1helper.GetStorageNodeAffinityFromAnnotation(pv.Annotations) + if err != nil { + return fmt.Errorf("Error getting storage node affinity: %v", err) + } + if affinity == nil { + return nil + } + + if affinity.RequiredDuringSchedulingIgnoredDuringExecution != nil { + terms := affinity.RequiredDuringSchedulingIgnoredDuringExecution.NodeSelectorTerms + glog.V(10).Infof("Match for RequiredDuringSchedulingIgnoredDuringExecution node selector terms %+v", terms) + for _, term := range terms { + selector, err := v1helper.NodeSelectorRequirementsAsSelector(term.MatchExpressions) + if err != nil { + return fmt.Errorf("Failed to parse MatchExpressions: %v", err) + } + if !selector.Matches(labels.Set(nodeLabels)) { + return fmt.Errorf("NodeSelectorTerm %+v does not match node labels", term.MatchExpressions) + } + } + } + return nil +}